source: trunk/src/kernel32/makefile@ 3313

Last change on this file since 3313 was 3206, checked in by sandervl, 26 years ago

mutex fixes + added vsemaphore class

File size: 4.1 KB
Line 
1# $Id: makefile,v 1.92 2000-03-23 19:23:46 sandervl Exp $
2
3#
4# Odin32 API
5#
6# kernel32.dll makefile
7#
8
9# Directory macros.
10PDWIN32_INCLUDE = ..\..\include
11PDWIN32_LIB = ..\..\lib
12PDWIN32_BIN = ..\..\$(OBJDIR)
13PDWIN32_TOOLS = ..\..\tools\bin
14
15
16# Compiler, tools, and interference rules.
17!include $(PDWIN32_INCLUDE)/pdwin32.mk
18
19
20# Flag overloads and local macros.
21CLEANEXTRAS = kernelrsrc.asm
22
23#CFLAGS = $(CFLAGS) -DDEBUG
24#CXXFLAGS = $(CXXFLAGS) /Fa+
25
26
27# Object files. All objects should be prefixed with $(OBJDIR)!
28OBJS = \
29$(OBJDIR)\KERNEL32.OBJ \
30$(OBJDIR)\KOBJECTS.OBJ \
31$(OBJDIR)\CONSOLE.OBJ \
32$(OBJDIR)\CONIN.OBJ \
33$(OBJDIR)\CONBUFFER.OBJ \
34$(OBJDIR)\CONOUT.OBJ \
35$(OBJDIR)\UNICODE.OBJ \
36$(OBJDIR)\network.OBJ \
37$(OBJDIR)\HMDEVIO.OBJ \
38$(OBJDIR)\profile.obj \
39$(OBJDIR)\THREAD.OBJ \
40$(OBJDIR)\virtual.obj \
41$(OBJDIR)\THUNK.OBJ \
42$(OBJDIR)\OBSOLETE.OBJ \
43$(OBJDIR)\COMM.OBJ \
44$(OBJDIR)\MESSAGE.OBJ \
45$(OBJDIR)\RESOURCE.OBJ \
46$(OBJDIR)\EXCEPTIONS.OBJ \
47$(OBJDIR)\heapshared.obj \
48$(OBJDIR)\cpuhlp.obj \
49$(OBJDIR)\heapcode.obj \
50$(OBJDIR)\LFILE.OBJ \
51$(OBJDIR)\NPIPE.OBJ \
52$(OBJDIR)\oslibdos.obj \
53$(OBJDIR)\oslibmisc.obj \
54$(OBJDIR)\MISC.OBJ \
55$(OBJDIR)\EXCEPTUTIL.OBJ \
56$(OBJDIR)\LANG.OBJ \
57$(OBJDIR)\ICCIO.OBJ \
58$(OBJDIR)\MAP.OBJ \
59$(OBJDIR)\WIN32UTIL.OBJ \
60$(OBJDIR)\heap.OBJ \
61$(OBJDIR)\heapstring.obj \
62$(OBJDIR)\os2heap.OBJ \
63$(OBJDIR)\vmutex.OBJ \
64$(OBJDIR)\vsemaphore.OBJ \
65$(OBJDIR)\initterm.OBJ \
66$(OBJDIR)\handlemanager.OBJ \
67$(OBJDIR)\environ.obj \
68$(OBJDIR)\initsystem.obj \
69$(OBJDIR)\hmdevice.obj \
70$(OBJDIR)\hmopen32.obj \
71$(OBJDIR)\hmobjects.obj \
72$(OBJDIR)\hmevent.obj \
73$(OBJDIR)\hmmutex.obj \
74$(OBJDIR)\hmcomm.obj \
75$(OBJDIR)\hmsemaphore.obj \
76$(OBJDIR)\wprocess.OBJ \
77$(OBJDIR)\conprop.OBJ \
78$(OBJDIR)\conprop2.obj \
79$(OBJDIR)\winimagelx.obj \
80$(OBJDIR)\winimagebase.OBJ \
81$(OBJDIR)\windllbase.OBJ \
82$(OBJDIR)\winexebase.OBJ \
83$(OBJDIR)\time.obj \
84$(OBJDIR)\mmap.obj \
85$(OBJDIR)\winimagepe2lx.obj \
86$(OBJDIR)\winimagepeldr.obj \
87$(OBJDIR)\windllpe2lx.obj \
88$(OBJDIR)\windlllx.obj \
89$(OBJDIR)\windllpeldr.obj \
90$(OBJDIR)\winexepe2lx.obj \
91$(OBJDIR)\winexelx.obj \
92$(OBJDIR)\winexepeldr.obj \
93$(OBJDIR)\WINRES.OBJ \
94$(OBJDIR)\critsection.obj \
95$(OBJDIR)\pefile.OBJ \
96$(OBJDIR)\winimgres.OBJ \
97$(OBJDIR)\wintls.obj \
98$(OBJDIR)\async.OBJ \
99$(OBJDIR)\fileio.obj \
100$(OBJDIR)\hmtoken.obj \
101$(OBJDIR)\atom.obj \
102$(OBJDIR)\disk.obj \
103$(OBJDIR)\directory.obj \
104$(OBJDIR)\cvtbitmap.obj \
105$(OBJDIR)\hmmmap.obj \
106$(OBJDIR)\winfakepeldr.obj \
107$(OBJDIR)\cvtaccel.obj \
108$(OBJDIR)\cvticon.obj \
109$(OBJDIR)\cvticongrp.obj \
110$(OBJDIR)\oslibexcept.obj \
111$(OBJDIR)\cpu.obj \
112$(OBJDIR)\process.obj \
113$(OBJDIR)\cvtcursor.obj \
114$(OBJDIR)\cvtcursorgrp.obj \
115$(OBJDIR)\stubs.obj \
116$(OBJDIR)\interlock.obj \
117$(OBJDIR)\toolhelp.obj \
118$(OBJDIR)\codepage.obj \
119$(OBJDIR)\debug.obj \
120$(OBJDIR)\oslibdebug.obj \
121$(OBJDIR)\dbglocal.obj \
122$(OBJDIR)\registry.obj \
123$(OBJDIR)\queue.obj \
124$(OBJDIR)\hmthread.obj \
125$(OBJDIR)\kernelrsrc.obj
126
127
128# Target name - name of the dll without extention and path.
129TARGET = kernel32
130
131
132# All rule - build objs, target dll, copies dll to bin and makes libs.
133all: $(OBJDIR) \
134 $(OBJDIR)\$(TARGET).dll \
135 $(PDWIN32_BIN)\$(TARGET).dll \
136 lib
137
138
139# Lib rule - build importlibrary (and evt. other libs)
140lib: $(TARGET).lib $(PDWIN32_LIB)\$(TARGET).lib
141
142
143# Dll rule - builds the target dll.
144$(OBJDIR)\$(TARGET).dll: $(OBJS) $(TARGET).def $(OBJDIR)\$(TARGET).lrf \
145 $(OBJDIR)\console.res
146 $(LD2) $(LD2FLAGS) @$(OBJDIR)\$(TARGET).lrf
147 $(OS2RC) $(OBJDIR)\console.res $@
148
149
150# Linker file - creates the parameter file passed on to the linker.
151$(OBJDIR)\$(TARGET).lrf: makefile
152 @echo Creating file <<$(OBJDIR)\$(@B).lrf
153/OUT:$(OBJDIR)\$(TARGET).dll
154/MAP:$(OBJDIR)\$(TARGET).map
155$(OBJS)
156$(PDWIN32_LIB)\odincrt.lib
157$(PDWIN32_LIB)\PMWINX.LIB
158$(PDWIN32_LIB)\LIBULS.LIB
159$(PDWIN32_LIB)\LIBCONV.LIB
160OS2386.LIB
161$(RTLLIB_O)
162$(TARGET).def
163<<keep
164
165
166# Dep rule - makes depenencies for C, C++ and Asm files.
167dep:
168 $(DEPEND) -I. -I$(PDWIN32_INCLUDE);$(PDWIN32_INCLUDE)\win \
169 *.c *.cpp *.h *.asm *.inc $(PDWIN32_INCLUDE)\*.h
170
171
172# Includes the common rules.
173!include $(PDWIN32_INCLUDE)/pdwin32.post
174
Note: See TracBrowser for help on using the repository browser.