File indexing completed on 2025-04-04 08:05:13
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 ifeq "$(TYPE)" ""
0019 TYPE := $(shell uname)
0020 endif
0021
0022
0023 ifeq "$(TYPE)" "AIX"
0024
0025 FC = xlf
0026 LD = xlf
0027 RM = rm
0028 O = .o
0029 FFLAGS = -O5 -qextname -qstrict -qipa=partition=large
0030 LDFLAGS = -O5 -qextname -qstrict -qipa=partition=large
0031 SYSTEMFILES = $(SRCAIX)
0032
0033 endif
0034
0035
0036 ifeq "$(TYPE)" "Linux"
0037
0038 FC = g77
0039 LD = g77
0040 RM = rm
0041 O = .o
0042 FFLAGS = -g -Wall -Wsurprising -fbounds-check
0043 LDFLAGS = -g
0044 SYSTEMFILES = $(SRCGNU)
0045
0046 endif
0047
0048 ifeq "$(TYPE)" "G4INTERFACE"
0049 FC = gfortran
0050 LD = gfortran
0051 RM = rm
0052 O = .o
0053 FFLAGS = -fPIC -c -C -fno-automatic -fdefault-real-8 -ff2c \
0054 -fno-second-underscore -O -ffixed-line-length-132 \
0055 -frepack-arrays
0056 LDFLAGS = -O
0057 SYSTEMFILES = $(SRCGNU)
0058 ifdef G4DEBUG
0059 FFLAGS += -g
0060 endif
0061 endif
0062
0063 ifeq "$(TYPE)" "Intel"
0064
0065 FC = ifc -O3 -axMK -tpp6 -w95 -ipo
0066 LD = ifc -Vaxlib -O3 -axMK -tpp6 -ipo
0067 RM = rm
0068 O = .o
0069 FFLAGS =
0070 LDFLAGS =
0071 SYSTEMFILES = $(SRCINT) $(SRCERF)
0072
0073 endif
0074
0075
0076 ifeq "$(TYPE)" "HP-UX"
0077
0078 FC = f77
0079 LD = f77
0080 RM = rm
0081 O = .o
0082 FFLAGS = -w
0083 LDFLAGS = -g
0084 SYSTEMFILES = $(SRCGNU)
0085
0086 endif
0087
0088 ifeq "$(TYPE)" "IRIX64"
0089
0090 FC = f77
0091 LD = f77
0092 RM = rm
0093 O = .o
0094 FFLAGS = -mips4 -64 -r10000
0095 LDFLAGS = -mips4 -64 -r10000
0096 SYSTEMFILES = $(SRCSGI)
0097
0098 endif
0099
0100 ifeq "$(TYPE)" "OSF1"
0101
0102 FC = f77
0103 LD = f77
0104 RM = rm
0105 O = .o
0106 FFLAGS = -C -align dcommons
0107 LDFLAGS = -C -align dcommons
0108 SYSTEMFILES = $(SRCALPHA)
0109
0110 endif
0111
0112 ifeq "$(TYPE)" "SunOS"
0113
0114 FC = f77
0115 LD = f77
0116 RM = rm
0117 O = .o
0118 FFLAGS = -w
0119 LDFLAGS = -g
0120 SYSTEMFILES = $(SRCSUN)
0121
0122 endif
0123
0124
0125
0126
0127 ifeq "$(MAIN)" ""
0128 MAIN = UrqmdMain
0129 endif
0130
0131 SRC = addpart.f angdis.f anndec.f blockres.f cascinit.f \
0132 coload.f dectim.f delpart.f detbal.f dwidth.f \
0133 getmass.f getspin.f init.f input.f ityp2pdg.f error.f\
0134 make22.f numrec.f output.f paulibl.f jdecay2.f iso.f\
0135 proppot.f saveinfo.f scatter.f siglookup.f string.f \
0136 tabinit.f whichres.f boxprg.f urqmd.f UrqmdLink.f $(MAIN).f\
0137 g4urqmdblockdata.f
0138 INC = colltab.f comnorm.f coms.f comres.f comstr.f comwid.f \
0139 freezeout.f inputs.f newpart.f options.f boxinc.f \
0140 outcom.f
0141
0142 SRCAIX = genranf.f
0143 SRCGNU = gnuranf.f
0144 SRCALPHA = alpharanf.f
0145 SRCSGI = genranf.f
0146 SRCSUN = gnuranf.f
0147 SRCINT = intranf.f
0148 SRCERF = erf.f
0149
0150
0151
0152 OBJDIR = obj_$(TYPE)
0153 SRCFILES = $(SRC) $(INC) $(SYSTEMFILES) GNUmakefile
0154 OBJECTS = $(addprefix $(OBJDIR)/, $(addsuffix $O, \
0155 $(basename $(SRC) $(SYSTEMFILES))))
0156 TARGET = $(MAIN).$(TYPE)
0157 INSTPATH = ./
0158
0159
0160
0161 $(OBJDIR)/%.o: %.f
0162 $(FC) $(FFLAGS) -c $< -o $@
0163
0164
0165
0166 .PHONY: all mkobjdir clean distclean install
0167
0168 all: mkobjdir $(TARGET)
0169 all.F: $(SRC)
0170 cat $^ > all.F
0171
0172 help:
0173 @grep '^##' GNUmakefile
0174
0175 mkobjdir:
0176 -@mkdir -p $(OBJDIR)
0177
0178 $(TARGET): $(OBJECTS)
0179 $(LD) $(OBJECTS) $(LIBS) $(LDFLAGS) -o $(TARGET)
0180
0181 clean:
0182 -rm $(OBJECTS) loadmap.out
0183
0184 distclean:
0185 -rm $(TARGET) loadmap.out
0186 -rm -r obj_*
0187 -rm *~
0188
0189 install: $(TARGET)
0190 cp $(TARGET) $(INSTPATH)/$(basename $(TARGET))
0191 strip $(INSTPATH)/$(basename $(TARGET))
0192
0193
0194
0195 ./addpart.f: coms.f newpart.f
0196 ./angdis.f: options.f
0197 ./anndec.f: comres.f comwid.f options.f
0198 ./blockres.f: comres.f
0199 ./boxprg.f: boxinc.f coms.f comres.f options.f
0200 ./cascinit.f: coms.f inputs.f options.f
0201 ./coload.f: colltab.f coms.f comres.f newpart.f options.f
0202 ./dectim.f: coms.f colltab.f options.f
0203 ./delpart.f: coms.f comres.f newpart.f
0204 ./detbal.f: coms.f comres.f comwid.f newpart.f options.f
0205 ./dwidth.f: coms.f comres.f comwid.f options.f
0206 ./getmass.f: comnorm.f comres.f
0207 ./getspin.f: comres.f
0208 ./init.f: boxinc.f colltab.f coms.f comres.f freezeout.f inputs.f options.f
0209 ./input.f: boxinc.f coms.f comres.f inputs.f options.f
0210 ./ityp2pdg.f: comres.f
0211 ./iso.f: comres.f newpart.f
0212 ./jdecay2.f: newpart.f
0213 ./make22.f: comres.f comwid.f newpart.f options.f
0214 ./output.f: boxinc.f coms.f comres.f freezeout.f inputs.f newpart.f options.f
0215 ./paulibl.f: coms.f options.f
0216 ./proppot.f: boxinc.f coms.f options.f
0217 ./saveinfo.f: coms.f
0218 ./scatter.f: coms.f comres.f freezeout.f newpart.f options.f
0219 ./siglookup.f: comres.f
0220 ./string.f: comres.f comstr.f options.f
0221 ./tabinit.f: comres.f comwid.f
0222 ./urqmd.f: boxinc.f colltab.f coms.f comres.f inputs.f newpart.f options.f
0223 ./whichres.f: comres.f options.f