| 1 | # $Id: makefile,v 1.7 2000-05-23 20:40:40 jeroen Exp $ | 
|---|
| 2 |  | 
|---|
| 3 | # | 
|---|
| 4 | # Odin32 API | 
|---|
| 5 | # | 
|---|
| 6 | # Makefile for Mesa OpenGL | 
|---|
| 7 | # | 
|---|
| 8 |  | 
|---|
| 9 | # Directory macros. | 
|---|
| 10 | PDWIN32_INCLUDE = ..\..\..\include | 
|---|
| 11 | PDWIN32_LIB     = ..\..\..\lib | 
|---|
| 12 | PDWIN32_BIN     = ..\..\..\$(OBJDIR) | 
|---|
| 13 | PDWIN32_TOOLS   = ..\..\..\tools\bin | 
|---|
| 14 |  | 
|---|
| 15 |  | 
|---|
| 16 | # Compiler, tools, and interference rules. | 
|---|
| 17 | !include $(PDWIN32_INCLUDE)/pdwin32.mk | 
|---|
| 18 |  | 
|---|
| 19 | # Flag overloads and local macros. | 
|---|
| 20 | CLEANEXTRAS = lz32rsrc.asm | 
|---|
| 21 |  | 
|---|
| 22 |  | 
|---|
| 23 | MESADEFS = -DNO_PARALLEL -DNO_STEREO -DGL_MESA_window_pos -DOS2_THREADS \ | 
|---|
| 24 | -DDIVE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM_NOT \ | 
|---|
| 25 | -DFAST_MATH -Tdp | 
|---|
| 26 | CFLAGS   = -I. -IGL $(CFLAGS_WIN32APP)   -I..\glut $(MESADEFS) /Wcnd- | 
|---|
| 27 | CXXFLAGS = -I. -IGL $(CXXFLAGS_WIN32APP) -I..\glut $(MESADEFS) /Wcnd- | 
|---|
| 28 |  | 
|---|
| 29 |  | 
|---|
| 30 | # Object files. All objects should be prefixed with $(OBJDIR)! | 
|---|
| 31 | OBJS = \ | 
|---|
| 32 | $(OBJDIR)\wgl.obj \ | 
|---|
| 33 | $(OBJDIR)\accum.obj \ | 
|---|
| 34 | $(OBJDIR)\alpha.obj \ | 
|---|
| 35 | $(OBJDIR)\alphabuf.obj \ | 
|---|
| 36 | $(OBJDIR)\dispatch.obj \ | 
|---|
| 37 | $(OBJDIR)\attrib.obj \ | 
|---|
| 38 | $(OBJDIR)\bbox.obj \ | 
|---|
| 39 | $(OBJDIR)\bitmap.obj \ | 
|---|
| 40 | $(OBJDIR)\blend.obj \ | 
|---|
| 41 | $(OBJDIR)\clip.obj \ | 
|---|
| 42 | $(OBJDIR)\colortab.obj \ | 
|---|
| 43 | $(OBJDIR)\config.obj \ | 
|---|
| 44 | $(OBJDIR)\context.obj \ | 
|---|
| 45 | $(OBJDIR)\copypix.obj \ | 
|---|
| 46 | $(OBJDIR)\cva.obj \ | 
|---|
| 47 | $(OBJDIR)\depth.obj \ | 
|---|
| 48 | $(OBJDIR)\dlist.obj \ | 
|---|
| 49 | $(OBJDIR)\drawpix.obj \ | 
|---|
| 50 | $(OBJDIR)\enable.obj \ | 
|---|
| 51 | $(OBJDIR)\enums.obj \ | 
|---|
| 52 | $(OBJDIR)\eval.obj \ | 
|---|
| 53 | $(OBJDIR)\extensions.obj \ | 
|---|
| 54 | $(OBJDIR)\feedback.obj \ | 
|---|
| 55 | $(OBJDIR)\fog.obj \ | 
|---|
| 56 | $(OBJDIR)\get.obj \ | 
|---|
| 57 | $(OBJDIR)\hash.obj \ | 
|---|
| 58 | $(OBJDIR)\image.obj \ | 
|---|
| 59 | $(OBJDIR)\light.obj \ | 
|---|
| 60 | $(OBJDIR)\lines.obj \ | 
|---|
| 61 | $(OBJDIR)\logic.obj \ | 
|---|
| 62 | $(OBJDIR)\masking.obj \ | 
|---|
| 63 | $(OBJDIR)\matrix.obj \ | 
|---|
| 64 | $(OBJDIR)\mmath.obj \ | 
|---|
| 65 | $(OBJDIR)\pb.obj \ | 
|---|
| 66 | $(OBJDIR)\pixel.obj \ | 
|---|
| 67 | $(OBJDIR)\pipeline.obj \ | 
|---|
| 68 | $(OBJDIR)\points.obj \ | 
|---|
| 69 | $(OBJDIR)\polygon.obj \ | 
|---|
| 70 | $(OBJDIR)\quads.obj \ | 
|---|
| 71 | $(OBJDIR)\rastpos.obj \ | 
|---|
| 72 | $(OBJDIR)\readpix.obj \ | 
|---|
| 73 | $(OBJDIR)\rect.obj \ | 
|---|
| 74 | $(OBJDIR)\scissor.obj \ | 
|---|
| 75 | $(OBJDIR)\shade.obj \ | 
|---|
| 76 | $(OBJDIR)\span.obj \ | 
|---|
| 77 | $(OBJDIR)\stages.obj \ | 
|---|
| 78 | $(OBJDIR)\stencil.obj \ | 
|---|
| 79 | $(OBJDIR)\teximage.obj \ | 
|---|
| 80 | $(OBJDIR)\texobj.obj \ | 
|---|
| 81 | $(OBJDIR)\texstate.obj \ | 
|---|
| 82 | $(OBJDIR)\translate.obj \ | 
|---|
| 83 | $(OBJDIR)\triangle.obj \ | 
|---|
| 84 | $(OBJDIR)\varray.obj \ | 
|---|
| 85 | $(OBJDIR)\vb.obj \ | 
|---|
| 86 | $(OBJDIR)\vbcull.obj \ | 
|---|
| 87 | $(OBJDIR)\vbfill.obj \ | 
|---|
| 88 | $(OBJDIR)\vbindirect.obj \ | 
|---|
| 89 | $(OBJDIR)\vbrender.obj \ | 
|---|
| 90 | $(OBJDIR)\vbxform.obj \ | 
|---|
| 91 | $(OBJDIR)\vector.obj \ | 
|---|
| 92 | $(OBJDIR)\vertices.obj \ | 
|---|
| 93 | $(OBJDIR)\winpos.obj \ | 
|---|
| 94 | $(OBJDIR)\xform.obj \ | 
|---|
| 95 | $(OBJDIR)\zoom.obj \ | 
|---|
| 96 | $(OBJDIR)\x86.obj \ | 
|---|
| 97 | $(OBJDIR)\common_x86.obj \ | 
|---|
| 98 | $(OBJDIR)\initterm.obj \ | 
|---|
| 99 | $(OBJDIR)\texture.obj \ | 
|---|
| 100 | $(OBJDIR)\wmesa.obj \ | 
|---|
| 101 | $(OBJDIR)\x86a.obj \ | 
|---|
| 102 | $(OBJDIR)\vertex.obj \ | 
|---|
| 103 | $(OBJDIR)\mmx_blend.obj \ | 
|---|
| 104 | $(OBJDIR)\osmesa.obj \ | 
|---|
| 105 | $(OBJDIR)\mesadive.obj \ | 
|---|
| 106 | $(OBJDIR)\internal.obj \ | 
|---|
| 107 | $(OBJDIR)\mesarsrc.obj \ | 
|---|
| 108 | $(OBJDIR)\glapi.obj \ | 
|---|
| 109 | $(OBJDIR)\glapinoop.obj \ | 
|---|
| 110 | $(OBJDIR)\imaging.obj \ | 
|---|
| 111 | $(OBJDIR)\state.obj \ | 
|---|
| 112 | $(OBJDIR)\buffers.obj \ | 
|---|
| 113 | $(OBJDIR)\glthread.obj \ | 
|---|
| 114 | $(OBJDIR)\hint.obj \ | 
|---|
| 115 | $(OBJDIR)\mem.obj \ | 
|---|
| 116 | $(OBJDIR)\aatriangle.obj \ | 
|---|
| 117 | $(OBJDIR)\os2thread.obj | 
|---|
| 118 |  | 
|---|
| 119 |  | 
|---|
| 120 | # Target name - name of the dll without extention and path. | 
|---|
| 121 | TARGET = opengl32 | 
|---|
| 122 |  | 
|---|
| 123 |  | 
|---|
| 124 | # All rule - build objs, target dll, copies dll to bin and makes libs. | 
|---|
| 125 | all:    $(OBJDIR) \ | 
|---|
| 126 | $(OBJDIR)\$(TARGET).dll \ | 
|---|
| 127 | $(PDWIN32_BIN)\$(TARGET).dll \ | 
|---|
| 128 | lib | 
|---|
| 129 |  | 
|---|
| 130 |  | 
|---|
| 131 | # Lib rule - build importlibrary (and evt. other libs) | 
|---|
| 132 | lib: $(TARGET).lib $(PDWIN32_LIB)\$(TARGET).lib | 
|---|
| 133 |  | 
|---|
| 134 |  | 
|---|
| 135 | # Dll rule - builds the target dll. | 
|---|
| 136 | $(OBJDIR)\$(TARGET).dll: $(OBJS) $(TARGET).def $(OBJDIR)\$(TARGET).lrf | 
|---|
| 137 | -4 $(LD2) $(LD2FLAGS) @$(OBJDIR)\$(TARGET).lrf | 
|---|
| 138 |  | 
|---|
| 139 |  | 
|---|
| 140 | # Linker file - creates the parameter file passed on to the linker. | 
|---|
| 141 | $(OBJDIR)\$(TARGET).lrf: makefile | 
|---|
| 142 | @echo Creating file <<$@ | 
|---|
| 143 | /OUT:$(OBJDIR)\$(TARGET).dll | 
|---|
| 144 | /MAP:$(OBJDIR)\$(TARGET).map | 
|---|
| 145 | $(OBJS) | 
|---|
| 146 | $(PDWIN32_LIB)\ODINCRT.LIB | 
|---|
| 147 | $(PDWIN32_LIB)\KERNEL32.LIB | 
|---|
| 148 | $(PDWIN32_LIB)\GDI32.LIB | 
|---|
| 149 | $(PDWIN32_LIB)\USER32.LIB | 
|---|
| 150 | $(RTLLIB_O) | 
|---|
| 151 | OS2386.LIB | 
|---|
| 152 | MMPM2.LIB | 
|---|
| 153 | $(TARGET).def | 
|---|
| 154 | <<keep | 
|---|
| 155 |  | 
|---|
| 156 |  | 
|---|
| 157 |  | 
|---|
| 158 | # Dep rule - makes depenencies for C, C++ and Asm files. | 
|---|
| 159 | dep: | 
|---|
| 160 | $(DEPEND) -I$(PDWIN32_INCLUDE);$(PDWIN32_INCLUDE)\win -IGL \ | 
|---|
| 161 | *.c *.cpp *.h *.asm *.inc $(PDWIN32_INCLUDE)\*.h | 
|---|
| 162 |  | 
|---|
| 163 |  | 
|---|
| 164 | # Includes the common rules. | 
|---|
| 165 | !include $(PDWIN32_INCLUDE)/pdwin32.post | 
|---|
| 166 |  | 
|---|