Appendix : Profiler --example of arch_spec.mk
by Armin Reichold, 5/98
Example of arch_spec.mk modified to include profiling information
for Kai under IRIX 6
#
# arch_spec.mk
#
# Architecture/site specific makefile fragment
# for global inclusion.
#
# This is included by standard.mk, so should not be included elsewhere
#
#
# David R. Quarrie, Feb 95
# Bob Jacobsen, April 1995 - added a few machines, fixed error notification
# Bob Jacobsen, Feb 96 - SunOS4 option update, as it no longer uses f77bb
# Bob Jacobsen March 1996 - updated compilation options to be consistent
# with f77bb
# Bob Jacobsen April, 1996 - switched to gcc 2.7.2
# Bob Jacobsen June 6, 1996 - switched back, see Hypernews code-mgmt/44.html
# Bob Jacobsen June 26 1996 - OSF1 -static, g++ for CXX, -g for f77
# Bob Jacobsen July 5, 1996 - remove -static from SunOS5 due to missing
# symbols from dl and nsl libraries. Not understood
#
# the default compiler for CC (and hence CXX) was changed to
# the specific 2.7.2 version of gcc on April 24, 1996. This requires
# explicit reference to libstdc++.a due to a design change to g++ itself
# Unfortunately, the HP compiler is NFG, so we stay with the site
# defaults (whatever, but usually 2.6.3) for now
#
# 19970915 kreymer
# AIX - redircted CXX (c++ compilation) to Pasha's freeware 2.7.2.2
#
# 19970911 kreymer@fnal.gov
# Added comments to arch sections
# AIX -
#
# 19971114 gcooper@fnal.gov (Glenn Cooper)
# Add DEFECTS macros; various cleanups from Rob Kennedy;
# use --strict and -D__KAI_STRICT switches for KCC
#
# 8-Dec-1997 jonckheere@fnal.gov
# Added an entirely new NT4 section, removed old CYGWIN32-NT4 section.
#
# general flag values; note these should NOT be overrides
testLink := -L
F90C := f90
ARFLAGS := r
override CXXFLAGS += -g
override FCFLAGS += -g
override CPPMFLAGS += -M # used by all but SunOS5's CC
# Specify cpp to be used by the f7bb replacement in standard.mk
FCPP := $(CPP)
#####################################################
# #
# ########################################### #
# # # #
# # Specific entries for architectures # #
# # # #
# ########################################### #
# #
#####################################################
###########################################
# #
# AIX #
# #
###########################################
ifneq (,$(findstring AIX,$(BFARCH)))
ifneq (,$(findstring -CC,$(BFARCH)))
CC := CC
CXX := CC
CPP := g++
FPP := g77
else
ifneq (,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
AR := KCC
FPP := g77 # this is probably wrong but I don't know what else to use...LSK
override CXXCFLAGS += --no_implicit_include
override CXXFLAGS += +K0
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += --exceptions
endif
override DEFECTS += -DDEFECT_STANDARD_CPLUSPLUS
ARFLAGS := -o
else
CC := gcc -O1
CXX := g++
override CXXFLAGS += -O1 -mcpu=powerpc
# CXX := xlC -O1 -mcpu=ppc /* can't use this, not supported
# CXX := /cdf/software/freeware/powerpc-ibm-aix4.2.0.0/bin/gcc
# add -Wall for more diagnostics
# FCPP := /usr/lib/cpp
FCPP := g++
CPP := g++
FPP := g77
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += -fhandle-exceptions
endif
override DEFECTS += -DDEFECT_GCC27_STRINGSTREAM_STR
override DEFECTS += -DDEFECT_NO_IOSFWD_HEADER
override DEFECTS += -DDEFECT_NO_STDLIB_NAMESPACES
override DEFECTS += -DDEFECT_OLD_IOSTREAM_HEADERS
override DEFECTS += -DDEFECT_OLD_STRINGSTREAM
override DEFECTS += -DDEFECT_OLD_STL_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_COUNT
endif
endif
override FCPPFLAGS += -E -C -P \
-DFORTRAN -DLANGUAGE_FORTRAN -DAIX -DRS6000
override FCPPMFLAGS += -x c
override FCFLAGS += -qhalt=E -qflttrap=OV:ZERO:INV:EN -qextname \
-qfixed=132 -qarch=com
F90C := xlf90
override LOADLIBES += -lstdc++ -lld -lm
DEFINES = -Daix -DUNIX -DAIX
DEFINES += -D__UNIX__ -D__AIX__
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN -DAIX_4_1_4_GPP_2_7_2_1
override DEFECTS += -DDEFECT_NO_APPEND
override DEFECTS += -DDEFECT_NO_READONLY
override DEFECTS += -DDEFECT_NO_STRUCTURE
override DEFINES += $(DATAREP) $(DEFECTS)
override CPPFLAGS += $(DEFINES)
ifdef MAPFILE
override LDFLAGS += -bloadmap:$(MAPFILE)
endif
###########################################
# #
# SunOS5/Solaris #
# #
###########################################
else
ifneq (,$(findstring SunOS5,$(BFARCH)))
testLink := -h
override FCPPFLAGS += -C -P -DSunOS
# -static removed due to link trouble with libdl.so and libnsl.a
# override LDFLAGS += -static
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN
DEFINES = -Dsunos -DUNIX -DSUNOS
DEFINES += -D__UNIX__ -D__SUNOS__
#FNAL-AML: add support of Kai C++
ifneq (,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
FPP := g77
AR := KCC
ARFLAGS := -o
override CXXCFLAGS += --no_implicit_include
# no optimize; require standard code, explicit includes only
override CXXFLAGS += +K0
override CXXFLAGS += -DHAS_BUILTIN_BOOL -LANG:ansi-for-init-scope=on
override CXXFLAGS += --strict
override CPPFLAGS += -D__KAI_STRICT
override DEFECTS += -D__STANDARD_CPLUSPLUS -DDEFECT_STANDARD_CPLUSPLUS
#
# This is what is currently being used by CMS at Fermilab
else
CC := CC
CXX := CC
CPP := CC
FPP := g77
override CPPMFLAGS := -xM
endif
override DEFINES += $(DATAREP) $(DEFECTS)
override CPPFLAGS += $(DEFINES)
###########################################
# #
# SunOS4 #
# #
###########################################
else
ifneq (,$(findstring SunOS4,$(BFARCH)))
CC := gcc -V2.7.2
CXX := g++ -V2.7.2
# the following change to LOADLIBES will happen _after_ the
# specific GNUmakefile's additions, as this file is included by
# standard.mk. This is a Good Thing.
override LOADLIBES += -lstdc++
# RANLIB needs to run in a writable directory
RANLIB = cd $(workdir); ranlib
override LOADLIBES += -lm
testLink := -h
# !!!SLAC specific crock!!! fix bug in backlevel compiler
override CXXFLAGS += -DNULL=0
# Fortran options for this platform
FCPP := /usr/lib/cpp
override FCPPFLAGS += -C -P -DSunOS
override FCFLAGS += -Nl101
# !!!SLAC specific crock!!! FC for new compiler
FC := f77-3.0.1
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN
DEFINES = -Dsunos -DUNIX -DSUNOS $(DATAREP)
DEFINES += -D__UNIX__ -D__SUNOS__
###########################################
# #
# OSF #
# #
###########################################
else
ifneq (,$(findstring OSF,$(BFARCH)))
FPP := g77
ifneq (,$(findstring -CC,$(BFARCH)))
CC := CC
CXX := CC
CPP := g++
else
ifneq (,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
AR := KCC
override CXXCFLAGS += --no_implicit_include
override CXXFLAGS += +K0
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += --exceptions
endif
ARFLAGS := -o
override DEFECTS += -DDEFECT_STANDARD_CPLUSPLUS
else
CC := gcc
CXX := g++
CPP := g++
override FCPPFLAGS += -DFORTRAN -DLANGUAGE_FORTRAN -DOSF1
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += -fhandle-exceptions
endif
override DEFECTS += -DDEFECT_GCC27_STRINGSTREAM_STR
override DEFECTS += -DDEFECT_NO_IOSFWD_HEADER
override DEFECTS += -DDEFECT_OLD_IOSTREAM_HEADERS
override DEFECTS += -DDEFECT_OLD_STRINGSTREAM
override DEFECTS += -DDEFECT_OLD_STL_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_COUNT
override DEFECTS += -DDEFECT_NO_STDLIB_NAMESPACES
override DEFECTS += -DDEFECT_RECL_WORDS
endif
endif
# the following change to LOADLIBES will happen _after_ the
# specific GNUmakefile's additions, as this file is included by
# standard.mk. This is a Good Thing, as its needed during a -static link
override LOADLIBES += -ldnet_stub
override LDFLAGS += -static
RANLIB = ranlib
override FCPPFLAGS += -C -P -DOSF1 -DUNIX -extend_source
DEFINES = -Dosf1 -DUNIX -DOSF1
DEFINES += -D__UNIX__ -D__OSF1__
DEFINES += -DOSF1_4_0_GPP_2_7_2_3
DATAREP = -DDATAREP_LITTLE_IEEE -DDATAREP_LITTLE_ENDIAN
# Set this until we enable FFLAGS += -assume byterecl
override DEFECTS += -DDEFECT_RECL_WORDS
override DEFINES += $(DATAREP) $(DEFECTS)
override CPPFLAGS += $(DEFINES)
###########################################
# #
# VxWorks #
# #
###########################################
else
ifneq (,$(findstring VxWorks,$(BFARCH)))
RANLIB = ranlib
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN
DEFINES = -DUNIX $(DATAREP)
DEFINES += -D__UNIX__
###########################################
# #
# HP-UX #
# #
###########################################
else
ifneq (,$(findstring HP-UX,$(BFARCH)))
testLink := -h
ARFLAGS := rf
# fort77 is standard fortran compiler from days of old
FC := fort77
CC := gcc
CXX := g++
FPP := g77
# Fortran options needed for this platform
# +T added on March 12, 96 for consistency with f77bb, but what does it do?
# [it produces a traceback after a crash - TW]
override FCFLAGS += +ppu +T -K
override FCPPFLAGS += -C -P -DHPUX
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN
DEFINES = -Dhpux -DUNIX -DHPUX $(DATAREP)
DEFINES += -D__UNIX__ -D__HPUX__
###########################################
# #
# IRIX5 #
# #
###########################################
else
ifneq (,$(findstring IRIX5,$(BFARCH)))
testLink := -h
override FCPPFLAGS += -C -P -DIRIX
ifneq (CDF1,$(EXPERIMENT))
# Necessary because we still use ansi CPP for experiments other than CDF1
override FCPPMFLAGS += -x c
override FCFLAGS += -acpp
endif
override FCFLAGS += -G0 -mips2 -static -u -d_lines -Nc32 -Nn30000 -trapuv -extend_source
FPP := f77
ifneq (,$(findstring -CC,$(BFARCH)))
CC := CC
CXX := CC
CPP := g++
override CXXFLAGS += -n32 -experimental -DHAS_BUILTIN_BOOL
else
ifneq (,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
AR := KCC
ARFLAGS := -o
override CXXCFLAGS += --no_implicit_include
override CXXFLAGS += +K0
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += --exceptions --force_typeinfo_local
endif
override DEFECTS += -DDEFECT_STANDARD_CPLUSPLUS
else
CC := cc
CXX := g++
CPP := g++
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += -fhandle-exceptions
endif
endif
endif
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN -DIRIX_5_3_GPP_2_7_2_1
DEFINES = -Dsgi -D_SVR4_SOURCE -DUNIX -DIRIX5 -DMIPS $(DATAREP)
DEFINES += -D__UNIX__ -D__IRIX5__
ifdef MAPFILE
override LDFLAGS += -Wl,-m
LDOUT = >$(MAPFILE)
endif
###########################################
# #
# IRIX6 #
# #
###########################################
else
ifneq (,$(findstring IRIX6,$(BFARCH)))
testLink := -h
DATAREP = -DDATAREP_BIG_IEEE -DDATAREP_BIG_ENDIAN
override DEFECTS =
DEFINES += -DUNIX -DIRIX6 -DMIPS
DEFINES += -D__UNIX__ -D__IRIX6__
FPP := f77
override FCPPMFLAGS =
#=============================================================================
# IRIX6: SGI MipsPro v7.1nx (-n32 -experimental)
#=============================================================================
ifneq (,$(findstring -CC,$(BFARCH)))
CC := CC
CXX := CC
CPP := CC
override CPPMFLAGS := -c -M
override CXXFLAGS += -O0 -mips3
override CXXCFLAGS += -n32
#FNAL/CDF-GC 12-Feb-1998 -experimental flag is only for 7.1 compilers
ifeq (CDF,$(EXPERIMENT))
override CXXCFLAGS += -experimental
endif
#FNAL-GC
# Suppress compiler warnings:
override CXXFLAGS += -woff 1552 -woff 1555 -woff 1174
#FNAL-GC
# Suppress linker warnings:
# 15 - multiple symbol definition
# 47 - instructions that degrade performance on R4000 CPU's
# 84 - library not used to resolve any references
# 85 - same as 84 but for DSO's
override CXXFLAGS += -Wl,-woff,84,-woff,15,-woff,47,-woff,85
override CXXFLAGS += -LANG:ansi-for-init-scope=on
override DEFINES += -DIRIX_6_2_CC32_7_1
override DEFECTS += -DDEFECT_SGICC_STRING_HEADER
override DEFECTS += -DDEFECT_NO_IOSFWD_HEADER
override DEFECTS += -DDEFECT_NO_STDLIB_NAMESPACES
override DEFECTS += -DDEFECT_OLD_IOSTREAM_HEADERS
override DEFECTS += -DDEFECT_OLD_STRINGSTREAM
override DEFECTS += -DDEFECT_OLD_STDC_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_COUNT
override DEFECTS += -DHAS_BUILTIN_BOOL # CLHEP-related. Still needed?
override FCFLAGS += -G0 -static -n32 -u -d_lines
override FCFLAGS += -extend_source -woff 1189
#=============================================================================
# IRIX6: Kai C++ v3.2
#=============================================================================
else
ifneq (,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
AR := KCC
ARFLAGS := -o
override CPPFLAGS += -D__KAI_STRICT
override CXXCFLAGS += --no_implicit_include
ifeq (CDF,$(EXPERIMENT))
override CXXCFLAGS += -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED
endif
override CXXFLAGS += +K0 -O0
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += --exceptions --force_typeinfo_local
override CXXFLAGS += -mips2 --no_split
override ARFLAGS := --no_split $(ARFLAGS)
AR := kcc-ar2
else
override CXXFLAGS += --backend -mips2
endif
override CXXFLAGS += --strict
override DEFINES += -DIRIX_6_2_KCC_3_2
override DEFECTS += -D__STANDARD_CPLUSPLUS -DDEFECT_STANDARD_CPLUSPLUS
override FCFLAGS += -G0 -static -32 -mips2 -u -d_lines -trapuv
override FCFLAGS += -extend_source
#
# hack -- turn on optimization and profiling
#
override CXXCFLAGS := $(filter-out -g%,$(CXXCFLAGS))
override CXXFLAGS := $(filter-out -g%,$(CXXFLAGS))
override FCFLAGS := $(filter-out -g%,$(FCFLAGS))
override CXXCFLAGS := $(filter-out -O%,$(CXXCFLAGS))
override CXXFLAGS := $(filter-out -O%,$(CXXFLAGS))
override FCFLAGS := $(filter-out -O%,$(FCFLAGS))
override CXXCFLAGS := $(filter-out +K%,$(CXXCFLAGS))
override CXXFLAGS := $(filter-out +K%,$(CXXFLAGS))
override FCFLAGS := $(filter-out +K%,$(FCFLAGS))
override CXXCFLAGS += +K2 -g3
override CXXFLAGS += +K2 -g3
override FCFLAGS += -O2 -g3
#=============================================================================
# IRIX6: GNU C++ v2.7
#=============================================================================
else
CC := gcc
CXX := g++
CPP := g++
override CXXFLAGS += -O0 -mips2
ifeq (D0,$(EXPERIMENT))
override CXXFLAGS += -fhandle-exceptions
endif
override DEFINES += -DIRIX_6_2_GPP_2_7_2_1
override DEFECTS += -DDEFECT_GCC27_STRINGSTREAM_STR
override DEFECTS += -DDEFECT_NO_IOSFWD_HEADER
override DEFECTS += -DDEFECT_NO_STDLIB_NAMESPACES
override DEFECTS += -DDEFECT_OLD_IOSTREAM_HEADERS
override DEFECTS += -DDEFECT_OLD_STRINGSTREAM
override DEFECTS += -DDEFECT_OLD_STL_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_COUNT
override FCFLAGS += -G0 -static -32 -mips2 -u -d_lines -trapuv
override FCFLAGS += -extend_source
endif
endif
#=============================================================================
# IRIX6: Fortran support
#=============================================================================
override FCPPFLAGS += -C -P -DIRIX
# Set this until we enable FFLAGS += -byterecl
override DEFECTS += -DDEFECT_RECL_WORDS
# Necessary because we still use ansi CPP for experiments other than CDF1
ifneq (CDF1,$(EXPERIMENT))
override FCFLAGS += -acpp
endif
#=============================================================================
# IRIX6: Mapfile support
#=============================================================================
ifdef MAPFILE
override LDFLAGS += -Wl,-m
override LDOUT = >$(MAPFILE)
endif
#=============================================================================
# IRIX6: Concatenate DEFINES together and add list to CPP and CXX flags
# Everything in CPPFLAGS is used in BOTH dependency discovery and compilation
#=============================================================================
override DEFINES += $(DATAREP) $(DEFECTS)
override CPPFLAGS += $(DEFINES)
###########################################
# #
# Linux2 #
# #
###########################################
else
ifneq (,$(findstring Linux,$(BFARCH)))
DATAREP = -DDATAREP_LITTLE_IEEE -DDATAREP_LITTLE_ENDIAN
override DEFECTS =
DEFINES += -DUNIX -DLINUX
DEFINES += -D__UNIX__ -D__LINUX__
override CPPFLAGS += -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE
override CPPFLAGS += -D_POSIX_C_SOURCE=2 -D_XOPEN_SOURCE
FPP := g77
#=============================================================================
# Linux2: Kai C++ v3.2
#=============================================================================
ifeq (-KCC,$(findstring -KCC,$(BFARCH)))
CPP := KCC
CC := KCC --c
CXX := KCC
AR := KCC
ARFLAGS := -o
override CPPFLAGS += -D__KAI_STRICT -D__STRICT_ANSI__
override CXXCFLAGS += --no_implicit_include
override CXXFLAGS += +K0 -O0
override CXXFLAGS += --backend -m486
override CXXFLAGS += --strict
override DEFINES += -DLINUX_2_0_KCC_3_2
override DEFECTS += -D__STANDARD_CPLUSPLUS -DDEFECT_STANDARD_CPLUSPLUS
#=============================================================================
# Linux2: Gnu C++ v2.7
#=============================================================================
else
CC := gcc
CXX := g++
CPP := g++
override CXXFLAGS += -O0 -m486
override DEFINES += -D_FIXED_TYPES_ENV=1
override DEFECTS += -DDEFECT_GCC27_STRINGSTREAM_STR
override DEFECTS += -DDEFECT_NO_IOSFWD_HEADER
override DEFECTS += -DDEFECT_NO_STDLIB_NAMESPACES
override DEFECTS += -DDEFECT_OLD_IOSTREAM_HEADERS
override DEFECTS += -DDEFECT_OLD_STRINGSTREAM
override DEFECTS += -DDEFECT_OLD_STL_HEADERS
override DEFECTS += -DDEFECT_OLD_STL_COUNT
endif
#=============================================================================
# Linux2: Fortran support
#=============================================================================
FC := g77
override FCFLAGS += -fdollar-ok -fno-automatic
override FCFLAGS += -fno-second-underscore -ffixed-line-length-132
override FCFLAGS += -fno-globals -w
override FCFLAGS += -fdebug-kludge
override FCFLAGS += -DFORTRAN -DLANGUAGE_FORTRAN
override FCPPFLAGS += -C -P -DLinux -DUNIX
override FCPPFLAGS += -DFORTRAN -DLANGUAGE_FORTRAN
override DEFECTS += -DDEFECT_NO_JZEXT
override DEFECTS += -DDEFECT_NO_INTHEX
override DEFECTS += -DDEFECT_NO_INTHOLLERITH
override DEFECTS += -DDEFECT_NO_READONLY
override DEFECTS += -DDEFECT_NO_DIRECT_FIXED
override DEFECTS += -DDEFECT_NO_STRUCTURE
# We still use ansi CPP for experiments other than CDF run 1
ifneq (CDF1,$(EXPERIMENT))
override FCPPMFLAGS += -x c
endif
#=============================================================================
# Linux2: Concatenate DEFINES together and add list to CPP and CXX flags
# Everything in CPPFLAGS is used in BOTH dependency discovery and compilation
#=============================================================================
override DEFINES += $(DATAREP) $(DEFECTS)
override CPPFLAGS += $(DEFINES)
###########################################
# #
# NT4 #
# #
###########################################
else
ifneq (,$(findstring NT4,$(BFARCH)))
ifeq (-GCC,$(findstring -GCC,$(BFARCH)))
CC := gcc
CXX := gcc
CPP := gcc
FPP := gcc
endif
ifeq (-MSVC50,$(findstring -MSVC50,$(BFARCH)))
CC := srt_ntcc
CXX := srt_ntcc
FC := srt_ntf77
CPP := gcc -E -nostdinc -isystem /msvcinc $(DEFINE_FLAGS)
FPP := gcc -E -nostdinc -isystem /msvcinc $(DEFINE_FLAGS)
LD := echo "*********WARNING: LD NOT SUPPORTED ON THIS ARCHETECTURE"
AR := srt_ntlib
override DEFINES += -DNT_MSVCPP
override DEFECTS += -D__STANDARD_CPLUSPLUS
override DEFECTS += -DDEFECT_NO_VIRTUAL_COVARIANCE
override DEFECTS += -DDEFECT_TYPE_INFO_GLOBAL
override DEFECTS += -DDEFECT_CERNLIB_UPPERCASE
DEFINE_FLAGS := -DWIN32 -D_DEBUG -D_WINDOWS -D_WIN32_WINNT=0x0400 -D_M_IX86 $(DEFECTS) $(DEFINES)
#
# Standard debug flags for the C/C++ compiler:
# Od -- no optimizations
# MTd -- Use the multithreaded dll, debug version
# nologo -- We hate MS, after all, right?
# GX -- turn on exceptions processing
# Z7 -- Put all debug info in the .obj file
# Zi -- Put all debug info in the program database
# Gm -- Enable minimal rebuild feature
# W3 -- Warnings level 3
# YX -- Use precompiled headers.
# GR -- Turn RTTI on
# Fd -- Location of the program database. This is a filename that must be translated,
# so we don't pass it directly through...
#
# Note -- the "-NTxxxx" tells the srt_ntcc script to pass the option straight
# through to the command line as "/xxxx" (where xxxx can be any length).
#
override CPPFLAGS += $(DEFINE_FLAGS)
override CXXFLAGS = -NTOd -NTMTd -NTnologo -NTGX -NTZi -NTGm -Fd$(workdir) -NTW3 -NTGR
override CCFLAGS = $(CXXFLAGS)
#
# Flags for fortran
#
# nologo -- Don't print out the Digital Flag banner (but digital is almost
# out of biznez -- don't they need the publicity?
# Od -- No optimizations
# MTd -- Use the multithreaded dll, debug version
# Z7 -- Full debug info, stuck in the .obj file
# iface:nomixed_str_len_arg -- Put all the string lengths at end of arg list
# assume:underscore -- Append a "_" to all routine names, just like UNIX (duh)
# names:lowercase -- All routine names are really lower case.
# warn:nofileopt -- Don't complain about inability to do file-to-file optimizations
# extend_source:132 -- Don't stop looking at source at 72 columns.
#
override FCFLAGS = -NTnologo -NTOd -NTMTd -NTZ7 -NTiface:nomixed_str_len_arg \
-NTassume:underscore -NTnames:lowercase -NTwarn:nofileopt -NTextend_source:132
#
# Flags for the linker
#
# nologo -- Don't print out logo
#
override LDFLAGS += -NTnologo
#
# Files to place the cahce for symbolic link resolution in. We do this because
# it is so dang slow when trying to connect to a server. This is pretty ugly
# cause we have to parse this path without the cache the first time, but I don't
# know how else to do it (esp. if the path involves aliases!).
#
SRT_ALIAS_CACHE_FILE=$(bindir)/../../tmp/$(BFARCH)/srt_alias_file.python_db
SRT_SYM_CACHE_FILE=$(bindir)/../../tmp/$(BFARCH)/srt_sym_file.python_db
export SRT_ALIAS_CACHE_FILE
export SRT_SYM_CACHE_FILE
#
lib=$(LIBNT)
export lib
endif
###########################################
# #
# NULL #
# #
###########################################
else
# Nothing found - complain
ERROR := $(shell echo Could not match BFARCH: $(BFARCH) for system >& 2 )
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
LocalWords: cdfsoft cshrc CVSROOT