source: trunk/makefile@ 1446

Last change on this file since 1446 was 1439, checked in by Gregg Young, 16 years ago

Changes to allow high mem loading of dll; Refactor .LONGNAME and .SUBJECT EA fetch to FetchCommonEAs. Add szFSType to FillInRecordFromFSA use to bypass EA scan and size formatting for tree container; Fix labels/FS type to work on scan on NOPRESCAN Drives; Fixed dbl directory names on restore of dir cnrs; (Tickets 47, 339, 363, 368, 369, 370)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.7 KB
Line 
1# makefile - build all fm/2 components
2# $Id: makefile 1439 2009-07-12 21:57:04Z gyoung $
3
4# Copyright (c) 1993-98 M. Kimes
5# Copyright (c) 2002, 2008 Steven H. Levine
6
7# 24 May 05 SHL Add clean and cleanobj target
8# 16 Jun 05 SHL Workaround makeflags wierdness
9# 18 Jul 05 SHL Add bitmap dependencies
10# 20 Jul 05 SHL Add makeres support
11# 16 Apr 06 SHL Add lxlite target
12# 31 Jul 06 SHL Tweak dependencies
13# 26 Aug 06 SHL Add rest of lxlite support
14# 14 Jun 07 SHL Convert to OpenWatcom
15# 22 Jun 07 JBS Moved some macro-handling code to this
16# file from warpin\makefile because of some
17# differences in how Watcom handles macros.
18# 04 Jul 07 SHL Pass DEBUG settings to sub-make
19# 21 Jan 08 SHL Add *.lrf to clean target
20# 22 Feb 08 JBS Suppress lxlite processing when DEBUG=1
21# 08 Jul 08 SHL Avoid extra work for wmake -a dist
22# 22 Jul 08 SHL Change from dll\dllsyms to dll\syms target for consistency
23# 22 Jul 08 SHL Pass FORTIFY options to subordinate makefiles
24# 25 Oct 08 SHL Sanitize DEBUG usage
25# 18 Nov 08 JBS Ticket 297: Various build improvements/corrections
26# 14 Dec 08 SHL Build fm3.sym
27# 12 Jul 09 GKY Allow FM/2 to load in high memory call exehdr /hi
28
29# Environment - see makefile_pre.mk and dll\makefile
30
31BASE = fm3
32
33# Pass values for FM2_VER, FM2UTILS_VER and BUILD_FM2UTILS which
34# have been set on the command line, if any, on to the
35# warpin\makefile using the WARPIN_OPTS macro.
36
37!ifdef FM2_VER # if defined on wmake command, pass it
38WARPIN_OPTS = FM2_VER=$(FM2_VER)
39!endif
40
41!ifdef FM2UTILS_VER # if defined on wmake command, pass it
42WARPIN_OPTS = $(WARPIN_OPTS) FM2UTILS_VER=$(FM2UTILS_VER)
43!endif
44
45!ifdef BUILD_FM2UTILS # if defined on wmake command, pass it
46WARPIN_OPTS = $(WARPIN_OPTS) BUILD_FM2UTILS=$(BUILD_FM2UTILS)
47!endif
48
49!include makefile_pre.mk
50
51all: dll $(BASE) allexe .symbolic
52
53syms: fm3.sym exesyms dllsyms .symbolic
54
55dist: all syms lxlite wpi .symbolic
56
57# Only update resources
58res: .symbolic
59 @echo Updating resources only
60 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) MAKERES=1
61
62# make DLL components
63
64dll: .symbolic
65 cd dll
66 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT)
67 cd ..
68
69dllsyms: .symbolic
70 cd dll
71 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT) syms
72 cd ..
73
74$(BASE): $(BASE).exe $(BASE).res .symbolic
75
76$(BASE).res: $(BASE).rc icons\$(BASE).ico bitmaps\*.bmp .autodepend
77
78$(BASE).obj: $(BASE).c dll\version.h .autodepend
79
80highmem: .symbolic
81!ifdef HIMEM
82 cd dll
83 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT) loadhigh
84 cd ..
85!else
86 @echo "HIMEM not set"
87!endif
88
89# make EXE compenents
90
91allexe: *.mak .symbolic
92 @for %f in ($<) do $(MAKE) -h -f %f $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT)
93
94# make SYM files
95
96exesyms: *.mak .symbolic
97 @for %f in ($<) do $(MAKE) -h -f %f $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT) sym
98
99# make WPI files
100
101wpi: .symbolic
102 cd warpin
103 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) $(WARPIN_OPTS)
104 cd ..
105
106lxlite:: lxlitedll lxliteexe .symbolic
107
108# makefile_post.mk contains lxlite target for $(BASE).exe
109# Apply to each *.mak for other exes
110lxliteexe: *.mak .symbolic
111!ifndef DEBUG
112 @for %f in ($<) do $(MAKE) -h -f %f $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT) lxlite
113!endif
114
115# Apply to dlls
116lxlitedll: .symbolic
117!ifndef DEBUG
118 cd dll
119 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) $(FORTIFY_OPT) lxlite
120 cd ..
121!endif
122
123cleanobj: .symbolic
124 cd dll
125 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) cleanobj
126 cd ..
127 -del *.obj
128
129clean:: .symbolic
130 cd dll
131 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) clean
132 cd ..
133 -del *.exe
134 -del *.lrf
135 -del *.map
136 -del *.obj
137 -del *.res
138 -del *.sym
139 -del fm3res.str
140
141distclean: clean .symbolic
142 cd warpin
143 $(MAKE) -h $(__MAKEOPTS__) $(DEBUG_OPT) distclean
144 cd ..
145
146!include makefile_post.mk
147
148# The end
Note: See TracBrowser for help on using the repository browser.