install : @rm -f $(INSTLOGFILE) @$(MAKE) __instbin __instdev @more $(INSTLOGFILE) instbin instdev : @$(MAKE) __$@ __instbin: @$(MAKE) INSTSRC=$(TOPDIR)/bin INSTDEST=$(INST_DEMOS) \ INSTALL?="$(INSTBINCMD)" __install @$(MAKE) INSTSRC=$(TOPDIR)/lib INSTDEST=$(INST_LIBS) \ INSTALL?="$(INSTBINCMD)" __install @$(MAKE) INSTSRC=$(TOPDIR)/lib/osgPlugins INSTDEST=$(INST_PLUGINS)\ INSTALL?="$(INSTBINCMD)" __install @echo >> $(INSTLOGFILE) @echo " Run-time environment installation successful. Add "\ >> $(INSTLOGFILE) @echo " $(INST_DEMOS)"\ >> $(INSTLOGFILE) @echo " to your PATH environmental variable, and"\ >> $(INSTLOGFILE) @echo " $(INST_LIBS) and $(INST_PLUGINS)"\ >> $(INSTLOGFILE) @echo " to your LD_LIBRARY_PATH if not already present."\ >> $(INSTLOGFILE) @echo >> $(INSTLOGFILE) __instdev: @for d in `ls -1 $(TOPDIR)/include/ | grep -v CVS`; \ do\ if [ -d $(TOPDIR)/include/$$d ]; \ then \ $(MAKE) INSTSRC=$(TOPDIR)/include/$$d INSTDEST=$(INST_INCLUDE)/$$d\ INSTALL?="$(INSTDEVCMD)" __install;\ fi\ done @$(TOPDIR)/Make/instdemosrc \ $(TOPDIR)\ $(INST_LIBS)\ $(INST_INCLUDE)\ $(INST_SRC)\ $(INST_DEMO_SRC)\ "$(INSTDEVCMD)"\ "$(C++)"\ "$(OPTF)"\ "$(DEPARG)"\ "$(LINKARGS)"\ "$(OSG_LIBS)"\ "$(FREETYPE_LIB)"\ "$(GLUT_LIB)"\ "$(GL_LIBS)"\ "$(X_LIBS)"\ "$(SOCKET_LIBS)"\ "$(OTHER_LIBS)"\ "$(TIFF_LIB)"\ @echo\ >> $(INSTLOGFILE) @echo " Development environment installation successful. Add"\ >> $(INSTLOGFILE) @echo " -I$(INST_INCLUDE)"\ >> $(INSTLOGFILE) @echo " compile flag when compiling with OSG header files."\ >> $(INSTLOGFILE) @echo " Example programs can be found at $(INST_DEMO_SRC)."\ >> $(INSTLOGFILE) @echo >> $(INSTLOGFILE) instlinks : @rm -f $(INSTLOGFILE) $(MAKE) INSTBINCMD="$(INSTLINKBINCMD)" __instbin $(MAKE) INSTDEVCMD="$(INSTLINKDEVCMD)" __instdev @more $(INSTLOGFILE) instlinksbin : @rm -f $(INSTLOGFILE) $(MAKE) INSTBINCMD="$(INSTLINKBINCMD)" __instbin @more $(INSTLOGFILE) instlinksdev : @rm -f $(INSTLOGFILE) @$(MAKE) INSTDEVCMD="$(INSTLINKDEVCMD)" __instdev @more $(INSTLOGFILE) instclean : instcleanbin instcleandev instcleanbin : @$(MAKE) INSTSRC=$(TOPDIR)/bin INSTDEST=$(INST_DEMOS) \ INSTALL?="$(INSTBINCMD)" __instclean @$(MAKE) INSTSRC=$(TOPDIR)/lib INSTDEST=$(INST_LIBS) \ INSTALL?="$(INSTBINCMD)" __instclean @$(MAKE) INSTSRC=$(TOPDIR)/lib/osgPlugins INSTDEST=$(INST_PLUGINS)\ INSTALL?="$(INSTBINCMD)" __instclean instcleandev : @for d in `ls -1 $(TOPDIR)/include/ | grep -v CVS`; \ do\ if [ -d $(TOPDIR)/include/$$d ]; \ then \ $(MAKE) INSTSRC=$(TOPDIR)/include/$$d INSTDEST=$(INST_INCLUDE)/$$d\ INSTALL?="$(INSTDEVCMD)" __instclean;\ fi\ done @for d in `ls -1 $(TOPDIR)/src/Demos | grep -v CVS`; \ do\ if [ -d $(TOPDIR)/src/Demos/$$d ]; \ then \ $(MAKE) INSTSRC=$(TOPDIR)/src/Demos/$$d INSTDEST=$(INST_DEMO_SRC)/$$d\ INSTALL?="$(INSTDEVCMD)" __instclean;\ fi\ done __install : @[ -n "$(INSTSRC)" ] || echo "Internal error (INSTSRC definition)" @[ -n "$(INSTSRC)" ] && echo > /dev/null @[ -n "$(INSTDEST)" ] || echo "Internal error (INSTDEST definition)" @[ -n "$(INSTDEST)" ] && echo > /dev/null @[ -d $(INSTDEST) ] || mkdir -p $(INSTDEST) @cd $(INSTSRC);\ THISDIR=`pwd`;\ if [ -n "`ls -1 | grep -v CVS`" ]; then\ for f in `ls -1 | grep -v CVS`; \ do\ if [ -f $$f ] ; \ then \ INSTPATH=$$THISDIR/$$f; \ echo $(INSTALL) $$INSTPATH $(INSTDEST)/$$f;\ $(INSTALL) $$INSTPATH $(INSTDEST)/$$f;\ fi\ done\ fi # These lines cause instlinks to install links pointing to the actual files # rather than the links in $(TOPDIR)/{bin,lib,include}. Advantage of this # is for systems that hold multiple platforms in the same nfs mounted source # but install different executables. Disadvantage is that it is not trivial # to change to debug version by simply doing a 'make debug'. # while [ -L $$INSTPATH ]; \ # while `csh -f -c "test -L $$INSTPATH"` ;\ # do \ # ll=`ls -l $$INSTPATH | cut -f2 -d">"`;\ # cd `dirname $$ll`;\ # INSTPATH="`pwd`"/"`basename $$ll`";\ # cd $$THISDIR;\ # done;\ __instclean : @[ -n "$(INSTSRC)" ] || echo "Internal error (INSTSRC definition)" @[ -n "$(INSTSRC)" ] && echo > /dev/null @[ -n "$(INSTDEST)" ] || echo "Internal error (INSTDEST definition)" @[ -n "$(INSTDEST)" ] && echo > /dev/null @if [ -d $(INSTDEST) ] ; \ then\ cd $(INSTSRC);\ if [ -n "`ls -1 | grep -v CVS`" ]; then\ for f in `ls -1 | grep -v CVS`; \ do\ if [ -f $$f ] ; \ then \ echo "rm -f $(INSTDEST)/$$f";\ rm -f $(INSTDEST)/$$f;\ fi\ done\ fi;\ empty=`ls $(INSTDEST)`;\ if [ -z "$$empty" ];\ then\ repeat=1;\ while [ $$repeat = 1 ] ; \ do \ printf "$(INSTDEST) is empty. Remove? (y/n) [y]: ";\ read resp;\ case $$resp in \ ""|Yes|YES|yes|Y|y) rm -rf $(INSTDEST); repeat=0;; \ n|N|no|NO) repeat=0;; \ *) repeat=1;; \ esac\ done\ fi\ fi