1 # Copyright 2007 TeX Users Group.
2 # Copyright 2014 Clerk Ma.
4 # You may freely use, modify and/or distribute this file.
8 # TO SET UP DEBUGGING INFO:
9 # (1) add -Zi to CFLAGS for CL
10 # (2) add /MAP /DEBUG /PDB:yandytex.pdb for LINK
12 # NOTE: full optimization causes some problems especially in TEX5.C & TEX6.C
13 # NOTE: assuming no aliasing causes some problems especially in TEXMF.C
19 # -Gf saves about 7k bytes in EXE file
21 # For production (-Bd show compiler passes)
22 # ASSUMING WE WORK WITH MS COMPILER AND LINKER ONLY use -Gy and -Gf
23 # CFLAGS=-c -DDOS -DMSDOS -DPHARLAP -DTeX -DMYDEBUG -Ilib -Ox -Gy -Gf -W3
24 # CFLAGS=-c -DDOS -DMSDOS -DPHARLAP -DTeX -DMYDEBUG -Ilib -YX -Ox -Ge -Gy -Gf -W4
26 # CFLAGS=/c /Ge /Gy /Gf /Ox /W4 /DMSDOS /DTeX /DPHARLAP /DNDEBUG /Ilib /YX
27 CFLAGS=/nologo /c /Gy /Ox /W4 /DMSDOS /DTeX /DPHARLAP /DNDEBUG
29 # CFLAGS=/c /Ge /Gy /Gf /Od /Zi /W4 /DMSDOS /DTeX /DPHARLAP /Ilib /YX
31 # NOTE: -Ox => -Ogityb1 -Gs
34 # LFLAGS=@yandytex.nt /MAP lib\libdos.lib
36 # LFLAGS=/MAP lib\libdos.lib
39 # LFLAGS=@yandytex.nt /MAP /DEBUG /PDB:yandytex.pdb lib\libdos.lib
40 # LFLAGS=/MAP /DEBUG /PDB:yandytex.pdb
42 objs = texmf.obj itex.obj openinou.obj subroute.obj local.obj \
43 tex0.obj tex1.obj tex2.obj tex3.obj tex4.obj \
44 tex5.obj tex6.obj tex7.obj tex8.obj tex9.obj
46 # ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###
49 $(LINK) $(LFLAGS) texmf itex openinou subroute local \
50 tex0 tex1 tex2 tex3 tex4 tex5 tex6 tex7 tex8 tex9
51 copy texmf.exe yandytex.exe
53 # ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###
56 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
57 $(CC) /DINITEX /DINI $(CFLAGS) texmf.c
60 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
61 $(CC) /DINITEX $(CFLAGS) itex.c
63 openinou.obj: openinou.c \
64 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
65 $(CC) $(CFLAGS) openinou.c
67 subroute.obj: subroute.c \
68 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
69 $(CC) $(CFLAGS) subroute.c
72 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
73 $(CC) /DINITEX $(CFLAGS) local.c
75 # NOTE: cannot compile tex5.c and tex6.c with full optimizations ...
78 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
81 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
84 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
87 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
90 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
93 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
96 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
99 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
102 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h
105 texd.h texmf.h texmfmem.h coerce.h lib.h config.h common.h