#!smake -J 1 #-------------------------------------------------------------------# #-- Makefile for Performer/src/pguide/libpf/C directory --# #-------------------------------------------------------------------# #-- RCS version information --# #-- $Revision: 1.68 $ --# #-- $Date: 1996/04/11 11:52:51 $ --# #-------------------------------------------------------------------# #-------------------------------------------------------------------# #-- The default make target makes the IRISGL Dynamic Shared Object.-# #-- The targets are: --# #-- build debugging versions: igldbg (or ogldbg) --# #-- build optimized versions: iglopt (or oglopt) --# #-- build dynamic shared object versions: igldso ogldso --# #-- build debugging dynamic shared object versions: --# #-- iglddso oglddso --# #-- remove all unneeded files after a build: clean --# #-- remove all machine generated files: clobber --# #-- --# #-- --# #-------------------------------------------------------------------# #-- #-- definitions #-- #if !defined(PFSTYLE) PFSTYLE = 32 #endif #if $(PFSTYLE) == "64" OBJECT_STYLE = 64 LIBBITSUF=64 PFRELEASE=N64 #endif #if $(PFSTYLE) == "N32" OBJECT_STYLE = N32_M3 LIBBITSUF=32 PFRELEASE=N32 #endif #if $(PFSTYLE) == "32" OBJECT_STYLE = 32 LIBBITSUF= PFRELEASE=O32 #endif include $(ROOT)/usr/include/make/commondefs PFROOT ?= $(ROOT) DSOLINKS = \ -L$(PFROOT)/usr/lib$(LIBBITSUF) \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/libpfdb \ -L$(PFROOT)/lib$(LIBBITSUF) DDSOLINKS = \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/Debug \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/Debug/libpfdb \ -L$(PFROOT)/lib$(LIBBITSUF) DBGLINKS = \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/DebugStatic \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/DebugStatic/libpfdb \ -L$(PFROOT)/lib$(LIBBITSUF) OPTLINKS = \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/Static \ -L$(PFROOT)/usr/lib$(LIBBITSUF)/Performer/Static/libpfdb \ -L$(PFROOT)/lib$(LIBBITSUF) IGLLIB = -ignore_unresolved -lpf_igl -lpfdu_igl -lpfui -lpfutil_igl OGLLIB = -ignore_unresolved -lpf_ogl -lpfdu_ogl -lpfui -lpfutil_ogl #if defined(PFSTATIC_CONVERTERS) IGLLIB += -all $(PFSTATIC_CONVERTERS) -none OGLLIB += -all $(PFSTATIC_CONVERTERS) -none #endif LIBIGL = -ignore_unresolved -lgl LIBOGL = -ignore_unresolved -lGLU -lGL -lXext #if $(RELEASE) < 6.2 IRIXREL=-DIRIX5 #else IRIXREL=-DIRIX6 LIBIGL += -lXsgivc LIBOGL += -lXsgivc #endif SYSTEM_IRISGL = \ -lmpc \ -limage \ -lfm \ ${LIBIGL} \ -lXirisw \ -lXm \ -lXt \ -lfpe \ -lXmu \ -lX11 \ -lm \ -lmalloc \ -lC SYSTEM_OPENGL = \ -lmpc \ -limage \ -lGLw \ -lSgm \ ${LIBOGL} \ -lfpe \ -lXm \ -lXt \ -lXmu \ -lX11 \ -lm \ -lmalloc \ -lC #if $(PFSTYLE) == "64" SYSTEM_OPENGL = \ -limage \ -lGLw \ ${LIBOGL} \ -lXm \ -lXmu \ -lX11 \ -lm \ -lC #endif #if $(PFSTYLE) == "N32" SYSTEM_IRISGL = \ -limage \ ${LIBIGL} \ -lXm \ -lXmu \ -lX11 \ -lm \ -lfm \ -lC SYSTEM_OPENGL = \ -limage \ -lGLw \ ${LIBOGL} \ -lXm \ -lXmu \ -lX11 \ -lm \ -lC #endif #-- targets are the executables TARGETS = \ bench \ complex \ detail \ earthsky \ fog \ hello \ inherit \ intersect \ layer \ lpstate \ morph \ motif \ multichan \ multipipe \ multiwin \ pfconv \ pipewin \ simple \ stats \ text \ text3D \ texture \ torusLOD \ writeascii OBJECTS = \ $(TARGETS:=.o)\ culldl.o \ billboard.o #-- #-- #-- generic targets #-- #-- make optimized dso version of program by default default: ogldso #-- synonym targets debug: ogldbg optimize: oglopt #-- make all versions of program all: ogldbg oglopt ogldso oglddso #if $(PFSTYLE) == "64" #-- make optimized dso version of program by default default: ogldso #-- synonym targets debug: ogldbg optimize: oglopt #-- make all versions of program all: ogldbg oglopt ogldso oglddso #endif igldso: $(TARGETS:=.igldso) iglopt: $(TARGETS:=.iglopt) igldbg: $(TARGETS:=.igldbg) iglddso: $(TARGETS:=.iglddso) ogldso: $(TARGETS:=.ogldso) oglopt: $(TARGETS:=.oglopt) ogldbg: $(TARGETS:=.ogldbg) oglddso: $(TARGETS:=.oglddso) #-- clean up directories {remove junk} clean: if test -d DBG.$(PFRELEASE).IRISGL; then cd DBG.$(PFRELEASE).IRISGL ; rm -f ${OBJECTS} core ; cd .. ; fi if test -d DBG.$(PFRELEASE).OPENGL; then cd DBG.$(PFRELEASE).OPENGL ; rm -f ${OBJECTS} core ; cd .. ; fi if test -d OPT.$(PFRELEASE).IRISGL; then cd OPT.$(PFRELEASE).IRISGL ; rm -f ${OBJECTS} core ; cd .. ; fi if test -d OPT.$(PFRELEASE).OPENGL; then cd OPT.$(PFRELEASE).OPENGL ; rm -f ${OBJECTS} core ; cd .. ; fi #-- remove all machine-built files clobber: clean if test -d OPT.$(PFRELEASE).IRISGL ; then rm -rf OPT.$(PFRELEASE).IRISGL ; fi if test -d OPT.$(PFRELEASE).OPENGL ; then rm -rf OPT.$(PFRELEASE).OPENGL ; fi if test -d DBG.$(PFRELEASE).IRISGL ; then rm -rf DBG.$(PFRELEASE).IRISGL ; fi if test -d DBG.$(PFRELEASE).OPENGL ; then rm -rf DBG.$(PFRELEASE).OPENGL ; fi rm -f ${TARGETS} #-- #-- library targets #-- $(TARGETS): $(@:=.igldso) $(TARGETS:=.igldbg): .MAKE @echo "\nmaking IrisGL DBG version of $@" @if test ! -d DBG.$(PFRELEASE).IRISGL ; then mkdir -p DBG.$(PFRELEASE).IRISGL ; fi @ rm -f $(@:S/.igldbg//) @cd DBG.$(PFRELEASE).IRISGL ; \ ${MAKE} -f ../Makefile OPTIMIZER=-g LCDEFS=-DIRISGL LCXXDEFS=-DIRISGL \ LIBRARIES='$(IGLLIB) ${SYSTEM_IRISGL}' \ $(@:S/igl//)cmd ; @echo "making symbolic links to DBG versions" ln -s DBG.$(PFRELEASE).IRISGL/$(@:S/igl//)cmd $(@:S/.igldbg//) ; $(TARGETS:=.iglopt): .MAKE @echo "\nmaking IrisGL OPT version of $@" @if test ! -d OPT.$(PFRELEASE).IRISGL ; then mkdir -p OPT.$(PFRELEASE).IRISGL ; fi @ rm -f $(@:S/.iglopt//) @cd OPT.$(PFRELEASE).IRISGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-O -Olimit 2000" LCDEFS=-DIRISGL LCXXDEFS=-DIRISGL \ LIBRARIES='$(IGLLIB) ${SYSTEM_IRISGL}' \ $(@:S/igl//)cmd ; cd .. @echo "making symbolic links to OPT versions" ln -s OPT.$(PFRELEASE).IRISGL/$(@:S/igl//)cmd $(@:S/.iglopt//) ; $(TARGETS:=.igldso): .MAKE @echo "\nmaking IrisGL DSO version of $@" @if test ! -d OPT.$(PFRELEASE).IRISGL ; then mkdir -p OPT.$(PFRELEASE).IRISGL ; fi @ rm -f $(@:S/.igldso//) @cd OPT.$(PFRELEASE).IRISGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-O -Olimit 2000" LCDEFS=-DIRISGL LCXXDEFS=-DIRISGL \ LIBRARIES='$(IGLLIB) ${SYSTEM_IRISGL}' \ $(@:S/igl//)cmd ; cd .. @echo "making symbolic links to DSO versions" ln -s OPT.$(PFRELEASE).IRISGL/$(@:S/igl//)cmd $(@:S/.igldso//) ; $(TARGETS:=.iglddso): .MAKE @echo "\nmaking IrisGL DDSO version of $@" @if test ! -d DBG.$(PFRELEASE).IRISGL ; then mkdir -p DBG.$(PFRELEASE).IRISGL ; fi @ rm -f $(@:S/.iglddso//) @cd DBG.$(PFRELEASE).IRISGL ; \ ${MAKE} -f ../Makefile OPTIMIZER=-g LCDEFS=-DIRISGL LCXXDEFS=-DIRISGL \ LIBRARIES='$(IGLLIB) ${SYSTEM_IRISGL}' \ $(@:S/igl//)cmd ; cd .. @echo "making symbolic links to DDSO versions" ln -s DBG.$(PFRELEASE).IRISGL/$(@:S/igl//)cmd $(@:S/.iglddso//) ; $(TARGETS:=.ogldbg): .MAKE @echo "\nmaking OpenGL DBG version of $@" @if test ! -d DBG.$(PFRELEASE).OPENGL ; then mkdir -p DBG.$(PFRELEASE).OPENGL ; fi @ rm -f $(@:S/.ogldbg//) @cd DBG.$(PFRELEASE).OPENGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-g " \ LIBRARIES='$(OGLLIB) ${SYSTEM_OPENGL}' \ $(@:S/ogl//)cmd ; cd .. @echo "making symbolic links to DBG versions" ln -s DBG.$(PFRELEASE).OPENGL/$(@:S/ogl//)cmd $(@:S/.ogldbg//) ; $(TARGETS:=.oglopt): .MAKE @echo "\nmaking OpenGL OPT version of $@" @if test ! -d OPT.$(PFRELEASE).OPENGL ; then mkdir -p OPT.$(PFRELEASE).OPENGL ; fi @ rm -f $(@:S/.oglopt//) @cd OPT.$(PFRELEASE).OPENGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-O -Olimit 2000" \ LIBRARIES='$(OGLLIB) ${SYSTEM_OPENGL}' \ $(@:S/ogl//)cmd ; cd .. @echo "making symbolic links to OPT versions" ln -s OPT.$(PFRELEASE).OPENGL/$(@:S/ogl//)cmd $(@:S/.oglopt//) ; $(TARGETS:=.ogldso): .MAKE @echo "\nmaking OpenGL DSO version of $@" @if test ! -d OPT.$(PFRELEASE).OPENGL ; then mkdir -p OPT.$(PFRELEASE).OPENGL ; fi @ rm -f $(@:S/.ogldso//) @cd OPT.$(PFRELEASE).OPENGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-O -Olimit 2000" \ LIBRARIES='$(OGLLIB) ${SYSTEM_OPENGL}' \ $(@:S/ogl//)cmd ; cd .. @echo "making symbolic links to DSO versions" ln -s OPT.$(PFRELEASE).OPENGL/$(@:S/ogl//)cmd $(@:S/.ogldso//); $(TARGETS:=.oglddso): .MAKE @echo "\nmaking OpenGL DDSO version of $@" @if test ! -d DBG.$(PFRELEASE).OPENGL ; then mkdir -p DBG.$(PFRELEASE).OPENGL ; fi @ rm -f $(@:S/.oglddso//) @cd DBG.$(PFRELEASE).OPENGL ; \ ${MAKE} -f ../Makefile OPTIMIZER="-g " \ LIBRARIES='$(OGLLIB) ${SYSTEM_OPENGL}' \ $(@:S/ogl//)cmd ; cd .. @echo "making symbolic links to DDSO versions" ln -s DBG.$(PFRELEASE).OPENGL/$(@:S/ogl//)cmd $(@:S/.oglddso//); dso: ogldso ddso: oglddso dbg: ogldbg opt: oglopt #-- #-- internal targets #-- .SUFFIXES: .dbgcmd .optcmd .dsocmd .ddsocmd .o.dbgcmd: ${CC} ${CFLAGS} -o $@ $< $(DBGLINKS) -all ${LIBRARIES} .o.optcmd: ${CC} ${CFLAGS} -o $@ $< $(OPTLINKS) -all ${LIBRARIES} .o.dsocmd: ${CC} ${CFLAGS} -o $@ $< $(DSOLINKS) -all ${LIBRARIES} .o.ddsocmd: ${CC} ${CFLAGS} -o $@ $< $(DDSOLINKS) -all ${LIBRARIES} #-- #-- internal targets #-- #-- look for sources in this directory when recursing .PATH: ..