1 | # $Id: makefile,v 1.12 2000-03-06 23:33:48 bird Exp $
|
---|
2 |
|
---|
3 | #
|
---|
4 | # Odin32 API
|
---|
5 | #
|
---|
6 | # Top-level makefile for glu32
|
---|
7 | #
|
---|
8 |
|
---|
9 | # Directory macros.
|
---|
10 | PDWIN32_INCLUDE = ..\..\..\include
|
---|
11 | PDWIN32_LIB = ..\..\..\lib
|
---|
12 | PDWIN32_BIN = ..\..\..\$(OBJDIR)
|
---|
13 | PDWIN32_TOOLS = ..\..\..\tools\bin
|
---|
14 |
|
---|
15 | # Have extra clean rule.
|
---|
16 | CLEAN2 = 1
|
---|
17 |
|
---|
18 |
|
---|
19 | # Compiler, tools, and interference rules.
|
---|
20 | !include $(PDWIN32_INCLUDE)/pdwin32.mk
|
---|
21 |
|
---|
22 |
|
---|
23 | # Flag overloads and local macros.
|
---|
24 | CLEANEXTRAS = glu32rsrc.asm
|
---|
25 |
|
---|
26 | CFLAGS = $(CFLAGS) -I..\mesa\GL
|
---|
27 | CXXFLAGS = $(CXXFLAGS) -I..\mesa\GL
|
---|
28 |
|
---|
29 |
|
---|
30 |
|
---|
31 | # Object files. All objects should be prefixed with $(OBJDIR)!
|
---|
32 | OBJS = \
|
---|
33 | $(OBJDIR)\initterm.obj \
|
---|
34 | $(OBJDIR)\glu32rsrc.obj
|
---|
35 |
|
---|
36 |
|
---|
37 | # Target name - name of the library without extention and path.
|
---|
38 | TARGET = glu32
|
---|
39 |
|
---|
40 |
|
---|
41 | # All rule - build objs, target dll, copies dll to bin and makes libs.
|
---|
42 | all: $(OBJDIR) \
|
---|
43 | $(OBJDIR)\$(TARGET).dll \
|
---|
44 | $(PDWIN32_BIN)\$(TARGET).dll \
|
---|
45 | lib
|
---|
46 |
|
---|
47 |
|
---|
48 | # Lib rule - build importlibrary (and evt. other libs)
|
---|
49 | lib: $(TARGET).lib $(PDWIN32_LIB)\$(TARGET).lib
|
---|
50 |
|
---|
51 |
|
---|
52 | # Libs rule - Make (sub) libraries. (Not import libraries!)
|
---|
53 | libs:
|
---|
54 | cd util
|
---|
55 | $(MAKE_CMD) $@
|
---|
56 | cd ..\tess
|
---|
57 | $(MAKE_CMD) $@
|
---|
58 | cd ..\nurbs
|
---|
59 | $(MAKE_CMD) $@
|
---|
60 | cd ..
|
---|
61 |
|
---|
62 |
|
---|
63 | # Dll rule - builds the target dll.
|
---|
64 | $(OBJDIR)\$(TARGET).dll: $(OBJS) libs $(TARGET).def $(OBJDIR)\$(TARGET).lrf
|
---|
65 | $(LD2) $(LD2FLAGS) @$(OBJDIR)\$(TARGET).lrf
|
---|
66 |
|
---|
67 |
|
---|
68 | # Linker file - creates the parameter file passed on to the linker.
|
---|
69 | $(OBJDIR)\$(TARGET).lrf: makefile
|
---|
70 | @echo Creating file <<$@
|
---|
71 | /OUT:$(OBJDIR)\$(TARGET).dll
|
---|
72 | /MAP:$(OBJDIR)\$(TARGET).map
|
---|
73 | $(OBJS)
|
---|
74 | nurbs\interface\$(OBJDIR)\interface.lib
|
---|
75 | nurbs\internals\$(OBJDIR)\internals.lib
|
---|
76 | nurbs\nurbtess\$(OBJDIR)\nurbtess.lib
|
---|
77 | tess\$(OBJDIR)\tess.lib
|
---|
78 | util\$(OBJDIR)\util.lib
|
---|
79 | $(PDWIN32_LIB)\ODINCRT.LIB
|
---|
80 | $(PDWIN32_LIB)\KERNEL32.LIB
|
---|
81 | $(PDWIN32_LIB)\OPENGL32.LIB
|
---|
82 | $(RTLLIB_O)
|
---|
83 | OS2386.LIB
|
---|
84 | $(TARGET).def
|
---|
85 | <<keep
|
---|
86 |
|
---|
87 |
|
---|
88 | # Dep rule - makes depenencies for C, C++ and Asm files.
|
---|
89 | dep:
|
---|
90 | $(DEPEND) -I$(PDWIN32_INCLUDE);$(PDWIN32_INCLUDE)\win -I..\mesa\GL \
|
---|
91 | *.c *.cpp *.h *.asm *.inc $(PDWIN32_INCLUDE)\*.h
|
---|
92 | cd util
|
---|
93 | $(MAKE_CMD) $@
|
---|
94 | cd ..\tess
|
---|
95 | $(MAKE_CMD) $@
|
---|
96 | cd ..\nurbs
|
---|
97 | $(MAKE_CMD) $@
|
---|
98 | cd ..
|
---|
99 |
|
---|
100 |
|
---|
101 | # Extra Clean.
|
---|
102 | clean2:
|
---|
103 | cd util
|
---|
104 | $(MAKE_CMD) clean
|
---|
105 | cd ..\tess
|
---|
106 | $(MAKE_CMD) clean
|
---|
107 | cd ..\nurbs
|
---|
108 | $(MAKE_CMD) clean
|
---|
109 | cd ..
|
---|
110 |
|
---|
111 |
|
---|
112 | # Includes the common rules.
|
---|
113 | !include $(PDWIN32_INCLUDE)/pdwin32.post
|
---|
114 |
|
---|