source: trunk/makefile@ 858

Last change on this file since 858 was 723, checked in by John Small, 18 years ago

Improved/reduced the code related to the WarpIN-related macros:
FM2_VER, FM2UTILS_VER and BUILD_FM2UTILS.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.5 KB
RevLine 
[238]1# makefile - build all fm/2 components
[74]2# $Id: makefile 723 2007-07-05 09:34:51Z jbs $
[2]3
[414]4# Copyright (c) 1993-98 M. Kimes
[691]5# Copyright (c) 2002, 2007 Steven H. Levine
[414]6
[147]7# 24 May 05 SHL Add clean and cleanobj target
[211]8# 16 Jun 05 SHL Workaround makeflags wierdness
[238]9# 18 Jul 05 SHL Add bitmap dependencies
10# 20 Jul 05 SHL Add makeres support
[310]11# 16 Apr 06 SHL Add lxlite target
[414]12# 31 Jul 06 SHL Tweak dependencies
[465]13# 26 Aug 06 SHL Add rest of lxlite support
[691]14# 14 Jun 07 SHL Convert to OpenWatcom
[703]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.
[720]18# 04 Jul 07 SHL Pass DEBUG settings to sub-make
[74]19
[719]20# Environment - see makefile_pre.mk
[74]21
[15]22BASE = fm3
[2]23
[723]24# Pass values for FM2_VER, FM2UTILS_VER and BUILD_FM2UTILS which
25# have been set on the command line, if any, on to the
26# warpin\makefile using the WARPIN_OPTS macro.
[703]27
[723]28!ifdef FM2_VER # if defined on wmake command, pass it
29WARPIN_OPTS = FM2_VER=$(FM2_VER)
[703]30!endif
31
[723]32!ifdef FM2UTILS_VER # if defined on wmake command, pass it
33WARPIN_OPTS = $(WARPIN_OPTS) FM2UTILS_VER=$(FM2UTILS_VER)
[703]34!endif
35
[723]36!ifdef BUILD_FM2UTILS # if defined on wmake command, pass it
37WARPIN_OPTS = $(WARPIN_OPTS) BUILD_FM2UTILS=$(BUILD_FM2UTILS)
[703]38!endif
39
[238]40!include makefile_pre.mk
[2]41
[691]42all: dll $(BASE) allexe .symbolic
[589]43
[691]44dist: all lxlite wpi .symbolic
[594]45
[238]46# Only update resources
[691]47res: .symbolic
[238]48 @echo Updating resources only
[720]49 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) MAKERES=1
[238]50
51# make DLL components
52
[691]53dll: .symbolic
[15]54 cd dll
[720]55 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT)
[15]56 cd ..
[2]57
[691]58$(BASE): $(BASE).exe $(BASE).res .symbolic
[2]59
[554]60$(BASE).res: $(BASE).rc icons\$(BASE).ico bitmaps\*.bmp
[2]61
[554]62$(BASE).obj: $(BASE).c dll\version.h
[2]63
[238]64# make EXE compenents
[2]65
[691]66allexe: *.mak .symbolic
[720]67 @for %f in ($<) do $(MAKE) -f %f $(__MAKEOPTS__) $(DEBUG_OPT)
[238]68
[691]69wpi: .symbolic
[579]70 cd warpin
[723]71 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) $(WARPIN_OPTS)
[579]72 cd ..
73
[465]74# makefile_post.mk contains lxlite target for $(BASE).exe
75# Apply to each *.mak for other exes
[691]76lxlite:: *.mak .symbolic
[720]77 @for %f in ($<) do $(MAKE) -f %f $(__MAKEOPTS__) $(DEBUG_OPT) lxlite
[310]78
[465]79# Apply to dlls
[691]80lxlite:: .symbolic
[465]81 cd dll
[720]82 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) lxlite
[465]83 cd ..
84
[691]85cleanobj: .symbolic
[147]86 cd dll
[720]87 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) cleanobj
[147]88 cd ..
89 -del *.obj
90
[691]91clean:: .symbolic
[147]92 cd dll
[720]93 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) clean
[147]94 cd ..
95 -del *.exe
96 -del *.map
97 -del *.obj
98 -del *.res
99 -del fm3res.str
100
[691]101distclean: clean .symbolic
[589]102 cd warpin
[720]103 $(MAKE) $(__MAKEOPTS__) $(DEBUG_OPT) distclean
[589]104 cd ..
105
[238]106!include makefile_post.mk
[15]107
108# The end
Note: See TracBrowser for help on using the repository browser.