source: trunk/src/kernel32/makefile@ 3003

Last change on this file since 3003 was 2998, checked in by bird, 26 years ago

Updated to benefit from the global defenitions in pdwin32.mk.
Using LD2 as link editor.

File size: 3.2 KB
Line 
1# $Id: makefile,v 1.86 2000-03-04 19:17:27 bird Exp $
2
3#
4# PD-Win32 API
5#
6# kernel32.dll makefile
7#
8
9PDWIN32_INCLUDE = ..\..\include
10PDWIN32_LIB = ..\..\lib
11PDWIN32_BIN = ..\..\bin
12PDWIN32_TOOLS = ..\..\tools\bin
13
14
15!include $(PDWIN32_INCLUDE)/pdwin32.mk
16
17CFLAGS = $(CFLAGS) -I$(PDWIN32_INCLUDE)
18CXXFLAGS = $(CXXFLAGS) -I$(PDWIN32_INCLUDE)
19
20!ifdef NODEBUGINFO
21CFLAGS = $(CFLAGS) -DDEFAULT_LOGGING_OFF
22CXXFLAGS = $(CXXFLAGS) -DDEFAULT_LOGGING_OFF
23!endif
24
25OBJS = KERNEL32.OBJ KOBJECTS.OBJ CONSOLE.OBJ CONIN.OBJ \
26CONBUFFER.OBJ CONOUT.OBJ UNICODE.OBJ network.OBJ HMDEVIO.OBJ \
27profile.obj THREAD.OBJ virtual.obj THUNK.OBJ OBSOLETE.OBJ COMM.OBJ\
28MESSAGE.OBJ RESOURCE.OBJ EXCEPTIONS.OBJ heapshared.obj cpuhlp.obj heapcode.obj \
29LFILE.OBJ NPIPE.OBJ oslibdos.obj oslibmisc.obj MISC.OBJ EXCEPTUTIL.OBJ \
30LANG.OBJ ICCIO.OBJ MAP.OBJ WIN32UTIL.OBJ heap.OBJ heapstring.obj \
31os2heap.OBJ vmutex.OBJ initterm.OBJ handlemanager.OBJ environ.obj initsystem.obj \
32hmdevice.obj hmopen32.obj hmobjects.obj hmevent.obj hmmutex.obj hmcomm.obj \
33hmsemaphore.obj wprocess.OBJ conprop.OBJ conprop2.obj winimagelx.obj \
34winimagebase.OBJ windllbase.OBJ winexebase.OBJ time.obj mmap.obj \
35winimagepe2lx.obj winimagepeldr.obj windllpe2lx.obj windlllx.obj windllpeldr.obj \
36winexepe2lx.obj winexelx.obj winexepeldr.obj WINRES.OBJ critsection.obj \
37pefile.OBJ winimgres.OBJ wintls.obj async.OBJ fileio.obj hmtoken.obj kernelrsrc.obj \
38atom.obj disk.obj directory.obj cvtbitmap.obj hmmmap.obj winfakepeldr.obj \
39cvtaccel.obj cvticon.obj cvticongrp.obj oslibexcept.obj cpu.obj process.obj \
40cvtcursor.obj cvtcursorgrp.obj stubs.obj interlock.obj toolhelp.obj codepage.obj \
41debug.obj oslibdebug.obj dbglocal.obj registry.obj
42
43
44TARGET = kernel32
45
46all: $(PDWIN32_LIB)\pmwinx.lib $(TARGET).dll $(TARGET).LIB
47
48
49$(TARGET).dll: $(OBJS) $(TARGET).def $(TARGET).lrf
50 $(LD2) $(LD2FLAGS) /NOFREE @$(TARGET).lrf
51 rc -r console.rc console.res
52 rc console.res $@
53 $(CP) $@ $(PDWIN32_BIN)
54
55# old linker stuff
56# $(LD) $(LDFLAGS) /Fm /Fe$@ /B"/FREE" @$(TARGET).lrf
57#!ifdef DEBUG
58#!ifdef NODEBUGINFO
59# ilink /nodeb /map /noe /NOD /NoLogo /NOFREE @$(TARGET).lrf
60#!else
61# ilink /de /map /noe /NOD /dbgpack /NoLogo /NOFREE @$(TARGET).lrf
62#!endif
63#!else
64# ilink /map /noe /NOD /NoLogo /NOFREE @$(TARGET).lrf
65#!endif
66
67
68
69$(TARGET).lrf: makefile
70 @echo Creating file <<$(@B).lrf
71$(OBJS)
72$(PDWIN32_LIB)\odincrt.lib
73$(PDWIN32_LIB)\PMWINX.LIB
74$(PDWIN32_LIB)\LIBULS.LIB
75$(PDWIN32_LIB)\LIBCONV.LIB
76OS2386.LIB
77$(RTLLIB_O)
78$(TARGET).def
79<<keep
80
81
82lib: $(TARGET).lib $(PDWIN32_LIB)\$(TARGET).lib
83
84$(PDWIN32_LIB)\$(TARGET).lib: $(TARGET).lib
85 $(CP) $** $@
86
87$(TARGET).LIB: $(TARGET)exp.def
88 $(IMPLIB) $(IMPLIBFLAGS) $@ $(TARGET)exp.def
89 $(CP) $@ $(PDWIN32_LIB)
90
91$(TARGET)exp.def: $(TARGET).def
92 $(IMPDEF) $** $@
93
94
95$(PDWIN32_LIB)\pmwinx.lib:
96 $(IMPLIB) $(IMPLIBFLAGS) $@ $(PDWIN32_LIB)\pmwinx.def
97
98kernelrsrc.asm: kernel32.rc
99 $(RC) $(RCFLAGS) -o kernelrsrc.asm kernel32.rc
100
101
102dep:
103 $(DEPEND) -I$(PDWIN32_INCLUDE);$(PDWIN32_INCLUDE)\win \
104 *.c *.cpp *.h *.asm *.inc $(PDWIN32_INCLUDE)\*.h
105
106!ifndef NODEP
107!include .depend
108!endif
109
110
111clean:
112 $(RM) *.OBJ *.LIB *.dll *.lrf *.res *.map *.pch kernelrsrc.asm \
113 $(PDWIN32_LIB)\$(TARGET).LIB $(PDWIN32_BIN)\$(TARGET).dll \
114 $(TARGET)exp.def \
Note: See TracBrowser for help on using the repository browser.