Changes between Version 8 and Version 9 of kOptions


Ignore:
Timestamp:
Jan 1, 2019, 7:24:30 AM (5 years ago)
Author:
dryeo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • kOptions

    v8 v9  
    11GCC on OS/2 supports several extra options. Most start with -Z. With the exception of -Zomf (others?) they are affecting the linking.
    22
    3   * -Zcrtdll: link the C library dynamically
    4   * -Zdll: create a dynamic link library
    5   * -Zexe: create foo which is executable which calls foo.exe which is also created.
    6   * -Zhigh-mem: link so that the C library calls in the program make use of "high memory". This is similiar to specifying OBJ_ANY to OS/2 API memory calls. If you use this option you should include os2safe.h as the first include file in every C file that uses OS/2 APIs.
     3  * -Zcrtdll: link the C library dynamically. This is the default and while unneeded, doesn't hurt.
     4  * -Zdll: create a dynamic link library.
     5  * -Zexe: create foo which is executable which calls foo.exe which is also created. Not usually needed as most configure scripts use exeext and OS/2 linkers will create an executable if the target ends with .exe
     6  * -Zhigh-mem: link so that the C library calls in the program make use of "high memory". This is similiar to specifying OBJ_ANY to OS/2 API memory calls. If you use this option you should include os2safe.h as the first include file in every C file that uses OS/2 APIs unless you know the calls are high memory safe.
    77  * -Zlinker: pass option through to linker (like {{{-Zlinker /EXEPACK:2 -Zlinker /PACKCODE}}})
    88  * -Zmap: tell linker or emxbind to create a .map file that contains the addresses   of all symbols
    99  * -Zno-autoconv: switch off automatic conversion between a.out and OMF format when linking.
    1010  * -Zautoconv: switch on automatic conversion between a.out and OMF format when linking.
    11   * -Zomf: compile and link using OMF format instead of a.out.
     11  * -Zomf: compile and/or link using OMF format instead of a.out. kLIBC will link aout object files into an OMF target so only adding -Zomf to LDFLAGS is usually necessary.
    1212  * -Zargs-wild: call {{{_wildcard()}}} (see below) automatically on startup
    1313  * -Zargs-resp: call {{{_reponse()}}} (see below) automatically on startup
    14   * -Zbin-files: open files in binary mode by default
     14  * -Zbin-files: open files in binary mode by default. Doesn't work 100% of the time.
    1515  * -Zdll-search: Enables dlls as valid libraries. (default disabled)
    16   * -Zstack: set the stack size
     16  * -Zstack: set the stack size. Specify stack size in kBs. -Zstack 0x2000 will force use of a 8MB stack.
    1717  * -Zsym: Invoke mapsym.cmd on the mapfile to produce a .sym file. Requires -Zmap
    18 These may not be OS/2 specific
     18These are not OS/2 specific
    1919  * -Bstatic, -non_shared, -dn, -static: Link with static libraries.
    2020  * -Bshared, -call_shared, -dy: Link with shared libraries. (default)
     
    2525  * -Zno-unix: non-unix like mode, affects slash handling and fork()?
    2626
    27 These were supported options with EMX/gcc 2.8.x, not sure if they are still supported now:
    28   * -Zbsd-signals: select the `BSD' signal processing model
     27These were supported options with EMX/gcc 2.8.x and generally are ignored for compatibility:
     28  * -Zbsd-signals: select the `BSD' signal processing model, (now default)
    2929  * -Zmt: multithread code (now default)
    3030  * -Zmtd: multithread code, link C library dynamically
    31   * -Zmts: multithread code, link C library statically
     31  * -Zmts: multithread code, link C library statically. disabled due to licensing issues.
    3232  * -Zno-rte: create DLL without runtime environment
    3333  * -Zsmall-conv: use small, fast, and inaccurate routines for converting decimal numbers to binary and vice versa