source: trunk/src/kernel32/makefile@ 3453

Last change on this file since 3453 was 3390, checked in by sandervl, 26 years ago

dll search order changes

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