source: trunk/src/makefile@ 5280

Last change on this file since 5280 was 4878, checked in by sandervl, 25 years ago

* empty log message *

File size: 2.8 KB
Line 
1# $Id: makefile,v 1.68 2001-01-06 16:40:23 sandervl Exp $
2
3#
4# Odin32 API
5#
6# Top of the src tree makefile
7#
8#
9# Usage: nmake ( all | libs | dep | clean )
10#
11# all: Build the entire src tree.
12# lib: Builds the libraries.
13# dep: Builds depenency information for the entire src tree.
14# clean: Bring src tree back to a "virgin" state.
15#
16#
17#
18
19
20#
21# Build environment.
22#
23!include ../makefile.inc
24
25
26#
27# Exclude lists which is to be passed in to DOWITHDIRS
28#
29NOTTOBEMADE = CVS;pe2lx;odin32api;odinwps;spy;odinldr;msvcrt # generally not made
30NOTDLLS = $(NOTTOBEMADE);peldr;dllentry # not dlls
31NOTHAVELIBS = $(NOTTOBEMADE);peldr # don't generate libs
32NOTWIN32DLLS= $(NOTDLLS);win32k;odincrt;dllentry # not win32 dlls.
33
34
35#
36# Check for SMP and MASSIVE.
37# SMP: Working backwards thru the directories traversed by a rule.
38# MASSIVE: Spawn a child processes for each process.
39#
40!ifdef SMP
41EXTRA = -r
42!endif
43!ifdef MASSIVE
44EXTRA = -s start "Odin32 Massive Build" /B /C
45!endif
46
47
48
49#
50# All rule. Make libraries and then build every directory.
51#
52all: libs build
53
54
55
56#
57# Smp rule - Dual build. Starts a second build process after libraries
58# was made.
59#
60smp: startsmp libs build
61
62startsmp: # Internal helper for the smp rule.
63 start "Odin32 SMP Build Process" /B $(MAKE_CMD) SMP=1 libs build
64
65
66#
67# Rules which supports the SMP and MASSIVE features.
68#
69# build: Invokes the all rule in every directory.
70# clean: Invokes the clean rule in every directory.
71# lib(s): Invokes the lib rule in every directory known to support it.
72# dep: Invokes the dep rule in every directory.
73#
74build:
75 $(DOWITHDIRS) -e$(NOTTOBEMADE) -lbld -c $(EXTRA) \
76 $(MAKE_CMD) all
77
78lib libs:
79 $(DOWITHDIRS) -e$(NOTHAVELIBS) -c -llib $(EXTRA) \
80 $(MAKE_CMD) lib
81
82dep:
83 $(DOWITHDIRS) -e$(NOTTOBEMADE) -c -ldep $(EXTRA) \
84 $(MAKE_CMD) NODEP=1 dep
85
86clean:
87 $(DOWITHDIRS) -e$(NOTTOBEMADE) -c -lcln $(EXTRA) \
88 $(MAKE_CMD) NODEP=1 clean
89
90
91#
92# Odin32 API DB Management
93#
94APIImport:
95 $(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp \
96 ..\..\tools\bin\APIImport.cmd
97
98StateUpd:
99 ..\tools\bin\StateUpd.exe -io+
100 -$(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp -i \
101 ..\..\tools\bin\StateUpd.cmd -ie- -ib-
102 ..\tools\bin\StateUpd.exe -io+
103
104ReadSignals:
105 -$(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp -i \
106 IF EXIST signals.log list signals.log
107
108ReadStateUpdLogs:
109 -$(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp -i \
110 IF EXIST stateupd.log list stateupd.log
111
112ReadAPIImportLogs:
113 -$(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp -i \
114 IF EXIST apiimport.log list apiimport.log
115
116CleanDBLogs:
117 $(DOWITHDIRS) -e$(NOTWIN32DLLS) -cp \
118 $(RM) apiimport.log signals.log stateupd.log apiimport.def
119 $(RM) signals.log stateupd.log
120
Note: See TracBrowser for help on using the repository browser.