(file) Return to make_basic.mk CVS log (file) (dir) Up to [Development] / JSOC

Diff for /JSOC/make_basic.mk between version 1.47 and 1.53

version 1.47, 2009/07/24 14:13:48 version 1.53, 2009/08/20 18:46:10
Line 2  VPATH = $(SRCDIR)
Line 2  VPATH = $(SRCDIR)
 STATIC = STATIC =
 DBNAME = POSTGRESQL DBNAME = POSTGRESQL
  
 # This optional file has custom definitions created by the configure script  _JSOCROOT_ = ..
 -include $(SRCDIR)/custom.mk  
  
 PGIPATH = /usr/include/pgsql PGIPATH = /usr/include/pgsql
   ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/$(JSOC_MACHINE)/
  
 _JSOCROOT_ = ..  # This optional file has custom definitions created by the configure script
   -include $(SRCDIR)/custom.mk
  
 #***********************************************************************************************# #***********************************************************************************************#
 # #
Line 59  endif
Line 60  endif
 # #
 # WARNINGS # WARNINGS
 # #
 # No warnings are displayed, by default, for a release build.  # Warnings ARE displayed, by default, for a release build.
 # #
 WARN = 0  WARN = 1
  
 # Builder can request warnings via environment variable (setenv JSOC_WARN 1). # Builder can request warnings via environment variable (setenv JSOC_WARN 1).
 #   The environment variable takes precedence. #   The environment variable takes precedence.
Line 73  WARN = 0
Line 74  WARN = 0
 endif endif
 endif endif
  
 # Warnings are always displayed for a debug build.  ICC_WARNMORE =
 ifeq ($(DEBUG), 1)  ifdef JSOC_WARNICC
 WARN = 1  ifeq ($(COMPILER), icc)
   ICC_WARNMORE = $(JSOC_WARNICC)
 endif endif
   endif
   
 #***********************************************************************************************# #***********************************************************************************************#
  
  
Line 101  ifeq ($(JSOC_MACHINE), linux_x86_64)
Line 105  ifeq ($(JSOC_MACHINE), linux_x86_64)
   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/
   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/
   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/
   ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/  #  ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_x86_64/
 endif endif
 ifeq ($(JSOC_MACHINE), linux_ia32) ifeq ($(JSOC_MACHINE), linux_ia32)
 #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio
Line 109  ifeq ($(JSOC_MACHINE), linux_ia32)
Line 113  ifeq ($(JSOC_MACHINE), linux_ia32)
   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/
   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/
   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/
   ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/  #  ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/linux_ia32/
 endif endif
 ifeq ($(JSOC_MACHINE), mac_osx_ppc) ifeq ($(JSOC_MACHINE), mac_osx_ppc)
 #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio
Line 117  ifeq ($(JSOC_MACHINE), mac_osx_ppc)
Line 121  ifeq ($(JSOC_MACHINE), mac_osx_ppc)
   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/
   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/
   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/
   ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/  #  ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/
 endif endif
 ifeq ($(JSOC_MACHINE), mac_osx_ia32) ifeq ($(JSOC_MACHINE), mac_osx_ia32)
 #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio #    FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio
Line 125  ifeq ($(JSOC_MACHINE), mac_osx_ia32)
Line 129  ifeq ($(JSOC_MACHINE), mac_osx_ia32)
   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/   FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/
   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/   CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/
   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/   GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/
   ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/  #  ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ia32/
 endif endif
  
 # All 3rd-party math libraries - local rules can define a subset  # All 3rd-party libraries - local rules can define a subset
 FMATHLIBS = $(FMATHLIBSL) -lfftw3f FMATHLIBS = $(FMATHLIBSL) -lfftw3f
 CFITSIOLIBS = $(CFITSIOL) -lcfitsio CFITSIOLIBS = $(CFITSIOL) -lcfitsio
   ECPGLIBS = $(ECPGL) -lpq
  
 ifeq ($(COMPILER), gcc) ifeq ($(COMPILER), gcc)
         ifeq ($(JSOC_MACHINE), linux_x86_64)         ifeq ($(JSOC_MACHINE), linux_x86_64)
Line 168  endif
Line 173  endif
 # #
 # WARNINGS # WARNINGS
 # #
 # Disable several warnings/remarks when compiling with icc - icc's Wall is a bit picky, it  # NO LONGER USED - Disable several warnings/remarks when compiling with icc - icc's Wall is a bit picky, it
 # complains about extern declarations in .c files. # complains about extern declarations in .c files.
 #   1418 (remark) - external function definition with no prior declaration #   1418 (remark) - external function definition with no prior declaration
 #   1419 (warning) - external declaration in primary source file #   1419 (warning) - external declaration in primary source file
 #   310 (remark) - old style function declaration (pre-ANSI) #   310 (remark) - old style function declaration (pre-ANSI)
   #   279 ?
 #   981 (remark) - operands are evaluted in unspecified order #   981 (remark) - operands are evaluted in unspecified order
  
   # list of warnings to turn into errors
   ICC_WARNTOERR = -we266
   
 ifeq ($(WARN), 1) ifeq ($(WARN), 1)
 # Show warnings (always true for a debug build). # Show warnings (always true for a debug build).
 ICC_WARN = -Winline -Wall -wd1418 -wd1419 -wd310 -wd279 -wd981 -Wno-comment  ICC_WARN = -Winline -Wall $(ICC_WARNMORE)
 GCC_WARN = -Winline -Wall -Wno-comment GCC_WARN = -Winline -Wall -Wno-comment
 FCOMPILER_WARN = FCOMPILER_WARN =
 else else
 # Don't show warnings. # Don't show warnings.
 ICC_WARN = -w0 -vec-report0 -Wno-comment  ICC_WARN = -w0 -vec-report0 -Wno-comment $(ICC_WARNTOERR)
 GCC_WARN = -Wno-comment GCC_WARN = -Wno-comment
 ifeq ($(FCOMPILER), ifort) ifeq ($(FCOMPILER), ifort)
 FCOMPILER_WARN = -vec-report0 FCOMPILER_WARN = -vec-report0
Line 190  else
Line 199  else
 FCOMPILER_WARN = FCOMPILER_WARN =
 endif endif
 endif endif
   
 #***********************************************************************************************# #***********************************************************************************************#
  
  
Line 214  F_LF_ALL = -nofor_main -no-ipo
Line 224  F_LF_ALL = -nofor_main -no-ipo
 GCC_CF_GCCCOMP  = -DGCCCOMP GCC_CF_GCCCOMP  = -DGCCCOMP
 ICC_CF_ICCCOMP  = -DICCCOMP ICC_CF_ICCCOMP  = -DICCCOMP
  
   CCFLAGS_OPT     :=
   
   ifeq ($(COMPILER), icc)
     ifeq ($(JSOC_MACHINE), linux_x86_64)
       CCFLAGS_OPT := -xW
     endif
   endif
   
 # can't figure out how to get stupid make to do if/else if/else # can't figure out how to get stupid make to do if/else if/else
 ifeq ($(DEBUG), 0) ifeq ($(DEBUG), 0)
   GCC_CF_ALL    = -I$(SRCDIR)/base/include -std=gnu99 -O2 $(GCC_WARN) $(GCC_CF_GCCCOMP) $(CUSTOMSW)   GCC_CF_ALL    = -I$(SRCDIR)/base/include -std=gnu99 -O2 $(GCC_WARN) $(GCC_CF_GCCCOMP) $(CUSTOMSW)
 # -xW tells the icc compiler to optimize for Pentium 4 # -xW tells the icc compiler to optimize for Pentium 4
   ICC_CF_ALL = -I$(SRCDIR)/base/include -std=c99 -D_GNU_SOURCE -xW $(ICC_WARN) $(ICC_CF_ICCCOMP) $(CUSTOMSW)    ICC_CF_ALL = -I$(SRCDIR)/base/include -std=c99 -D_GNU_SOURCE $(CCFLAGS_OPT) $(ICC_WARN) $(ICC_CF_ICCCOMP) $(CUSTOMSW)
  
   ifeq ($(JSOC_MACHINE), linux_x86_64)   ifeq ($(JSOC_MACHINE), linux_x86_64)
     GCC_CF_ALL  = -I$(SRCDIR)/base/include -std=gnu99 -O2 -march=opteron $(GCC_WARN) $(GCC_CF_GCCCOMP) $(CUSTOMSW)     GCC_CF_ALL  = -I$(SRCDIR)/base/include -std=gnu99 -O2 -march=opteron $(GCC_WARN) $(GCC_CF_GCCCOMP) $(CUSTOMSW)
Line 250  ifeq ($(FCOMPILER), ifort)
Line 268  ifeq ($(FCOMPILER), ifort)
   ifeq ($(JSOC_MACHINE), linux_x86_64)   ifeq ($(JSOC_MACHINE), linux_x86_64)
     FCFLAGS_OPT := -xW     FCFLAGS_OPT := -xW
   endif   endif
   FCLFAGS_INIT := -ftrapuv    FCFLAGS_INIT := -ftrapuv
 else else
   # must be gfortran   # must be gfortran
   FCFLAGS_OPT   := -g    FCFLAGS_OPT   :=
   FCLFAGS_INIT  :=    FCFLAGS_INIT  :=
 endif endif
  
 ifeq ($(DEBUG), 0) ifeq ($(DEBUG), 0)
 # -xW optimizes ifort compilation for Pentium 4 # -xW optimizes ifort compilation for Pentium 4
 # -ftrapuv initializes stack local variables to an unusual value to aid error detection. # -ftrapuv initializes stack local variables to an unusual value to aid error detection.
   F_CF_ALL      := $(F_CF_ALL) $(FCFLAGS_OPT) $(FCLFAGS_INIT) $(FCOMPILER_WARN)    F_CF_ALL      := $(F_CF_ALL) $(FCFLAGS_OPT) $(FCOMPILER_WARN)
 else else
   F_CF_ALL      := $(F_CF_ALL) $(FCLFAGS_INIT) $(FCOMPILER_WARN)    F_CF_ALL      := $(F_CF_ALL) -g $(FCFLAGS_INIT) $(FCOMPILER_WARN)
 endif endif
 #***********************************************************************************************# #***********************************************************************************************#
  
Line 370  $(FEXE): %: %.o $(FMATHLIBS)
Line 388  $(FEXE): %: %.o $(FMATHLIBS)
                 $(FLINK)                 $(FLINK)
                 $(SLBIN)                 $(SLBIN)
  
 $(SERVEREXE):   LL_TGT := $(LL_TGT) -lpq $(CFITSIOLIBS)  $(SERVEREXE):   LL_TGT := $(LL_TGT) $(ECPGLIBS) $(CFITSIOLIBS)
 $(SERVEREXE):   %:      %.o $(SERVERLIBS) $(SERVEREXE):   %:      %.o $(SERVERLIBS)
                         $(LINK)                         $(LINK)
                         $(SLBIN)                         $(SLBIN)
  
 $(MODEXE):      LL_TGT := $(LL_TGT) -lpq $(CFITSIOLIBS)  $(MODEXE):      LL_TGT := $(LL_TGT) $(ECPGLIBS) $(CFITSIOLIBS)
 $(MODEXE):      %:      %.o $(MODLIBS) $(MODEXE):      %:      %.o $(MODLIBS)
                         $(LINK)                         $(LINK)
                         $(SLBIN)                         $(SLBIN)
Line 393  $(FMODEXE_SOCK): %_sock: %.o $(FMODL
Line 411  $(FMODEXE_SOCK): %_sock: %.o $(FMODL
                         $(SLBIN)                         $(SLBIN)
  
 # MODEXE_USEF contains all C direct-connect modules that use third-party Fortran libraries. # MODEXE_USEF contains all C direct-connect modules that use third-party Fortran libraries.
 $(MODEXE_USEF): LL_TGT := $(LL_TGT) -lpq $(CFITSIOLIBS) $(FMATHLIBS)  $(MODEXE_USEF): LL_TGT := $(LL_TGT) $(ECPGLIBS) $(CFITSIOLIBS) $(FMATHLIBS)
 $(MODEXE_USEF):     %:  %.o $(MODLIBS) $(MODEXE_USEF):     %:  %.o $(MODLIBS)
                         $(FLINK)                         $(FLINK)
                         $(SLBIN)                         $(SLBIN)


Legend:
Removed from v.1.47  
changed lines
  Added in v.1.53

Karen Tian
Powered by
ViewCVS 0.9.4