diff options
| author | Jeffrey Armstrong <jeffrey.armstrong@approximatrix.com> | 2014-10-09 21:14:22 -0400 |
|---|---|---|
| committer | Jeffrey Armstrong <jeffrey.armstrong@approximatrix.com> | 2014-10-09 21:14:22 -0400 |
| commit | 10b6fc0771bba9984e711f59339d5e30e7766f81 (patch) | |
| tree | e1de76d5cb4331b69039d8adfb100f0e68ff246e /olf/index.rst | |
| parent | a097bb8ad9b153a76e0b11af2ec379e4b0d488e9 (diff) | |
| download | presentations-10b6fc0771bba9984e711f59339d5e30e7766f81.tar.gz presentations-10b6fc0771bba9984e711f59339d5e30e7766f81.zip | |
Added initial commit of Ohio Linuxfest 2014 slides
Diffstat (limited to 'olf/index.rst')
| -rw-r--r-- | olf/index.rst | 179 |
1 files changed, 179 insertions, 0 deletions
diff --git a/olf/index.rst b/olf/index.rst new file mode 100644 index 0000000..1cd878f --- /dev/null +++ b/olf/index.rst @@ -0,0 +1,179 @@ +===================================== +Introducing the Open Watcom Compilers +===================================== + +Jeffrey Armstrong + +https://github.com/open-watcom + +25 October 2014 + +.. note:: + + * Ask who cross-compiles + +Introduction +============ + +.. rst-class:: build + +* C, C++, and Fortran 77 Compilers +* Runtime Libraries +* Assembler +* Make Utility +* Integrated Development Environment +* Text and Graphical Debuggers + +.. note:: + + * Introduce compilers, but then say "so much more" + +History +======= + +* Originally commercial + * Popular during MS-DOS's heyday +* Released as "open-source" in 2003 + +.. note:: + + * Explain license + +History +======= + +* 2003 - Sybase releases OW as open-source +* 2003 - Ensure OW builds itself +* 2005 - x86 Linux support added +* 2009 - Independent Windows API implemented +* 2012 - 2.0 fork begins + * x64 support + * Improved C99 support + * Work towards complete STL + +Compiler Capabilities +===================== + +.. rst-class:: build + +* x86 (and recently x64) Code Generators + * 16-bit, 32-bit, and 64-bit +* Some limitations on C++ compiler +* Complete support for fixed-format Fortran +* Cross-compiling + +Compiler Capabilities +===================== + +.. rst-class:: build + +* Supported hosts/targets: + * MS-DOS / Windows3.x / Win32 + * Windows NT + * OS/2 + * Netware :sup:`1` + * x86/x64 Linux + * RDOS :sup:`1` + +:sup:`1` Target only + +Compiler Architecture +===================== + +* Language-specific front end +* Architecture-specific back end +* Single executables + * No intermediate files + +C Runtime Libraries +=================== + +* Independent implementations +* C89 complete +* Partial C99 +* Common "legacy" extensions + +C++ Runtime Libraries +===================== + +* C++98 mostly complete +* Independent STL implementation + * About 50% complete +* Supports 16-bit compilers + +Fortran Runtime Libraries +========================= + +* Complete Fortran 77 intrinsic support +* Odd Open Watcom extensions +* No Cray pointer support + +Make Utility +============ + +* Complete "make" utility +* File-based +* Works on all supported hosts + +.. note:: + + * Useful for DOS and Windows developers + +Integrated Dev Environment +========================== + +* Cross-platform IDE + * Supports Win3.x/9x, OS/2, WinNT +* Ugly but functional +* Some interest in GTK+ port, but... + +.. note:: + + * Mention port can't proceed because of a shortcoming + +Debuggers +========= + +* Text-mode on all supported hosts +* GUI on Win3.x/9x, OS/2, WinNT +* Supports DWARF, CodeView, and Watcom debugging symbols + +Project Summary +=============== + +* Substantially complex +* Complete development toolchain + +Performance +=========== + +Whetstone - C + +Performance - MDBNCH +==================== + +Performance - Building Python +============================= + + + +Shortcomings +============ + + + +Contact +======= + +* Email: **jeff@rainbow-100.com** +* Twitter: **@fortranjeff** +* Github: **ArmstrongJ** +* Web: **http://jeff.rainbow-100.com/** + +Open Watcom +=========== + +https://github.com/open-watcom + +..figure:: /_static/ow-qr.png + |
