source: branches/development/src/win32k/elf2lx/makefile

Last change on this file was 2923, checked in by bird, 26 years ago

Update makefile to compile elf2lxmain.

File size: 4.2 KB
Line 
1##############################################################################
2# $Id: makefile,v 1.2 2000-02-27 02:15:35 bird Exp $
3#
4# PD-Win32 API
5#
6# elf2lx.exe makefile
7#
8##############################################################################
9
10##############################################################################
11# Include
12##############################################################################
13!include ..\makefile.inc
14!include $(PDWIN32_INCLUDE)\pdwin32.mk
15
16##############################################################################
17# Object extention
18##############################################################################
19OBJEXT = elf_obj
20
21##############################################################################
22# Tools and Flags Addjustments
23##############################################################################
24CINCLUDES = -I$(WIN32KINCLUDE) -I$(PDWIN32_INCLUDE)
25CFLAGS = $(CINCLUDES) $(CFLAGS) -DRING3 -DELF2LX \
26 -Ge+ -Wall+ppt-ppc-inl-cnv-gnr-vft-gen-uni-ext- -Gm- -Gn- -Ti+ -Rn
27CXXFLAGS = $(CINCLUDES) $(CXXFLAGS) -DRING3 -DELF2LX \
28 -Ge+ -Wall+ppt-ppc-inl-cnv-gnr-vft- -Gm- -Gn- -Ti+ -Gx -Rn
29
30LD = ilink
31LDFLAGS = /nologo /NOI /A:16 /NOE /O:$@ /packcode /packdata \
32 /MAP:$(WIN32KLIST)\$(@B).map /pmtype:vio /Stack:4096 \
33!ifdef DEBUG
34!ifndef NODEBUGINFO
35 /debug /dbgpack
36!endif
37!else
38 /exepack:2
39!endif
40
41
42##############################################################################
43# Interference rules. Note: -Fo is IBMCPP specific.
44##############################################################################
45{$(WIN32KMISC)}.c{$(WIN32KOBJ)}.$(OBJEXT):
46 @echo compiling: $(@B).c
47 @$(CC) $(CFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$@ $<
48
49{$(WIN32KMISC)}.cpp{$(WIN32KOBJ)}.$(OBJEXT):
50 @echo compiling: $(@B).cpp
51 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$@ $<
52
53{$(WIN32KLDR)}.cpp{$(WIN32KOBJ)}.$(OBJEXT):
54 @echo compiling: $(@B).cpp
55 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$@ $<
56
57.cpp{$(WIN32KOBJ)}.$(OBJEXT):
58 @echo compiling: $(@B).cpp
59 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$@ $<
60
61
62#
63# Visual slick edit!
64#
65{$(WIN32KMISC)}.c.obj:
66 @echo compiling: $(@B).c
67 @$(CC) $(CFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$(WIN32KOBJ)\$(@B).$(OBJEXT) $<
68
69{$(WIN32KMISC)}.cpp.obj:
70 @echo compiling: $(@B).cpp
71 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$(WIN32KOBJ)\$(@B).$(OBJEXT) $<
72
73{$(WIN32KLDR)}.cpp.obj:
74 @echo compiling: $(@B).cpp
75 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$(WIN32KOBJ)\$(@B).$(OBJEXT) $<
76
77.cpp.obj:
78 @echo compiling: $(@B).cpp
79 @$(CXX) $(CXXFLAGS) -c -Fa$(WIN32KLIST)\$(@B).asm -Fo$(WIN32KOBJ)\$(@B).$(OBJEXT) $<
80
81
82##############################################################################
83# Main targets.
84##############################################################################
85TARGET = Elf2Lx
86
87OBJS = $(WIN32KOBJ)\elf2lx.$(OBJEXT) \
88 $(WIN32KOBJ)\elf2lxmain.$(OBJEXT) \
89 $(WIN32KOBJ)\modulebase.$(OBJEXT) \
90 $(WIN32KOBJ)\malloc.$(OBJEXT) \
91 $(WIN32KOBJ)\smalloc_avl.$(OBJEXT) \
92 $(WIN32KOBJ)\avl.$(OBJEXT) \
93 $(WIN32KOBJ)\rmalloc_avl.$(OBJEXT) \
94 $(WIN32KOBJ)\new.$(OBJEXT) \
95 $(WIN32KOBJ)\stricmp.$(OBJEXT) \
96 $(WIN32KOBJ)\vprintf.$(OBJEXT)
97
98all: ELFDumper.exe $(TARGET).exe
99
100$(TARGET).exe: $(OBJS)
101 @echo linking $@
102 $(LD) $(LDFLAGS) $**
103 $(CP) $@ $(PDWIN32_BIN)
104
105ELFDumper.exe: ELFDumper.cpp ..\include\elf.h
106 $(CXX) $(CXXFLAGS) -Re -Gn- -Fa$(WIN32KLIST)\ELFDumper.asm \
107 -Fo$(WIN32KOBJ)\ELFDumper.$(OBJEXT) -Fe$@ ELFDumper.cpp
108
109
110##############################################################################
111# Dependencies.
112##############################################################################
113dep:
114 $(DEPEND) -obj$(OBJEXT) -o..\Object $(CINCLUDES) ..\misc\*.c* ..\include\*.h
115
116!ifndef NODEP
117!include .depend
118!endif
119
120##############################################################################
121# Cleanup
122##############################################################################
123clean:
124 @-$(RM) $(OBJS) $(TARGET).exe $(PE2LXLIST)\$(TARGET).map *.pch
125
Note: See TracBrowser for help on using the repository browser.