################# # 'make' build parameters ################# MAKEFILE = Makefile SHELL = /bin/sh ################# # Compiler parameters ################# # COMPFLAGS - Used to set Compiler parameters on the command line. For options # commonly used during development (debug, static, optimize, etc). # BLINCLINK - Used to set the compiler options needed to support BLIncLink # builds (via the softbench 'make' script). COMPFLAGS = BLINCLINK = CFLAGS = +O3 $(BLINCLINK) $(COMPFLAGS) PFLAGS = +O3 $(BLINCLINK) $(COMPFLAGS) FFLAGS = +O3 $(BLINCLINK) $(COMPFLAGS) CCFLAGS = $(BLINCLINK) $(COMPFLAGS) CXXFLAGS = +O3 $(BLINCLINK) $(COMPFLAGS) ################# # Special 'mkmf' macros ################# # SUFFIX - List of additional file name suffixes for 'mkmf' to know about SUFFIX = ################# # User-added macros ################# # (Add any other macros which are to be set through 'mkmf') ################# # Header file parameters ################# # Uncomment this if you want system header files to be expanded # # SYSHDRS = EXTHDRS = HDRS = ################# # Loader and options to be used for the final program link step. ################# LD = f77 LDFLAGS = $(COMPFLAGS) ################# # Library parameters ################# # LIBS - Archive or shared libraries in development (the archive # libraries are not compiled BLIncLink). # SYSLIBS - Libraries not in development (may specify with "-l" options) # ARCHIVES - Archive libraries in development which are compiled BLIncLink. # NONPRELINK - Object files not guaranteed to be compiled BLIncLink. # # (Refer to the blinclink(5) reference pages for more details) LIBS = /usr/local/apps/imsl/lib/lib.sgi/libimsl.a \ /usr/local/apps/imsl/lib/lib.sgi/libimslblas.a \ /usr/local/apps/imsl/lib/lib.sgi/libfft.a \ /usr/local/apps/imsl/lib/lib.sgi/libimslfft.a SYSLIBS = ARCHIVES = NONPRELINK = ################# # Program parameters ################# PROGRAM = laptest.x SRCS = laptest.f OBJS = laptest.o ################# # 'lint' parameters ################# LINTLIBS = LINTFLAGS = -u $(CFLAGS) ################# # 'print' parameters ################# PRINT = pr PRINTFLAGS = LP = lp LPFLAGS = ################# # 'install'/'update' parameters ################# DEST = . INSTALL = install ################# # Target Rules ################# all: $(PROGRAM) all.blinc: $(PROGRAM).blinc all.prelink: $(PROGRAM).prelink $(PROGRAM): $(NONPRELINK) $(OBJS) $(ARCHIVES) $(LIBS) $(MAKEFILE) @echo "Linking $(PROGRAM) ..." $(LD) -o $(PROGRAM) $(LDFLAGS) $(NONPRELINK) \ $(OBJS) $(ARCHIVES) $(LIBS) $(SYSLIBS) @echo "done" $(PROGRAM).prelink: $(OBJS) $(ARCHIVES) $(PROGRAM).alt.blinc @echo "Prelinking $(PROGRAM) ..." $(LD) -o $(PROGRAM) $(LDFLAGS) \ -prelink $(OBJS) $(ARCHIVES) $(LD) -o $(PROGRAM) $(LDFLAGS) $(NONPRELINK) \ -blinc $(LIBS) $(SYSLIBS) @echo "" > $(PROGRAM).blinc @echo "done" $(PROGRAM).blinc: $(OBJS) $(ARCHIVES) $(PROGRAM).alt.blinc @echo "BLIncLinking $(PROGRAM) ..." $(LD) -o $(PROGRAM) $(LDFLAGS) $(NONPRELINK) \ -blinc $? $(LIBS) $(SYSLIBS) @echo "" > $(PROGRAM).blinc @echo "done" $(PROGRAM).alt.blinc: $(NONPRELINK) $(LIBS) $(MAKEFILE) @echo "" > $(PROGRAM).alt.blinc clean:; @rm -f $(OBJS) core clobber:; @rm -f $(OBJS) core tags \ $(PROGRAM) $(PROGRAM).blinc $(PROGRAM).bld_history \ $(PROGRAM)_bld.sl $(PROGRAM).alt.blinc @if [ -n "$(ARCHIVES)" ] ; \ then \ liblist=$(ARCHIVES); \ for file in $$liblist; \ do \ lfile=`basename $$file`; \ rm -f $${lfile}.bld_history $${lfile}.bld_stamp; \ done; \ fi depend:; @mkmf -f $(MAKEFILE) ROOT=$(ROOT) echo:; @echo $(HDRS) $(SRCS) index:; @ctags -wx $(HDRS) $(SRCS) install: $(PROGRAM) @echo Installing $(PROGRAM) in $(DEST) @-strip $(PROGRAM) @if [ $(DEST) != . ]; then \ (rm -f $(DEST)/$(PROGRAM); $(INSTALL) -f $(DEST) $(PROGRAM)); fi lint: $(LINTLIBS) $(SRCS) $(HDRS) $(EXTHDRS) lint $(LINTFLAGS) $(LINTLIBS) $(SRCS) print:; @$(PRINT) $(PRINTFLAGS) $(HDRS) $(SRCS) | $(LP) $(LPFLAGS) tags: $(HDRS) $(SRCS); @ctags $(HDRS) $(SRCS) update: $(DEST)/$(PROGRAM) touch:; @touch $(SRCS) $(HDRS) $(DEST)/$(PROGRAM): $(SRCS) $(LIBS) $(HDRS) $(EXTHDRS) @$(MAKE) -f $(MAKEFILE) ROOT=$(ROOT) DEST=$(DEST) install