# This Makefile is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. CC = @CC@ CXX = @CXX@ CXXCPP = @CXXCPP@ YACC = @YACC@ LEX = @LEX@ AWK = @AWK@ # WARNINGS = -Wall -Wwrite-strings # WARNINGS = -woff 3303 # LFLAGS = -woff 1167 -woff 1110 -woff 3322 CFLAGS = @CFLAGS@ $(WARNINGS) -I. -Iswt/include @CPPFLAGS@ CXXFLAGS = @CXXFLAGS@ $(WARNINGS) -I. -Iswt/include @CPPFLAGS@ LIBS = @STATIC@ -Lswt/lib -lswt -LSDLjoystick @SDL_JOYSTICK_LIBS@ @LIBS@ NEBULA = @NEBULA@ .SUFFIXES: .cpp .cpp.o: $(CXX) $(CXXFLAGS) -c $< CLASSES = \ AboutDialog.o \ CommandList.o \ ElevationGridDialog.o \ EventIn.o \ EventOut.o \ ExposedField.o \ Field.o \ FieldCommand.o \ MFieldCommand.o \ Face.o \ FieldValue.o \ Image.o \ Interpolator.o \ Matrix.o \ MoveCommand.o \ Scene.o \ Node.o \ Path.o \ Proto.o \ RouteCommand.o \ SFBool.o \ SFBoolItem.o \ SFColor.o \ SFColorItem.o \ SFFloat.o \ SFFloatItem.o \ SFImage.o \ SFImageItem.o \ SFInt32.o \ SFInt32Item.o \ SFNode.o \ SFNodeItem.o \ SFRotation.o \ SFRotationItem.o \ SFString.o \ SFStringItem.o \ SFTime.o \ SFTimeItem.o \ SFVec2f.o \ SFVec2fItem.o \ SFVec3f.o \ SFVec3fItem.o \ MyString.o \ UnRouteCommand.o \ Mesh.o \ MFColor.o \ MFColorItem.o \ MFInt32.o \ MFInt32Item.o \ MFFloat.o \ MFFloatItem.o \ MFNode.o \ MFNodeItem.o \ MFRotation.o \ MFRotationItem.o \ MFString.o \ MFStringItem.o \ MFTime.o \ MFTimeItem.o \ MFVec2f.o \ MFVec2fItem.o \ MFVec3f.o \ MFVec3fItem.o \ NodeAnchor.o \ NodeAppearance.o \ NodeAudioClip.o \ NodeBackground.o \ NodeBillboard.o \ NodeBox.o \ NodeCollision.o \ NodeColor.o \ NodeColorInterpolator.o \ NodeCone.o \ NodeContour2D.o \ NodeCoordinate.o \ NodeCoordinateDeformer.o \ NodeCoordinateInterpolator.o \ NodeCylinder.o \ NodeCylinderSensor.o \ NodeDirectionalLight.o \ NodeElevationGrid.o \ NodeExtrusion.o \ NodeFog.o \ NodeFontStyle.o \ NodeGroup.o \ NodeImageTexture.o \ NodeIndexedFaceSet.o \ NodeIndexedLineSet.o \ NodeInline.o \ NodeInlineLoadControl.o \ NodeList.o \ NodeLoadSensor.o \ NodeLOD.o \ NodeMaterial.o \ NodeMovieTexture.o \ NodeNavigationInfo.o \ NodeNormal.o \ NodeNormalInterpolator.o \ NodeNurbsCurve.o \ NodeNurbsCurve2D.o \ NodeNurbsGroup.o \ NodeNurbsPositionInterpolator.o \ NodeNurbsSurface.o \ NodeNurbsTextureSurface.o \ NodeOrientationInterpolator.o \ NodePixelTexture.o \ NodePlaneSensor.o \ NodePointLight.o \ NodePointSet.o \ NodePolyline2D.o \ NodePositionInterpolator.o \ NodeProximitySensor.o \ NodeScalarInterpolator.o \ NodeScript.o \ NodeShape.o \ NodeSound.o \ NodeSphere.o \ NodeSphereSensor.o \ NodeSpotLight.o \ NodeSwitch.o \ NodeText.o \ NodeTextureCoordinate.o \ NodeTextureTransform.o \ NodeTimeSensor.o \ NodeTouchSensor.o \ NodeTransform.o \ NodeTrimmedSurface.o \ NodeViewpoint.o \ NodeVisibilitySensor.o \ NodeWorldInfo.o \ NurbsCurveDialog.o \ NurbsPlaneDialog.o \ SelectionCommand.o \ Quaternion.o \ RenderState.o \ SceneTreeView.o \ SceneGraphView.o \ Scene3DView.o \ SceneView.o \ Dialog.o \ PreferencesDialog.o \ EcmaScriptSettingsDialog.o \ PreviewSettingsDialog.o \ UploadSettingsDialog.o \ HelpSettingsDialog.o \ TexteditSettingsDialog.o \ StereoViewSettingsDialog.o \ DuneApp.o \ FieldView.o \ FieldViewItem.o \ Util.o \ URL.o \ PanedWindow.o \ StatusBar.o \ ChannelView.o \ ToolbarWindow.o \ EulerAngles.o \ xerrorhandler.o \ x3dtranslators.o \ InputDevice.o \ TransformMode.o \ ColorCircle.o \ Aflock.o \ ScriptDialog.o \ ScriptEdit.o \ Types.o \ Commandline.o \ PreferencesApp.o \ EcmaScriptApp.o \ StereoViewApp.o \ InputDeviceApp.o \ DefDialog.o \ Box2NurbsDialog.o \ Cone2NurbsDialog.o \ Cylinder2NurbsDialog.o \ Sphere2NurbsDialog.o \ NurbsArc.o\ NurbsCurveDegreeElevate.o \ NurbsSurfaceDegreeElevate.o \ NurbsMakeRevolvedSurface.o \ NurbsCurve2NurbsSurfDialog.o \ AnimationDialog.o \ URLDialog.o \ NodeSuperEllipsoid.o \ NodeSuperShape.o \ NodeSuperExtrusion.o \ NodeComment.o \ MeshBasedNode.o \ OutputApp.o \ OutputSettingsDialog.o \ ArrayDialog.o \ OneFloatDialog.o \ MainWindow.o \ illegal2vrml.o \ parser.o \ lexer.o $(NEBULA) OBJS1 = \ gif.o \ jpegLoad.o \ pngLoad.o \ resource.o \ mysnprintf.o OBJS = $(CLASSES) $(OBJS1) SRCS2 = $(OBJS1:.o=.c) SRCS1 = $(CLASSES:.o=.cpp) YFLAGS = -d target: mysnprintf.o if test "X_@SDL_JOYSTICK_LIBS@" = "X_SDLjoystick/libSDLjoystick.a" ;then cd SDLjoystick;$(MAKE); fi cd swt ; $(MAKE) $(MAKE) ../bin/dune nebula/ExportNebula.o: nebula/ExportNebula.cpp $(CXX) $(CXXFLAGS) -c -o $@ nebula/ExportNebula.cpp ../bin/dune: main.o $(OBJS) swt/lib/libswt.a @SDL_JOYSTICK_LIBS@ $(CXX) $(CXXFLAGS) main.o $(OBJS) $(LIBS) -o $@ sh -c "if test `uname` = IRIX64 ; then tag 0x00ff1a00 $@ ; fi" sh -c "if test `uname` = IRIX ; then tag 0x00ff1a00 $@ ; fi" sh -c "if test `uname` = Darwin ; then (cd ../desktop/macosx/white_dune.app/Contents/MacOS && ln -sf ../../../../../bin/dune .) ; fi" selftest: mysnprintf.o if test "X_@SDL_JOYSTICK_LIBS@" = "X_SDLjoystick/libSDLjoystick.a" ;then cd SDLjoystick;$(MAKE); fi cd swt ; $(MAKE) $(MAKE) ../test/dune_selftest ../test/dune_selftest: ../test/selftest.cpp $(OBJSDUNE) $(OBJS) swt/lib/libswt.a $(CXX) $(CXXFLAGS) ../test/selftest.cpp $(OBJS) $(LIBS) $(OBJSDUNE) -o $@ allNodesTest: mysnprintf.o if test "X_@SDL_JOYSTICK_LIBS@" = "X_SDLjoystick/libSDLjoystick.a" ;then cd SDLjoystick;$(MAKE); fi cd swt ; $(MAKE) $(MAKE) ../test/dune_allNodesTest ../test/dune_allNodesTest: ../test/allNodesTest.cpp $(OBJSDUNE) $(OBJS) swt/lib/libswt.a $(CXX) $(CXXFLAGS) ../test/allNodesTest.cpp $(OBJS) $(LIBS) $(OBJSDUNE) -o $@ SFMFTypes.h: ../batch/mkSFMFTypes.sh sh ../batch/mkSFMFTypes.sh #SFMFTypes.h SFMFTypesItem.h Types.h Types.cpp: ../batch/mkSFMFTypes.sh # sh ../batch/mkSFMFTypes.sh lexer.o: lexer.cpp $(CXX) $(CXXFLAGS) $(LFLAGS) -c lexer.cpp lexer.cpp: lexer.l echo '#ifndef WIN32' > lexer.cpp echo '#include "unistd.h"' >> lexer.cpp echo '#endif' >> lexer.cpp $(LEX) -t lexer.l | grep -v unistd.h >> lexer.cpp parser.o: parser.cpp $(CXX) $(CXXFLAGS) -c parser.cpp parser.cpp y.tab.h: parser.y $(YACC) $(YFLAGS) parser.y mv y.tab.c parser.cpp ICONS= res/fullSocketSquare.bmp res/standard_toolbar.bmp \ res/emptySocketSquare.bmp res/halftone.bmp \ res/node_icons.bmp res/vcr.bmp \ res/recommendedSocketSquare.bmp resource.c: dune.rc swt/rc/rc $(ICONS) resource.h sed 's.\\\\./.' < dune.rc > dune1.rc.c $(CXXCPP) dune1.rc.c > dune2.rc.c grep -v '//' dune2.rc.c > dune3.rc.c if swt/rc/rc < dune3.rc.c > resource.c ; then echo ; else rm resource.c ; exit 1 ; fi rm dune1.rc.c dune2.rc.c dune3.rc.c swt/rc/rc: swt/rc/rc.c (cd swt/rc && make) configure: configure.in autoconf clean: cd swt ; $(MAKE) clean cd SDLjoystick ; $(MAKE) clean rm -rf $(OBJS) main.o *.bak \ gmon.out config.cache config.log core iifiles ii_files \ mysnprintftest joysticktest spaceballtest aflocktest ntclean: rm -f dune.aps dune.opt dune.ncb dune.plg dune.dep dune.mak \ swt/win32/Release/*.obj swt/win32/Debug/*.obj \ Release/*.obj Debug/*.obj ntrealclean: ntclean rm -f swt/win32/Release/* swt/win32/Debug/* \ Release/* Debug/* realclean: clean ntrealclean rm -f swt/lib/*.a swt/lib/*.so* swt/rc/rc */*.obj bison.simple rm -rf v2x3d/* x3dv2/* mysnprintftest: mysnprintf.c $(CC) -g -DTEST_SNPRINTF -DHAVE_SNPRINTF=1 -o $@ mysnprintf.c -lm INPUTTEST_OBJS=EulerAngles.o Quaternion.o Aflock.o joysticktest: InputDevice.cpp mysnprintf.o $(INPUTTEST_OBJS) $(CXX) -DDEBUG=1 $(CXXFLAGS) -g -DTEST_JOYSTICK -DLINUXJOYSTICK=1 \ -o $@ InputDevice.cpp mysnprintf.o $(INPUTTEST_OBJS) $(LIBS) spaceballtest: InputDevice.cpp mysnprintf.o $(INPUTTEST_OBJS) $(CXX) $(CXXFLAGS) -g -DTEST_SPACEBALL -DHAVE_LIBSBALL=1 \ -o $@ InputDevice.cpp mysnprintf.o $(INPUTTEST_OBJS) $(LIBS) -lsball aflocktest: InputDevice.cpp $(INPUTTEST_OBJS) mysnprintf.o $(CXX) $(CXXFLAGS) -g -DTEST_AFLOCK -DHAVE_AFLOCK=1 \ -o $@ InputDevice.cpp $(INPUTTEST_OBJS) mysnprintf.o $(LIBS) clobber: cd swt ; $(MAKE) clobber rm -f dune depend: parser.cpp lexer.cpp cp Makefile Makefile.bak $(AWK) '{ print } /^# DO NOT DELETE THIS LINE/ { print ""; exit }' < Makefile.bak > Makefile if test "$(CXX)" = "c++" ; then \ mkdep="g++ -MM";\ else \ if test "`uname`" = "SunOS" ; then\ mkdep="$(CXX) -xM1";\ else\ mkdep="$(CXX) -M";\ fi\ fi;\ $$mkdep $(CXXFLAGS) $(SRCS1) $(SRCS2) parser.cpp lexer.cpp >> Makefile debug: ../bin/dune rm xerrorhandler.o $(CXX) $(CXXFLAGS) -DHAVE_WANT_CORE=1 -c xerrorhandler.cpp make ../bin/dune # DO NOT DELETE THIS LINE -- make depend depends on it.