home *** CD-ROM | disk | FTP | other *** search
Makefile | 1992-04-26 | 3.2 KB | 115 lines |
- !if !$d(MDL)
- MDL = s
- !endif
-
- !if '$(MDL)' == 't'
- AMDL = __TINY__
- !elif '$(MDL)' == 's'
- AMDL = __SMALL__
- !elif '$(MDL)' == 'm'
- AMDL = __MEDIUM__
- !elif '$(MDL)' == 'c'
- AMDL = __COMPACT__
- !elif '$(MDL)' == 'l'
- AMDL = __LARGE__
- !elif '$(MDL)' == 'h'
- AMDL = __HUGE__
- !elif '$(MDL)' == 'r'
- AMDL = __TINY__
- !elif '$(MDL)' == 'p'
- AMDL = __LARGE__
- !else
- !error invalid memory model
- !endif
-
- !if '$(TYPE)' == 't'
- TYPE = __TURBOC__
- !else
- TYPE = __MSC__
- !endif
-
- CC = tcc
- CFLAGS = -m$(MDL) -O -G -Z -1-
- # -O, -G, -Z = turn on optimizations
- # -1- = generate 8086 code only
-
- LIB = tlib
- LIBFLAGS = /c/0
- # /c = case-sensitive /0 = discard embedded dependency/debug info
-
- ASM = tasm
- AFLAGS = /Zi
- # /Zi = include debugging info in .OBJ
- !if '$(MDL)' == 'r'
- AFLAGS = $(AFLAGS) /DRBcomm
- !endif
-
- C_OBJS = spawnlo.obj spawnlpo.obj spawnvo.obj spawnvpo.obj spawnle.obj \
- spawnlpe.obj spawnve.obj spawnvpe.obj system.obj \
- _spawn.obj _spawne.obj _spawnp.obj _spawnpe.obj _system.obj \
- _swapdir.obj init.obj
-
- ASM_OBJS = _spawnv$(MDL).obj spawnpth.obj checkext.obj swaplist.obj swap_xms.obj \
- swap_ems.obj swap_ext.obj swap_dsk.obj spawnerr.obj spawnenv.obj
-
- !if '$(MDL)' == 'p'
- pascal: spawntp.obj
- !elif '$(MDL)' == 'r'
- spawn$(MDL).lib: $(ASM_OBJS)
- $(LIB) $(LIBFLAGS) $* +spawnpth+checkext+_spawnv$(MDL)+swaplist+swap_xms+swap_ems+swap_ext+swap_dsk
- !else
- spawn$(MDL).lib: $(C_OBJS) $(ASM_OBJS)
- $(LIB) $(LIBFLAGS) $* +spawnlo+spawnlpo+spawnvo+spawnvpo+spawnle+spawnlpe+spawnve+spawnvpe+spawnenv
- $(LIB) $(LIBFLAGS) $* +system+init+_spawn+_spawne+_spawnp+_spawnpe+_system+_swapdir+spawnpth+checkext
- $(LIB) $(LIBFLAGS) $* +_spawnv$(MDL)+swaplist+swap_xms+swap_ems+swap_ext+swap_dsk+spawnerr
- !endif
-
- all: spawn$(MDL).lib swaptest.exe
-
- .c.obj:
- $(CC) $(CFLAGS) -c $*
-
- .asm.obj:
- $(ASM) /mx /D$(AMDL) /D$(TYPE) $(AFLAGS) $*
-
- _spawno.h: spawno.h
- touch _spawno.h
-
- spawnlo.obj: spawnlo.c _spawno.h
- spawnlpo.obj: spawnlpo.c _spawno.h
- spawnvo.obj: spawnvo.c _spawno.h
- spawnvpo.obj: spawnvpo.c _spawno.h
- spawnle.obj: spawnle.c _spawno.h
- spawnlpe.obj: spawnlpe.c _spawno.h
- spawnve.obj: spawnve.c _spawno.h
- spawnvpe.obj: spawnvpe.c _spawno.h
- system.obj: system.c _spawno.h
- _spawn.obj: _spawn.c _spawno.h
- _spawne.obj: _spawne.c _spawno.h
- _spawnp.obj: _spawnp.c _spawno.h
- _spawnpe.obj: _spawnpe.c _spawno.h
- _system.obj: _system.c _spawno.h
- _swapdir.obj: _swapdir.c _spawno.h
- init.obj: init.c _spawno.h
-
- spawnenv.obj: spawnenv.asm rules.asi
- spawnpth.obj: spawnpth.asm rules.asi
- checkext.obj: checkext.asm rules.asi
- spawnerr.obj: spawnerr.asm rules.asi
- swaplist.obj: swaplist.asm rules.asi
- swap_dsk.obj: swap_dsk.asm rules.asi spawno.inc
- swap_xms.obj: swap_xms.asm rules.asi spawno.inc
- swap_ems.obj: swap_ems.asm rules.asi spawno.inc
- swap_ext.obj: swap_ext.asm rules.asi spawno.inc
-
- spawntp.obj: __spawnv.asm rules.asi spawno.inc swaplist.asm swap_dsk.asm \
- swap_xms.asm swap_ems.asm swap_ext.asm checkext.asm \
- spawntp.inc
- $(ASM) /mx /D__TP /D$(AMDL) $(AFLAGS) __spawnv,spawntp
-
- _spawnv$(MDL).obj: __spawnv.asm rules.asi spawno.inc
- $(ASM) /mx /D$(AMDL) $(AFLAGS) __spawnv,_spawnv$(MDL)
-
- swaptest.exe: swaptest.c spawno.h spawn$(MDL).lib
- $(CC) $(CFLAGS) -v swaptest.c spawn$(MDL).lib
-