# Makefile for Win32 !include <win32.mak> .SUFFIXES : .cc TOP = .. GLU_SRCS_CC = \ libnurbs\interface\bezierEval.cc \ libnurbs\interface\bezierPatch.cc \ libnurbs\interface\bezierPatchMesh.cc \ libnurbs\interface\glcurveval.cc \ libnurbs\interface\glinterface.cc \ libnurbs\interface\glrenderer.cc \ libnurbs\interface\glsurfeval.cc \ libnurbs\interface\incurveeval.cc \ libnurbs\interface\insurfeval.cc \ libnurbs\internals\arc.cc \ libnurbs\internals\arcsorter.cc \ libnurbs\internals\arctess.cc \ libnurbs\internals\backend.cc \ libnurbs\internals\basiccrveval.cc \ libnurbs\internals\basicsurfeval.cc \ libnurbs\internals\bin.cc \ libnurbs\internals\bufpool.cc \ libnurbs\internals\cachingeval.cc \ libnurbs\internals\ccw.cc \ libnurbs\internals\coveandtiler.cc \ libnurbs\internals\curve.cc \ libnurbs\internals\curvelist.cc \ libnurbs\internals\curvesub.cc \ libnurbs\internals\dataTransform.cc \ libnurbs\internals\displaylist.cc \ libnurbs\internals\flist.cc \ libnurbs\internals\flistsorter.cc \ libnurbs\internals\hull.cc \ libnurbs\internals\intersect.cc \ libnurbs\internals\knotvector.cc \ libnurbs\internals\mapdesc.cc \ libnurbs\internals\mapdescv.cc \ libnurbs\internals\maplist.cc \ libnurbs\internals\mesher.cc \ libnurbs\internals\monoTriangulationBackend.cc \ libnurbs\internals\monotonizer.cc \ libnurbs\internals\mycode.cc \ libnurbs\internals\nurbsinterfac.cc \ libnurbs\internals\nurbstess.cc \ libnurbs\internals\patch.cc \ libnurbs\internals\patchlist.cc \ libnurbs\internals\quilt.cc \ libnurbs\internals\reader.cc \ libnurbs\internals\renderhints.cc \ libnurbs\internals\slicer.cc \ libnurbs\internals\sorter.cc \ libnurbs\internals\splitarcs.cc \ libnurbs\internals\subdivider.cc \ libnurbs\internals\tobezier.cc \ libnurbs\internals\trimline.cc \ libnurbs\internals\trimregion.cc \ libnurbs\internals\trimvertpool.cc \ libnurbs\internals\uarray.cc \ libnurbs\internals\varray.cc \ libnurbs\nurbtess\directedLine.cc \ libnurbs\nurbtess\gridWrap.cc \ libnurbs\nurbtess\monoChain.cc \ libnurbs\nurbtess\monoPolyPart.cc \ libnurbs\nurbtess\monoTriangulation.cc \ libnurbs\nurbtess\partitionX.cc \ libnurbs\nurbtess\partitionY.cc \ libnurbs\nurbtess\polyDBG.cc \ libnurbs\nurbtess\polyUtil.cc \ libnurbs\nurbtess\primitiveStream.cc \ libnurbs\nurbtess\quicksort.cc \ libnurbs\nurbtess\rectBlock.cc \ libnurbs\nurbtess\sampleComp.cc \ libnurbs\nurbtess\sampleCompBot.cc \ libnurbs\nurbtess\sampleCompRight.cc \ libnurbs\nurbtess\sampleCompTop.cc \ libnurbs\nurbtess\sampleMonoPoly.cc \ libnurbs\nurbtess\sampledLine.cc \ libnurbs\nurbtess\searchTree.cc GLU_SRCS = \ libtess\dict.c \ libtess\geom.c \ libtess\memalloc.c \ libtess\mesh.c \ libtess\normal.c \ libtess\priorityq.c \ libtess\render.c \ libtess\sweep.c \ libtess\tess.c \ libtess\tessmono.c \ libutil\error.c \ libutil\glue.c \ libutil\mipmap.c \ libutil\project.c \ libutil\quad.c \ libutil\registry.c SRCS = $(GLU_SRCS) all : gludll !include "$(TOP)/mesawin32.mak" gludll : $(GLUDLL) CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -Iinclude -DBUILD_GL32 -DLIBRARYBUILD LFLAGS = $(dlllflags) $(lcommon) $(LFLAGS) LIBS = ../lib/$(MESALIB) winmm.lib $(guilibsdll) OBJS = $(GLU_SRCS_CC:.cc=.obj) $(GLU_SRCS:.c=.obj) NURBSINC = -Ilibnurbs\interface -Ilibnurbs\internals -Ilibnurbs\nurbtess CFLAGS = $(CFLAGS) $(NURBSINC) $(GLUDLL): $(OBJS) glu.def $(link) $(LFLAGS) -out:$(GLUDLL) -def:glu.def $(OBJS) $(LIBS) @echo "copying Mesa GLU dynamic link library to library directory..." -copy $(GLUDLL) $(TOP)\lib @echo "copying Mesa GLU import library to library directory..." -copy $(GLULIB) $(TOP)\lib install : $(GLUDLL) $(GLULIB) @echo "copying Mesa GLU dynamic link library to system directory..." -copy $(GLUDLL) $(DLLINSTALL) @echo "copying Mesa GLU header files to include directory..." -copy ..\..\include\GL\glu.h $(INCLUDEINSTALL) @echo "copying Mesa GLU import library to system library directory..." -copy $(GLULIB) $(LIBINSTALL) clean :: @del /f libtess\*.obj libutil\*.obj @del /f libnurbs\interface\*.obj libnurbs\internals\*.obj @del /f libnurbs\nurbtess\*.obj # override default inference rule with one that writes the object to # the same subdir as the c file. .c.obj : $(cc) $(CFLAGS) -I. $< /Fo$*.obj # /TP is needed for C++ files because MS compiler # does not recognize .cc as a C++ file. .cc.obj : $(cc) $(CFLAGS) -I. $< /TP /Fo$*.obj