home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BURKS 2
/
BURKS_AUG97.ISO
/
BURKS
/
SOFTWARE
/
SOURCES
/
UNZIP52.ZIP
/
os2
/
makefile.os2
(
.txt
)
< prev
next >
Wrap
Makefile
|
1996-04-28
|
17KB
|
605 lines
# Makefile for UnZip, UnZipSFX and fUnZip 27 April 1996
#
# - for Microsoft C, version 6.00 or higher, for use under OS/2 1.x (16-bit)
# - for Watcom C/C++, version 9.0+, for use under OS/2 1.x or 2.x+ (16/32-bit)
# - for emx+gcc, version 0.9a or higher, for use under OS/2 2.x+ (32-bit)
# - for IBM C Set++, for use under OS/2 2.x+ (32-bit)
# - for Borland C++, for use under OS/2 2.x+ (32-bit)
# - for Metaware High C/C++, for use under OS/2 2.x+ (32-bit)
#
# cross-compilation:
# - for Microsoft C, version 6.0 or higher, for use under MS-DOS (16-bit)
# - for Watcom C/C++, version 9.0+, for use under MS-DOS (16/32-bit)
# - for GNU gcc (emx), version 0.9a or higher, for use under MS-DOS (32-bit)
# Supported Assemblers:
# - Microsoft MASM 6.00 with Microsoft C
# - Watcom WASM with Watcom C/C++
# - GNU as with GNU gcc
# To use MASM 5.x instead of MASM 6.00:
# - set AS="masm -t -Ml"
# - set ASEOL=";"
# To use, enter "{d,n}make -f os2/makefile.os2" (this makefile depends on its
# name being "makefile.os2", and it must be in the os2 subdirectory).
# Notes on Microsoft C 6.00 compilation for OS/2:
#
# The resulting programs can be used under OS/2 protected mode only, not
# under DOS. A larger stack has to be used for OS/2 because system calls
# use more stack than under DOS; 8k is recommended by Microsoft.
# Notes on IBM C Set++, Watcom C/C++, Borland C++ or emx+gcc compilation:
#
# The resulting programs can be used under protected mode of OS/2 2.x or
# higher only, not under OS/2 1.x and not under DOS.
#
# The NFLAGS macro is used to work around an optimization bug in the IBM
# C++ Set compiler; this is fixed by CSD #4, so NFLAGS="" can be used for
# all targets below. We'll leave it as is for this release...
# Notes on Watcom C/C++ compilation for DOS with the PMODE/W extender:
#
# You need to add the following section to your \watcom\binb\wlsystem.lnk
# file and also need to copy pmodew.exe to the same directory:
#
# system begin pmodew
# option osname='PMODE/W'
# libpath %WATCOM%\lib386
# libpath %WATCOM%\lib386\dos
# op stub=pmodew.exe
# format os2 le
# end
#
# PMODE/W 1.16 or higher is required.
default:
@echo "Enter `$(MAKE) -f os2/makefile.os2 target' from the main"
@echo "UnZip directory, where target is one of:"
@echo " msc mscdos ibm ibmdyn ibmdebug ibmprof"
@echo " ibmdll ibmdlldyn ibmdlldebug ibmdllprof"
@echo " ibmdlldynvalidate ibmdlldebugvalidate"
@echo " metaware borland gcc gccdyn gccdebug gccdos"
@echo " watcom watcom16 watcomdos watcom16dos pmodew"
# MS C 6.00 for OS/2, 16-bit (should figure out way to split unzip/funzip
# compiles so former is always large model and latter always small model...)
msc:
$(MAKE) -f os2/makefile.os2 all \
CC="cl -nologo -AL -Ocegit -Gs -I. $(FP)" \
CFLAGS="-G2 -Zp1 -W3 -DOS2 -DMSC -DASM_CRC $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="ml -nologo -c -Zm -Cp" \
ASFLAGS="-D__LARGE__ -D__286" \
LDFLAGS="-F 2000 -Lp -Fe" \
LDFLAGS2="-link /noe" \
OUT="-Fo" \
OBJ=".obj" \
CRC32="crc_i86" \
CRC32F="crc_i86" \
CRC32X="crc_i86" \
DEF="os2\unzip.def"
# MS C 6.00 for OS/2, debug version
mscdebug:
$(MAKE) -f os2/makefile.os2 all \
CC="cl -nologo -AL -Zi -Od -I. $(FP)" \
CFLAGS="-G2 -Zp1 -W3 -DOS2 -DMSC -DASM_CRC $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="ml -nologo -c -Zim -Cp" \
ASFLAGS="-D__LARGE__ -D__286" \
LDFLAGS="-F 2000 -Lp -Fe" \
LDFLAGS2="-link /noe" \
OUT="-Fo" \
OBJ=".obj" \
CRC32="crc_i86" \
CRC32F="crc_i86" \
CRC32X="crc_i86" \
DEF="os2\unzip.def"
# cross-compilation for MS-DOS with MS C 6.00 (same comment as above...formerly;
# now unzip is medium model again, with [almost] all strings in far memory)
mscdos:
$(MAKE) -f os2/makefile.os2 all \
CC="cl -nologo -AM -Oaict -Gs -I. $(FP)" \
CFLAGS="-Zp1 -W3 -DASM_CRC $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="ml -nologo -c -Zm -Cp" \
ASFLAGS="-D__MEDIUM__" \
LDFLAGS="-F 0C00 -Lr -Fe" \
LDFLAGS2="-link /noe /exe" \
OUT="-Fo" \
OBJ=".obj" \
CRC32="crc_i86" \
CRC32F="crc_i86" \
CRC32X="crc_i86" \
OBJU2="msdos.obj" \
OBJX2="msdos_.obj" \
OSDEP_H="msdos/doscfg.h"
# IBM C Set, statically linked runtime
ibm:
$(MAKE) -f os2/makefile.os2 all \
CC="icc -Q -O -Gs -I." \
CFLAGS="-Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="" \
LDFLAGS="-B/ST:0x50000 -Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DEF="os2\unzip.def"
# IBM C Set, dynamically linked runtime
ibmdyn:
$(MAKE) -f os2/makefile.os2 all \
CC="icc -Q -O -Gs -Gd -I." \
CFLAGS="-Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="" \
LDFLAGS="-B/ST:0x50000 -Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DEF="os2\unzip.def"
# IBM C Set, debug version
ibmdebug:
$(MAKE) -f os2/makefile.os2 all \
CC="icc -Q -Ti -I." \
CFLAGS="-Sm -Sp1 -D__DEBUG_ALLOC__ -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="" \
LDFLAGS="-B/ST:0x50000 -Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DEF="os2\unzip.def"
# IBM C Set, profiling version for PROFIT
ibmprof:
$(MAKE) -f os2/makefile.os2 all \
CC="icc -Q -O -Gs -Gh -Ti -I." \
CFLAGS="-Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="" \
LDFLAGS="-B/ST:0x50000 -Fe" \
LDFLAGS2="cppopa3.obj" \
OUT="-Fo" \
OBJ=".obj" \
DEF="os2\unzip.def"
# IBM C Set, statically linked runtime
ibmdll:
$(MAKE) -f os2/makefile.os2 dll \
CC="icc -Q -O -Gs -I." \
CFLAGS="-Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="-Gm -Ge- -DDLL -DOS2API -DAPI_DOC" \
LDFLAGS="-Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DLLDEF="os2\rexxapi.def" \
STUBDEF="os2\stub.def" \
DEF="os2\unzip.def" \
APILIB="REXX.lib"
# IBM C Set, dynamically linked runtime
ibmdyndll:
$(MAKE) -f os2/makefile.os2 dll \
CC="icc -Q -O -Gs -Gd -I." \
CFLAGS="-Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="-Gm -Ge- -DDLL -DOS2API -DAPI_DOC" \
LDFLAGS="-Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DLLDEF="os2\rexxapi.def" \
STUBDEF="os2\stub.def" \
DEF="os2\unzip.def" \
APILIB="REXX.lib"
# IBM C Set, debug version
ibmdebugdll:
$(MAKE) -f os2/makefile.os2 dll \
CC="icc -Q -Ti -I." \
CFLAGS="-Sm -Sp1 -D__DEBUG_ALLOC__ -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="-Gm -Ge- -DDLL -DOS2API -DAPI_DOC" \
LDFLAGS="-Fe" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DLLDEF="os2\rexxapi.def" \
STUBDEF="os2\stub.def" \
DEF="os2\unzip.def" \
APILIB="REXX.lib"
# IBM C Set, profiling version for PROFIT
ibmprofdll:
$(MAKE) -f os2/makefile.os2 dll \
CC="icc -Q -O -Gs -Gh -Ti -I." \
CFLAGS="-Gm -Sm -Sp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="-O-" \
DLLFLAG="-Ge- -DDLL -DOS2API -DAPI_DOC" \
LDFLAGS="-Fe" \
LDFLAGS2="profit.obj" \
OUT="-Fo" \
OBJ=".obj" \
DLLDEF="os2\rexxapi.def" \
STUBDEF="os2\stub.def" \
DEF="os2\unzip.def" \
APILIB="REXX.lib"
# Watcom C/386 9.0 or higher
watcom:
$(MAKE) -f os2/makefile.os2 all \
CC="wcl386 -bt=os2v2 -zq -Ox -s -I." \
CFLAGS="-Zp1 -DOS2 -DASM_CRC $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="wasm -bt=os2v2 -3p" \
ASFLAGS="" \
LDFLAGS="-k0x50000 -x -l=os2v2 -Fe=" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
CRC32="crc_i386" \
CRC32F="crc_i386" \
CRC32X="crc_i386" \
DEF="" \
DIRSEP="\\" \
AS_DIRSEP="\\"
# Watcom C/286 9.0 or higher
watcom16:
$(MAKE) -f os2/makefile.os2 all \
CC="wcl -bt=os2 -zq -ml -Ox -s -I." \
CFLAGS="-Zp1 -DOS2 $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="wasm -bt=os2 -2 -ml" \
ASFLAGS="-D__LARGE__ -D__286" \
LDFLAGS="-k0x2000 -x -l=os2 -Fe=" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
DIRSEP="\\" \
AS_DIRSEP="\\"
# Watcom C/386 9.0 or higher, crosscompilation for DOS, DOS4GW extender
watcomdos:
$(MAKE) -f os2/makefile.os2 all \
CC="wcl386 -bt=dos4g -zq -Ox -s -I." \
CFLAGS="-Zp1 -DMSDOS -DASM_CRC $(LOCAL_UNZIP)" \
NFLAGS="" \
DLLFLAG="" \
AS="wasm -bt=dos4g -zq -3" \
ASFLAGS="" \
LDFLAGS="-k0x50000 -x -l=dos4g -Fe=" \
LDFLAGS2="" \
OUT="-Fo" \
OBJ=".obj" \
CRC32="crc_i386" \
CRC32F="crc_i386" \
CRC32X="crc_i386" \
OBJU2="msdos.obj" \
OBJX2="msdos_.obj" \
OSDEP_H="msdos/doscfg.h" \
DIRSEP="\\" \
AS_DIRSEP="\\"
# Watcom C/386 9.0 or higher, crosscompilation for DOS, PMODE/W extender