# Main make.code.defn file for thorn IEEEIO # Source files in this directory SRCS = IO.cc IEEEIO.cc Bounds.cc Writer.cc AMRwriter.cc AmrFileReader.cc \ AmrGridReader.cc AmrUcdFileReader.cc AmrUcdGridHierarchy.cc # enable HDF5 if available ifneq ($(HDF5_LIBS),) SRCS += H5IO.cc endif # Work out some thorn specific compilation flags # These are stripped down lines from the original IEEEIO makefile # The 9000 names of the cygwin tools and T3E... TMPUN := $(shell uname) ifeq ($(TMPUN), CYGWIN32_95) UNAME = CYGWIN else ifeq ($(TMPUN), CYGWIN32_NT) UNAME = CYGWIN else ifeq ($(TMPUN), CYGWIN_NT-4.0) UNAME = CYGWIN else ifeq ($(TMPUN), CYGWIN_NT-5.0) UNAME = CYGWIN else ifeq ($(TMPUN), CYGWIN_NT-5.2) UNAME = CYGWIN else UNAME := $(shell uname | perl -pe 's/(sn\d\d\d\d|jsimpson)/UNICOS\/mk/') endif endif endif endif endif # 64 Bit Irix ifeq ($(UNAME), IRIX64) # check for native or GNU compiler ifeq ($(CXX), CC) CXXFLAGS += -DANSI -ptused -DSGI else CXXFLAGS += -DANSI endif endif # 32 Bit Irix ifeq ($(UNAME), IRIX) # check for native or GNU compiler ifeq ($(CXX), CC) CXXFLAGS += -DANSI -ptused -DSGI else CXXFLAGS += -DANSI endif endif # HP ifeq ($(UNAME), HP-UX) CXXFLAGS += -DANSI -DHP endif # Alpha ifeq ($(UNAME), OSF1) CXXFLAGS += -DANSI # OSF's native compiler needs -tall for proper template instantiation ifeq ($(CXX), cxx) CXXFLAGS += -tall endif endif # Linux ifeq ($(UNAME), Linux) CXXFLAGS += -DANSI # Portland group compiler < 7.x has special flag # to control instantiation of template functions ifeq ($(CXX), pgCC) IS_PGI7 := $(shell pgCC -V | grep 'pgCC 7') ifeq ($(IS_PGI7),) CXXFLAGS += -tused endif endif endif # Macintosh /PowerMach-MachTen ifeq ($(UNAME), machten) CXXFLAGS += -DANSI endif # Cygwin / Win32 ifeq ($(UNAME), CYGWIN) CFLAGS += -DANSI -DWIN32 -DIEEEIO_EXPORTS CXXFLAGS += -DANSI -DWIN32 -DIEEEIO_EXPORTS endif # T3E ifeq ($(UNAME), UNICOS/mk) CXXFLAGS += -DANSI -DT3E -DFFIO -hinstantiate=used endif # CRAY X-1 ifeq ($(UNAME), UNICOS/mp) CXXFLAGS += -DANSI -DFFIO -hinstantiate=used endif # SP ifeq ($(UNAME), AIX) CXXFLAGS += -DANSI endif # Fujitsu VPP700 ifeq ($(UNAME), UNIX_System_V) CXXFLAGS += -DANSI -DFUJITSU endif # HITACHI ifeq ($(UNAME), HI-UX/MPP) CXXFLAGS += -DANSI -DHITACHI endif # SunOS ifeq ($(UNAME), SunOS) CXXFLAGS += -DANSI -DSOLARIS endif # Darwin ifeq ($(UNAME), Darwin) CXXFLAGS += -DANSI endif # NECX SX-5 ifeq ($(OS), superux) CXXFLAGS += -DANSI -T all -DSX5 CPPFLAGS=-DSX5 endif # # Template instantion flags for SUN OS #( silly compiler can't do implicit global template instantion!) #CXX_FLAGS_solaris2.8 = -instances=global CXX_FLAGS_solaris2.7 = -instances=static CXX_FLAGS_solaris2.8 = -instances=static CXXFLAGS += $(CXX_FLAGS_${OS})