version 1.19, 2008/05/06 15:22:12
|
version 1.29, 2008/10/16 21:50:49
|
|
|
STATIC = | STATIC = |
DBNAME = POSTGRESQL | DBNAME = POSTGRESQL |
| |
|
# This optional file has custom definitions created by the configure script |
|
-include $(SRCDIR)/custom.mk |
|
|
# USED BY NEITHER linux_x86_64 nor linux_ia32 | # USED BY NEITHER linux_x86_64 nor linux_ia32 |
PGIPATH = /usr/include/pgsql | PGIPATH = /usr/include/pgsql |
| |
|
|
COMPILER = icc | COMPILER = icc |
|
ifeq ($(JSOC_MACHINE), mac_osx_ppc) |
|
COMPILER = gcc |
|
endif |
|
ifeq ($(JSOC_MACHINE), mac_osx_ia32) |
|
COMPILER = gcc |
|
endif |
| |
# Check for debug vs. release build - release is default. | # Check for debug vs. release build - release is default. |
# To do a debug build, either set the environment variable JSOC_DEBUG to 1, OR | # To do a debug build, either set the environment variable JSOC_DEBUG to 1, OR |
# modify the following line so that DEBUG = 1. The environment variable takes precedence. |
# modify the following line so that DEBUG = 1. The environment variable takes |
DEBUG = 0 |
# precedence. |
|
DEBUG = 1 |
| |
ifdef JSOC_DEBUG | ifdef JSOC_DEBUG |
ifeq ($(JSOC_DEBUG), 1) | ifeq ($(JSOC_DEBUG), 1) |
|
|
# No warnings are displayed, by default, for a release build. | # No warnings are displayed, by default, for a release build. |
WARN = 0 | WARN = 0 |
| |
# Builder can request warnings via environment variable (setenv JSOC_WARN 1). The |
# Builder can request warnings via environment variable (setenv JSOC_WARN 1). |
# environment variable takes precedence. |
# The environment variable takes precedence. |
ifdef JSOC_WARN | ifdef JSOC_WARN |
ifeq ($(JSOC_WARN), 1) | ifeq ($(JSOC_WARN), 1) |
WARN = 1 | WARN = 1 |
|
|
| |
_JSOCROOT_ = .. | _JSOCROOT_ = .. |
| |
|
ifeq ($(JSOC_MACHINE), mac_osx) |
|
F77 = f77 |
|
else |
F77 = ifort | F77 = ifort |
|
endif |
|
|
# if fortran compiler | # if fortran compiler |
D_GCC_FORT = | D_GCC_FORT = |
ifeq ($(F77), ifort) | ifeq ($(F77), ifort) |
Line 73 ifeq ($(JSOC_MACHINE), linux_ia32) |
|
Line 87 ifeq ($(JSOC_MACHINE), 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) |
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 |
# Path to 32-bit 3rd-party libraries |
# Path to appropriate 3rd-party libraries |
FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx/ |
FMATHLIBSL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/ |
CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx/ |
CFITSIOL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/ |
GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx/ |
GSLL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/ |
ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx/ |
ECPGL = -L$(_JSOCROOT_)/lib_third_party/lib/mac_osx_ppc/ |
|
endif |
|
ifeq ($(JSOC_MACHINE), mac_osx_ia32) |
|
# FMATHLIBS = -lmkl_lapack -lmkl -L$(_JSOCROOT_)/lib_third_party/lib/linux-ia32/ -lfftw3f -lcfitsio |
|
# Path to appropriate 3rd-party libraries |
|
FMATHLIBSL = -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/ |
|
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 math libraries - local rules can define a subset |
FMATHLIBS = $(FMATHLIBSL) -lfftw3f -lcfitsio | FMATHLIBS = $(FMATHLIBSL) -lfftw3f -lcfitsio |
CFITSIOLIBS = $(CFITSIOL) -lcfitsio | CFITSIOLIBS = $(CFITSIOL) -lcfitsio |
|
|
|
ifeq ($(COMPILER), gcc) |
|
ifeq ($(JSOC_MACHINE), linux_x86_64) |
|
ifneq ($(CFITSIOFNAME_GCC_X86_64),) |
|
FMATHLIBS = $(FMATHLIBSL) -lfftw3f -l$(CFITSIOFNAME_GCC_X86_64) |
|
CFITSIOLIBS = $(CFITSIOL) -l$(CFITSIOFNAME_GCC_X86_64) |
|
endif |
|
endif |
|
endif |
|
|
GSLLIBS = $(GSLL) -lgsl -lgslcblas | GSLLIBS = $(GSLL) -lgsl -lgslcblas |
| |
### Build flags for all targets | ### Build flags for all targets |
|
|
GCC_CF_GCCCOMP = -DGCCCOMP $(D_GCC_FORT) | GCC_CF_GCCCOMP = -DGCCCOMP $(D_GCC_FORT) |
ICC_CF_ICCCOMP = -DICCCOMP $(D_GCC_FORT) | ICC_CF_ICCCOMP = -DICCCOMP $(D_GCC_FORT) |
| |
|
|
# Disable several warnings/remarks when compiling with icc - icc's Wall is a bit picky, it | # 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 |
Line 193 FLINK = $(F77) $(F_LF_ALL) $(LF_TGT) -o |
|
Line 224 FLINK = $(F77) $(F_LF_ALL) $(LF_TGT) -o |
|
SLBIN = ln -sf ../../_$(JSOC_MACHINE)/$@ ../bin/$(JSOC_MACHINE)/ | SLBIN = ln -sf ../../_$(JSOC_MACHINE)/$@ ../bin/$(JSOC_MACHINE)/ |
SLLIB = ln -sf ../../_$(JSOC_MACHINE)/$@ ../lib/$(JSOC_MACHINE)/ | SLLIB = ln -sf ../../_$(JSOC_MACHINE)/$@ ../lib/$(JSOC_MACHINE)/ |
| |
ALL_LIBS_FPIC = $(LIBDRMSCLIENT_FPIC) $(LIBDBCLIENT_FPIC) $(LIBCMDPARAMS_FPIC) $(LIBTHREADUTIL_FPIC) $(LIBRICECOMP_FPIC) $(LIBDSTRUCT_FPIC) $(LIBMISC_FPIC) $(LIBTIMEIO_FPIC) $(LIBFITSRW_FPIC) |
ALL_LIBS_FPIC = $(LIBDRMSCLIENT_FPIC) $(LIBDBCLIENT_FPIC) $(LIBCMDPARAMS_FPIC) $(LIBTHREADUTIL_FPIC) $(LIBRICECOMP_FPIC) $(LIBDEFS_FPIC) $(LIBDSTRUCT_FPIC) $(LIBMISC_FPIC) $(LIBTIMEIO_FPIC) $(LIBFITSRW_FPIC) |
| |
### Standard parts | ### Standard parts |
# | # |
Line 205 ifneq ($(COMPILER), icc) |
|
Line 236 ifneq ($(COMPILER), icc) |
|
else | else |
SYSLIBS = -lz -ldl -lpthread | SYSLIBS = -lz -ldl -lpthread |
endif | endif |
SRCLIBS = $(LIBTHREADUTIL) $(LIBRICECOMP) $(LIBCMDPARAMS) $(LIBMISC) $(LIBDSTRUCT) $(LIBTIMEIO) $(LIBFITSRW) $(LIBERRLOG) |
SRCLIBS = $(LIBTHREADUTIL) $(LIBRICECOMP) $(LIBCMDPARAMS) $(LIBDEFS) $(LIBDSTRUCT) $(LIBTIMEIO) $(LIBFITSRW) $(LIBERRLOG) $(LIBMISC) |
FSRCLIBS = $(LIBTHREADUTIL) $(LIBRICECOMP) $(LIBCMDPARAMSF) $(LIBMISC) $(LIBDSTRUCT) $(LIBTIMEIO) $(LIBFITSRW) $(LIBERRLOG) |
FSRCLIBS = $(LIBTHREADUTIL) $(LIBRICECOMP) $(LIBCMDPARAMSF) $(LIBDEFS) $(LIBDSTRUCT) $(LIBTIMEIO) $(LIBFITSRW) $(LIBERRLOG) $(LIBMISC) |
| |
########## Libraries to link for server executables, ############## | ########## Libraries to link for server executables, ############## |
########## standalone executables and pipeline modules. ############## | ########## standalone executables and pipeline modules. ############## |
Line 260 $(FMODEXE): LL_TGT := $(LL_TGT) $(CFITSI |
|
Line 291 $(FMODEXE): LL_TGT := $(LL_TGT) $(CFITSI |
|
$(FMODEXE): %_sock: %.o $(FMODLIBS_SOCK) | $(FMODEXE): %_sock: %.o $(FMODLIBS_SOCK) |
$(FLINK) | $(FLINK) |
$(SLBIN) | $(SLBIN) |
|
|
|
$(MODEXE_USEF): LL_TGT := $(LL_TGT) -lpq $(CFITSIOLIBS) |
|
$(MODEXE_USEF): %: %.o $(MODLIBS) |
|
$(FLINK) |
|
$(SLBIN) |
|
|
|
$(MODEXE_USEF_SOCK): LL_TGT := $(LL_TGT) $(CFITSIOLIBS) |
|
$(MODEXE_USEF_SOCK): %_sock: %.o $(MODLIBS_SOCK) |
|
$(FLINK) |
|
$(SLBIN) |