blob: 9321732ef00f74fd0ad8903c1e9d094be804cb14 [file] [log] [blame]
# 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