XCOMM Copyright (c) Mark J. Kilgard, 1994, 1997, 1998. XCOMM Glut.cf - GLUT distribution Imakefile configuration info #ifndef MathLibrary /* introduced with X11R6 */ #define MathLibrary -lm #endif #ifndef SaberProgramTarget /* in X11R5 but removed in X11R6 */ #define SaberProgramTarget(program,srclist,objlist,locallibs,syslibs) #endif #ifdef SunArchitecture /* * Solaris has a non-standard way of placing libraries * and header files. This should work for Template Graphics Systems' * OpenGL implementation, assuming your OGLHOME and OPENWINHOME * environment variables are set correctly. */ EXTRA_INCLUDES = -I$(TOP)/include -I$(OGLHOME)/include -I$(OPENWINHOME)/include OPENGL = -L$(OGLHOME)/lib -lGL -L$(OPENWINHOME) -ldga GLU = -L$(OGLHOME)/lib -lGLU /* XXX Is this right, Template?? */ INVENTOR = -L$(OGLHOME)/lib -lInventor GLUT_DEPLIBS = $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLUT_LIBS = $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary MUI_DEPLIBS = $(DEPMUI) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) MUI_LIBS = $(MUI) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLE_DEPLIBS = $(DEPGLE) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLE_LIBS = $(GLE) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLSMAP_DEPLIBS = $(DEPGLSMAP) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLSMAP_LIBS = $(GLSMAP) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary #else /* Everybody but Sun... */ #ifdef AlphaArchitecture /* Alpha suggestions from Andrej Panjkov (mataap@pop.latrobe.edu.au). */ /* Andrej writes: There is a bug in one of the imake configuration files supplied with Digital Unix 3.2c that will cause the build to fail. In the file /usr/lib/X11/config/osflib.tmpl, the reference to libXi.a should be changed to libXi.so (which is in the correct directory /usr/shlib). Root access is needed to fix this bug. I don't know if the bug persists in later versions of DU. */ #if 0 /* Not using now. */ /* * Digital puts all Imake symbols for use with OpenGL in OpenGL.tmpl, so use * the contents of that file instead of the definitions here. */ #include EXTRA_INCLUDES = GLUTInclude #else EXTRA_INCLUDES = -I$(TOP)/include #endif INVENTOR = -lInventor /* Suggested by Andrej Panjkov (mataap@pop.latrobe.edu.au) */ DEPGLUTLIB = $(TOP)/lib/glut/libglut.a GLUTLIB = $(TOP)/lib/glut/libglut.a GLUT_LIBS = $(GLUTLIB) $(GLULIB) $(GLLIB) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLUT_DEPLIBS = $(DEPGLUTLIB) $(DEPGLULIB) $(DEPGLLIB) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) MUI_LIBS = $(MUI) $(GLUTLIB) $(GLULIB) $(GLLIB) $(XMULIB) $(XILIB) $(XLIB) MathLibrary MUI_DEPLIBS = $(DEPMUI) $(DEPGLUTLIB) $(DEPGLULIB) $(DEPGLLIB) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLE_LIBS = $(GLE) $(GLUTLIB) $(GLULIB) $(GLLIB) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLE_DEPLIBS = $(DEPGLE) $(DEPGLUTLIB) $(DEPGLULIB) $(DEPGLLIB) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLSMAP_LIBS = $(GLSMAP) $(GLUTLIB) $(GLULIB) $(GLLIB) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLSMAP_DEPLIBS = $(DEPGLSMAP) $(DEPGLUTLIB) $(DEPGLULIB) $(DEPGLLIB) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) #else /* Everybody but Sun or DEC Alpha... */ /* * This should work for normal vendors that put their OpenGL and X * libraries and headers in standard places (or at least where * imake configuration files know where they are). */ #ifdef HPArchitecture /* Nate Robbins (E&S) reports that HP does not have its Xmu.h header in the standard place. */ XMU_HEADERS = /usr/contrib/X11R5/include/ EXTRA_INCLUDES = -I$(TOP)/include -I$(XMU_HEADERS) #else EXTRA_INCLUDES = -I$(TOP)/include #endif GLUT_DEPLIBS = $(DEPGLUT) $(DEPXMULIB) $(DEPXLIB) GLUT_LIBS = $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XLIB) MathLibrary OPENGL = -lGL GLU = -lGLU INVENTOR = -lInventor GLUT_DEPLIBS = $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLUT_LIBS = $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary MUI_DEPLIBS = $(DEPMUI) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) MUI_LIBS = $(MUI) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLE_DEPLIBS = $(DEPGLE) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLE_LIBS = $(GLE) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary GLSMAP_DEPLIBS = $(DEPGLSMAP) $(DEPGLUT) $(DEPXMULIB) $(DEPXILIB) $(DEPXLIB) GLSMAP_LIBS = $(GLSMAP) $(GLUT) $(GLU) $(OPENGL) $(XMULIB) $(XILIB) $(XLIB) MathLibrary #endif #endif #DEPGLUT = $(TOP)/lib/glut/libglut.a DEPGLUT = -lglut #GLUT = $(TOP)/lib/glut/libglut.a GLUT = -lglut DEPMUI = $(TOP)/lib/mui/libmui.a MUI = $(TOP)/lib/mui/libmui.a #DEPGLE = $(TOP)/lib/gle/libgle.a DEPGLE = -lgle #GLE = $(TOP)/lib/gle/libgle.a GLE = -lgle #DEPGLSMAP = $(TOP)/lib/glsmap/libglsmap.a DEPGLSMAP = -lglsmap #GLSMAP = $(TOP)/lib/glsmap/libglsmap.a GLSMAP = -lglsmap CXXEXTRA_INCLUDES = -I/usr/include/CC $(EXTRA_INCLUDES) GLUT_INVENTOR_DEPLIBS = $(GLUT_DEPLIBS) GLUT_INVENTOR_LIBS = $(INVENTOR) $(GLUT_LIBS) #ifdef SGIArchitecture /* For SGI C++ compiler, need to search extra dirs in make depend */ #undef CplusplusDependIncludes #define CplusplusDependIncludes -I$(ROOT)/usr/include/CC #endif #ifndef NullParameter /* * NullParameter should be #define'ed to nothing in Imake.rules, but it has * been reported to me that this is not always the case. If not, let * Glut.cf #define it to nothing. */ #define NullParameter #endif #define GlutTestProgramTarget(name) NormalProgramTarget(name,name.o,$(GLUT_DEPLIBS),$(GLUT_LIBS),NullParameter) #define MuiTestProgramTarget(name) NormalProgramTarget(name,name.o,$(MUI_DEPLIBS),$(MUI_LIBS),NullParameter) #define SimpleGlutProgramTarget(name) NormalProgramTarget(name,name.o,$(GLUT_DEPLIBS),$(GLUT_LIBS),NullParameter) #define NormalGlutProgramTarget(name,objs) NormalProgramTarget(name,objs,$(GLUT_DEPLIBS),$(GLUT_LIBS),NullParameter) #define SimpleMuiProgramTarget(name) NormalProgramTarget(name,name.o,$(MUI_DEPLIBS),$(MUI_LIBS),NullParameter) #define NormalMuiProgramTarget(name,objs) NormalProgramTarget(name,objs,$(MUI_DEPLIBS),$(MUI_LIBS),NullParameter) #define SimpleGleProgramTarget(name) NormalProgramTarget(name,name.o,$(GLE_DEPLIBS),$(GLE_LIBS),NullParameter) #define NormalGleProgramTarget(name,objs) NormalProgramTarget(name,objs,$(GLE_DEPLIBS),$(GLE_LIBS),NullParameter) #define SimpleGlsmapProgramTarget(name) NormalProgramTarget(name,name.o,$(GLSMAP_DEPLIBS),$(GLSMAP_LIBS),NullParameter) #define NormalGlsmapProgramTarget(name,objs) NormalProgramTarget(name,objs,$(GLSMAP_DEPLIBS),$(GLSMAP_LIBS),NullParameter) #define SimpleGlutInventorProgramTarget(name) NormalCplusplusProgramTarget(name,name.o,$(GLUT_INVENTOR_DEPLIBS),$(GLUT_INVENTOR_LIBS),NullParameter) #define NormalGlutInventorProgramTarget(name,objs) NormalCplusplusProgramTarget(name,objs,$(GLUT_INVENTOR_DEPLIBS),$(GLUT_INVENTOR_LIBS),NullParameter) XCOMM end Glut.cf - GLUT distribution Imakefile configuration info