rendered paste body###############################################################
# If your make doesn't use .cpp for C++ extensions,
# then uncomment the suffixes line.
.SUFFIXES : .c .cpp
RM = /bin/rm
# If you don't mind the risk of using the -f option and your rm
# asks too many questions, then uncomment the next line.
# RM = /bin/rm -f
AR = ar qvl
# If your system doesn't use ranlib, uncomment the "echo" define.
RANLIB = ranlib
# RANLIB = echo
###############################################################
# Gnu tools
#
# (Tested with gcc 4.1.2 on SUSE Linux)
#
# In order to get full wide character (UNICODE) support, you
# need to define _GNU_SOURCE
# C compiler and flags
CC = gcc
CFLAGS = -g -Wall -D_GNU_SOURCE -DMY_ZCALLOC -DZ_PREFIX -I.
#CFLAGS = -O -Wall -D_GNU_SOURCE -DMY_ZCALLOC -DZ_PREFIX -I.
# C++ compiler and flags
CCC = g++
CCFLAGS = -g -Wall -D_GNU_SOURCE -I.
#CCFLAGS = -O -Wall -D_GNU_SOURCE -I.
LINK = $(CCC)
LINKFLAGS =
###############################################################
# Irix 6.5 compiler (uncomment the lines in this block)
#
#
#OPTIMIZER = -g
#OPTIMIZER = -O3
#ABIISA = -n32 -mips3
#ABIISA = -64 -mips3
#IRIXDEF = -D_WCHAR_T_DEFINED -DON_COMPILER_IRIX -D_GNU_SOURCE
#IRIXFLAGS = -woff all -no_prelink -ptused
#CC = cc
#CFLAGS = $(OPTIMIZER) $(ABIISA) $(IRIXDEF) $(IRIXFLAGS) -DMY_ZCALLOC -DZ_PREFIX -I.
#CCC = CC
#CCFLAGS = $(OPTIMIZER) $(ABIISA) $(IRIXDEF) $(IRIXFLAGS) -I.
#LINK = $(CCC)
#LINKFLAGS =
# uncomment for 64 bit linking
#LINKFLAGS = $CCFLAGS
#
###############################################################
###############################################################
.cpp.o :
$(CCC) $(CCFLAGS) -c $*.cpp -o $*.o
# If your make doesn't have a rule for .c to .o, uncomment the
# next two lines.
#.c.o :
# $(CC) $(CFLAGS) -c $*.c -o $*.o
###############################################################
OPENNURBS_LIB_NAME = openNURBS
OPENNURBS_LIB_FILE = lib$(OPENNURBS_LIB_NAME).a
ON_INC= opennurbs.h \
opennurbs_3dm.h \
opennurbs_3dm_attributes.h \
opennurbs_3dm_properties.h \
opennurbs_3dm_settings.h \
opennurbs_annotation.h \
opennurbs_annotation2.h \
opennurbs_arc.h \
opennurbs_arccurve.h \
opennurbs_archive.h \
opennurbs_array.h \
opennurbs_array_defs.h \
opennurbs_base32.h \
opennurbs_base64.h \
opennurbs_beam.h \
opennurbs_bezier.h \
opennurbs_bitmap.h \
opennurbs_bounding_box.h \
opennurbs_box.h \
opennurbs_brep.h \
opennurbs_circle.h \
opennurbs_color.h \
opennurbs_cone.h \
opennurbs_crashtest.h \
opennurbs_crc.h \
opennurbs_curve.h \
opennurbs_curveonsurface.h \
opennurbs_curveproxy.h \
opennurbs_cylinder.h \
opennurbs_defines.h \
opennurbs_detail.h \
opennurbs_dimstyle.h \
opennurbs_ellipse.h \
opennurbs_error.h \
opennurbs_evaluate_nurbs.h \
opennurbs_extensions.h \
opennurbs_font.h \
opennurbs_fpoint.h \
opennurbs_geometry.h \
opennurbs_gl.h \
opennurbs_group.h \
opennurbs_hatch.h \
opennurbs_instance.h \
opennurbs_intersect.h \
opennurbs_knot.h \
opennurbs_layer.h \
opennurbs_light.h \
opennurbs_line.h \
opennurbs_linecurve.h \
opennurbs_linestyle.h \
opennurbs_linetype.h \
opennurbs_lookup.h \
opennurbs_mapchan.h \
opennurbs_massprop.h \
opennurbs_material.h \
opennurbs_math.h \
opennurbs_matrix.h \
opennurbs_memory.h \
opennurbs_mesh.h \
opennurbs_nurbscurve.h \
opennurbs_nurbssurface.h \
opennurbs_object.h \
opennurbs_object_history.h \
opennurbs_objref.h \
opennurbs_offsetsurface.h \
opennurbs_optimize.h \
opennurbs_plane.h \
opennurbs_planesurface.h \
opennurbs_pluginlist.h \
opennurbs_point.h \
opennurbs_pointcloud.h \
opennurbs_pointgeometry.h \
opennurbs_pointgrid.h \
opennurbs_polycurve.h \
opennurbs_polyedgecurve.h \
opennurbs_polyline.h \
opennurbs_polylinecurve.h \
opennurbs_quaternion.h \
opennurbs_rand.h \
opennurbs_rendering.h \
opennurbs_revsurface.h \
opennurbs_rtree.h \
opennurbs_sphere.h \
opennurbs_string.h \
opennurbs_sumsurface.h \
opennurbs_surface.h \
opennurbs_surfaceproxy.h \
opennurbs_system.h \
opennurbs_textlog.h \
opennurbs_texture.h \
opennurbs_texture_mapping.h \
opennurbs_torus.h \
opennurbs_userdata.h \
opennurbs_uuid.h \
opennurbs_version.h \
opennurbs_viewport.h \
opennurbs_workspace.h \
opennurbs_x.h \
opennurbs_xform.h \
opennurbs_zlib.h
ON_SRC= opennurbs_3dm_attributes.cpp \
opennurbs_3dm_properties.cpp \
opennurbs_3dm_settings.cpp \
opennurbs_annotation.cpp \
opennurbs_annotation2.cpp \
opennurbs_arc.cpp \
opennurbs_arccurve.cpp \
opennurbs_archive.cpp \
opennurbs_array.cpp \
opennurbs_base32.cpp \
opennurbs_base64.cpp \
opennurbs_basic.cpp \
opennurbs_beam.cpp \
opennurbs_bezier.cpp \
opennurbs_beziervolume.cpp \
opennurbs_bitmap.cpp \
opennurbs_bounding_box.cpp \
opennurbs_box.cpp \
opennurbs_brep.cpp \
opennurbs_brep_changesrf.cpp \
opennurbs_brep_extrude.cpp \
opennurbs_brep_io.cpp \
opennurbs_brep_isvalid.cpp \
opennurbs_brep_kinky.cpp \
opennurbs_brep_region.cpp \
opennurbs_brep_tools.cpp \
opennurbs_brep_v2valid.cpp \
opennurbs_circle.cpp \
opennurbs_color.cpp \
opennurbs_cone.cpp \
opennurbs_crc.cpp \
opennurbs_curve.cpp \
opennurbs_curveonsurface.cpp \
opennurbs_curveproxy.cpp \
opennurbs_cylinder.cpp \
opennurbs_defines.cpp \
opennurbs_detail.cpp \
opennurbs_dimstyle.cpp \
opennurbs_ellipse.cpp \
opennurbs_error.cpp \
opennurbs_error_message.cpp \
opennurbs_evaluate_nurbs.cpp \
opennurbs_extensions.cpp \
opennurbs_font.cpp \
opennurbs_geometry.cpp \
opennurbs_gl.cpp \
opennurbs_group.cpp \
opennurbs_hatch.cpp \
opennurbs_instance.cpp \
opennurbs_intersect.cpp \
opennurbs_knot.cpp \
opennurbs_layer.cpp \
opennurbs_light.cpp \
opennurbs_line.cpp \
opennurbs_linecurve.cpp \
opennurbs_linetype.cpp \
opennurbs_lookup.cpp \
opennurbs_massprop.cpp \
opennurbs_material.cpp \
opennurbs_math.cpp \
opennurbs_matrix.cpp \
opennurbs_memory.c \
opennurbs_memory_new.cpp \
opennurbs_memory_util.c \
opennurbs_mesh.cpp \
opennurbs_mesh_ngon.cpp \
opennurbs_mesh_tools.cpp \
opennurbs_morph.cpp \
opennurbs_nurbscurve.cpp \
opennurbs_nurbssurface.cpp \
opennurbs_nurbsvolume.cpp \
opennurbs_object.cpp \
opennurbs_object_history.cpp \
opennurbs_objref.cpp \
opennurbs_offsetsurface.cpp \
opennurbs_optimize.cpp \
opennurbs_plane.cpp \
opennurbs_planesurface.cpp \
opennurbs_pluginlist.cpp \
opennurbs_point.cpp \
opennurbs_pointcloud.cpp \
opennurbs_pointgeometry.cpp \
opennurbs_pointgrid.cpp \
opennurbs_polycurve.cpp \
opennurbs_polyedgecurve.cpp \
opennurbs_polyline.cpp \
opennurbs_polylinecurve.cpp \
opennurbs_quaternion.cpp \
opennurbs_rand.cpp \
opennurbs_revsurface.cpp \
opennurbs_rtree.cpp \
opennurbs_sort.cpp \
opennurbs_sphere.cpp \
opennurbs_string.cpp \
opennurbs_sum.cpp \
opennurbs_sumsurface.cpp \
opennurbs_surface.cpp \
opennurbs_surfaceproxy.cpp \
opennurbs_textlog.cpp \
opennurbs_torus.cpp \
opennurbs_userdata.cpp \
opennurbs_uuid.cpp \
opennurbs_viewport.cpp \
opennurbs_workspace.cpp \
opennurbs_wstring.cpp \
opennurbs_x.cpp \
opennurbs_xform.cpp \
opennurbs_zlib.cpp \
opennurbs_zlib_memory.cpp
ON_OBJ= opennurbs_3dm_attributes.o \
opennurbs_3dm_properties.o \
opennurbs_3dm_settings.o \
opennurbs_annotation.o \
opennurbs_annotation2.o \
opennurbs_arc.o \
opennurbs_arccurve.o \
opennurbs_archive.o \
opennurbs_array.o \
opennurbs_base32.o \
opennurbs_base64.o \
opennurbs_basic.o \
opennurbs_beam.o \
opennurbs_bezier.o \
opennurbs_beziervolume.o \
opennurbs_bitmap.o \
opennurbs_bounding_box.o \
opennurbs_box.o \
opennurbs_brep.o \
opennurbs_brep_changesrf.o \
opennurbs_brep_extrude.o \
opennurbs_brep_io.o \
opennurbs_brep_isvalid.o \
opennurbs_brep_kinky.o \
opennurbs_brep_region.o \
opennurbs_brep_tools.o \
opennurbs_brep_v2valid.o \
opennurbs_circle.o \
opennurbs_color.o \
opennurbs_cone.o \
opennurbs_crc.o \
opennurbs_curve.o \
opennurbs_curveonsurface.o \
opennurbs_curveproxy.o \
opennurbs_cylinder.o \
opennurbs_defines.o \
opennurbs_detail.o \
opennurbs_dimstyle.o \
opennurbs_ellipse.o \
opennurbs_error.o \
opennurbs_error_message.o \
opennurbs_evaluate_nurbs.o \
opennurbs_extensions.o \
opennurbs_font.o \
opennurbs_geometry.o \
opennurbs_gl.o \
opennurbs_group.o \
opennurbs_hatch.o \
opennurbs_instance.o \
opennurbs_intersect.o \
opennurbs_knot.o \
opennurbs_layer.o \
opennurbs_light.o \
opennurbs_line.o \
opennurbs_linecurve.o \
opennurbs_linetype.o \
opennurbs_lookup.o \
opennurbs_massprop.o \
opennurbs_material.o \
opennurbs_math.o \
opennurbs_matrix.o \
opennurbs_memory.o \
opennurbs_memory_new.o \
opennurbs_memory_util.o \
opennurbs_mesh.o \
opennurbs_mesh_ngon.o \
opennurbs_mesh_tools.o \
opennurbs_morph.o \
opennurbs_nurbscurve.o \
opennurbs_nurbssurface.o \
opennurbs_nurbsvolume.o \
opennurbs_object.o \
opennurbs_object_history.o \
opennurbs_objref.o \
opennurbs_offsetsurface.o \
opennurbs_optimize.o \
opennurbs_plane.o \
opennurbs_planesurface.o \
opennurbs_pluginlist.o \
opennurbs_point.o \
opennurbs_pointcloud.o \
opennurbs_pointgeometry.o \
opennurbs_pointgrid.o \
opennurbs_polycurve.o \
opennurbs_polyedgecurve.o \
opennurbs_polyline.o \
opennurbs_polylinecurve.o \
opennurbs_quaternion.o \
opennurbs_rand.o \
opennurbs_revsurface.o \
opennurbs_rtree.o \
opennurbs_sort.o \
opennurbs_sphere.o \
opennurbs_string.o \
opennurbs_sum.o \
opennurbs_sumsurface.o \
opennurbs_surface.o \
opennurbs_surfaceproxy.o \
opennurbs_textlog.o \
opennurbs_torus.o \
opennurbs_userdata.o \
opennurbs_uuid.o \
opennurbs_viewport.o \
opennurbs_workspace.o \
opennurbs_wstring.o \
opennurbs_x.o \
opennurbs_xform.o \
opennurbs_zlib.o \
opennurbs_zlib_memory.o
ZLIB_INC= zlib/crc32.h \
zlib/deflate.h \
zlib/inffast.h \
zlib/inffixed.h \
zlib/inflate.h \
zlib/inftrees.h \
zlib/trees.h \
zlib/zconf.h \
zlib/zlib.h \
zlib/zutil.h \
ZLIB_SRC= zlib/adler32.c \
zlib/compress.c \
zlib/crc32.c \
zlib/deflate.c \
zlib/infback.c \
zlib/inffast.c \
zlib/inflate.c \
zlib/inftrees.c \
zlib/trees.c \
zlib/uncompr.c \
zlib/zutil.c
ZLIB_OBJ= zlib/adler32.o \
zlib/compress.o \
zlib/crc32.o \
zlib/deflate.o \
zlib/infback.o \
zlib/inffast.o \
zlib/inflate.o \
zlib/inftrees.o \
zlib/trees.o \
zlib/uncompr.o \
zlib/zutil.o
EXAMPLE_OBJ = example_read/example_read.o \
example_write/example_write.o \
example_dump/example_dump.o \
example_brep/example_brep.o \
example_userdata/example_ud.o \
example_userdata/example_userdata.o \
example_roundtrip/example_roundtrip.o
EXAMPLES = example_read/example_read \
example_write/example_write \
example_dump/example_dump \
example_brep/example_brep \
example_roundtrip/example_roundtrip \
example_userdata/example_userdata
EXAMPLE_GL_OBJ = example_gl/example_gl.o \
opennurbs_gl.o
EXAMPLE_GL = example_gl/example_gl
all : $(OPENNURBS_LIB_FILE) $(EXAMPLES)
gl : $(OPENNURBS_LIB_FILE) $(EXAMPLE_GL)
opennurbs_gl.o : opennurbs_gl.h $(ON_INC)
example_userdata/example_ud.o : example_userdata/example_ud.h $(ON_INC)
$(ON_OBJ) : $(ON_INC)
$(ZLIB_OBJ) : $(ZLIB_INC)
$(OPENNURBS_LIB_FILE) : $(ON_OBJ) $(ZLIB_OBJ)
-$(RM) $@
$(AR) $@ $(ON_OBJ) $(ZLIB_OBJ)
$(RANLIB) $@
example_read/example_read : example_read/example_read.o example_userdata/example_ud.o $(OPENNURBS_LIB_FILE)
$(LINK) $(LINKFLAGS) example_read/example_read.o example_userdata/example_ud.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
example_write/example_write : example_write/example_write.o example_userdata/example_ud.o $(OPENNURBS_LIB_FILE)
$(LINK) $(LINKFLAGS) example_write/example_write.o example_userdata/example_ud.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
example_brep/example_brep : example_brep/example_brep.o $(OPENNURBS_LIB_FILE)
$(LINK) $(LINKFLAGS) example_brep/example_brep.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
example_dump/example_dump : example_dump/example_dump.o
$(LINK) $(LINKFLAGS) example_dump/example_dump.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
example_userdata/example_userdata : example_userdata/example_userdata.o $(OPENNURBS_LIB_FILE)
$(LINK) $(LINKFLAGS) example_userdata/example_userdata.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
example_roundtrip/example_roundtrip : example_roundtrip/example_roundtrip.o $(OPENNURBS_LIB_FILE)
$(LINK) $(LINKFLAGS) example_roundtrip/example_roundtrip.o -L. -l$(OPENNURBS_LIB_NAME) -lm -o $@
#note: used to have -lglaux on LINK_GL .. changed 2010-08-11-0359 bryan
LINK_GL = -lGLU -lGL -lglut
LINK_XWIN = -lXmu -lXi -lXext -lX11
$(EXAMPLE_GL) : example_gl/example_gl.o ./opennurbs_gl.o $(OPENNURBS_LIB_FILE)
$(LINK) -L/usr/lib/ $(LINKFLAGS) example_gl/example_gl.o ./opennurbs_gl.o -L. -l$(OPENNURBS_LIB_NAME) $(LINK_GL) $(LINK_XWIN) -lm -o $@
clean :
-$(RM) $(OPENNURBS_LIB_FILE)
-$(RM) $(ON_OBJ)
-$(RM) $(ZLIB_OBJ)
-$(RM) $(EXAMPLE_OBJ)
-$(RM) $(EXAMPLE_GL_OBJ)
-$(RM) $(EXAMPLES)
-$(RM) $(EXAMPLE_GL)