source: trunk/src/win32k/pe2lx/makefile@ 2013

Last change on this file since 2013 was 1759, checked in by sandervl, 26 years ago

nodebuginfo option

File size: 4.9 KB
Line 
1##############################################################################
2# $Id: makefile,v 1.7 1999-11-16 18:38:36 sandervl Exp $
3#
4# PD-Win32 API
5#
6# pe2lx.exe makefile
7#
8##############################################################################
9
10##############################################################################
11# Directories
12##############################################################################
13PDWIN32_INCLUDE = ..\..\..\include
14PDWIN32_BIN = ..\..\..\bin
15PE2LXOBJ = ..\object
16PE2LXLIST = ..\list
17WIN32KBASE = ..
18WIN32K_INCLUDE = $(WIN32KBASE)\include
19WIN32K_MISC = $(WIN32KBASE)\misc
20WIN32K_LDR = $(WIN32KBASE)\ldr
21OBJEXT = pe_obj
22
23##############################################################################
24# Include
25##############################################################################
26!include $(PDWIN32_INCLUDE)\pdwin32.mk
27
28
29##############################################################################
30# Tools and Flags Addjustments
31##############################################################################
32CFLAGS = $(CFLAGS) -DRING3 -I$(PDWIN32_INCLUDE) -I$(WIN32K_INCLUDE) \
33 -Ge+ -Wall+ppt-ppc-inl-cnv-gnr-vft-gen-uni-ext- -Gm- -Gn- -Ti+ -Rn
34CXXFLAGS = $(CXXFLAGS) -DRING3 -I$(PDWIN32_INCLUDE) -I$(WIN32K_INCLUDE) \
35 -Ge+ -Wall+ppt-ppc-inl-cnv-gnr-vft- -Gm- -Gn- -Ti+ -Gx -Rn
36
37LD = ilink
38LDFLAGS = /nologo /NOI /A:16 /NOE /O:$@ /packcode /packdata \
39 /MAP:$(PE2LXLIST)\$(@B).map /pmtype:vio /Stack:4096 \
40!ifdef DEBUG
41!ifndef NODEBUGINFO
42 /debug /dbgpack
43!endif
44!else
45 /exepack:2
46!endif
47
48
49##############################################################################
50# Interference rules. Note: -Fo is IBMCPP specific.
51##############################################################################
52{$(WIN32K_MISC)}.c{$(PE2LXOBJ)}.$(OBJEXT):
53 @echo compiling: $(@B).c
54 @$(CC) $(CFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$@ $<
55
56{$(WIN32K_MISC)}.cpp{$(PE2LXOBJ)}.$(OBJEXT):
57 @echo compiling: $(@B).cpp
58 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$@ $<
59
60{$(WIN32K_LDR)}.cpp{$(PE2LXOBJ)}.$(OBJEXT):
61 @echo compiling: $(@B).cpp
62 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$@ $<
63
64.cpp{$(PE2LXOBJ)}.$(OBJEXT):
65 @echo compiling: $(@B).cpp
66 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$@ $<
67
68
69#
70# Visual slick edit!
71#
72{$(WIN32K_MISC)}.c.obj:
73 @echo compiling: $(@B).c
74 @$(CC) $(CFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$(PE2LXOBJ)\$(@B).$(OBJEXT) $<
75
76{$(WIN32K_MISC)}.cpp.obj:
77 @echo compiling: $(@B).cpp
78 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$(PE2LXOBJ)\$(@B).$(OBJEXT) $<
79
80{$(WIN32K_LDR)}.cpp.obj:
81 @echo compiling: $(@B).cpp
82 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$(PE2LXOBJ)\$(@B).$(OBJEXT) $<
83
84.cpp.obj:
85 @echo compiling: $(@B).cpp
86 @$(CXX) $(CXXFLAGS) -c -Fa$(PE2LXLIST)\$(@B).asm -Fo$(PE2LXOBJ)\$(@B).$(OBJEXT) $<
87
88
89##############################################################################
90# Main targets.
91##############################################################################
92TARGET = pe2lx
93
94OBJS = $(PE2LXOBJ)\pe2lx.$(OBJEXT) \
95 $(PE2LXOBJ)\pe2lxmain.$(OBJEXT) \
96 $(PE2LXOBJ)\modulebase.$(OBJEXT) \
97 $(PE2LXOBJ)\malloc.$(OBJEXT) \
98 $(PE2LXOBJ)\new.$(OBJEXT) \
99 $(PE2LXOBJ)\stricmp.$(OBJEXT) \
100 $(PE2LXOBJ)\vprintf.$(OBJEXT)
101
102
103
104all: $(TARGET).exe
105
106$(TARGET).exe: $(OBJS)
107 @echo linking $@
108 $(LD) $(LDFLAGS) $**
109 $(CP) $@ $(PDWIN32_BIN)
110
111
112##############################################################################
113# Cleanup
114##############################################################################
115clean:
116 @-$(RM) $(OBJS) $(TARGET).exe $(PE2LXLIST)\$(TARGET).map *.pch
117
118
119##############################################################################
120# dependencies by hand.
121##############################################################################
122$(PE2LXOBJ)\pe2lx.$(OBJEXT): \
123 pe2lx.cpp \
124 $(WIN32K_INCLUDE)\pe2lx.h \
125 $(WIN32K_INCLUDE)\OS2Krnl.h \
126 $(WIN32K_INCLUDE)\malloc.h \
127 $(WIN32K_INCLUDE)\new.h
128
129$(PE2LXOBJ)\pe2lxmain.$(OBJEXT): \
130 pe2lxmain.cpp \
131 $(WIN32K_INCLUDE)\pe2lx.h \
132 $(WIN32K_INCLUDE)\OS2Krnl.h
133
134$(PE2LXOBJ)\ModuleBase.$(OBJEXT): \
135 $(WIN32K_LDR)\ModuleBase.cpp \
136 $(WIN32K_INCLUDE)\malloc.h \
137 $(WIN32K_INCLUDE)\vprintf.h \
138 $(WIN32K_INCLUDE)\dev32.h \
139 $(WIN32K_INCLUDE)\OS2Krnl.h \
140 $(WIN32K_INCLUDE)\modulebase.h
141
142$(PE2LXOBJ)\malloc.$(OBJEXT): \
143 $(WIN32K_MISC)\malloc.c \
144 $(WIN32K_INCLUDE)\log.h \
145 $(WIN32K_INCLUDE)\malloc.h
146
147$(PE2LXOBJ)\new.$(OBJEXT): \
148 $(WIN32K_MISC)\new.cpp \
149 $(WIN32K_INCLUDE)\new.h \
150 $(WIN32K_INCLUDE)\malloc.h \
151 $(WIN32K_INCLUDE)\log.h
152
153$(PE2LXOBJ)\vprintf.$(OBJEXT): \
154 $(WIN32K_MISC)\vprintf.c \
155 $(WIN32K_INCLUDE)\vprintf.h
156
157$(PE2LXOBJ)\stricmp.$(OBJEXT): \
158 $(WIN32K_MISC)\stricmp.c
159
160
Note: See TracBrowser for help on using the repository browser.