Changeset 18313


Ignore:
Timestamp:
07/31/14 21:36:14 (11 years ago)
Author:
glperez
Message:

CHG: Major change to build system. Moved last non libtool libraries to libtool. Added m4 macros to enable standalone functionality.

Location:
issm/trunk-jpl
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/m4/issm_options.m4

    r18261 r18313  
    4545        AC_MSG_RESULT($enable_development)
    4646         dnl }}}
    47     dnl Shared build {{{
    48     AC_ARG_ENABLE([sharedlibs],                                                dnl feature
    49         AS_HELP_STRING([--enable-sharedlibs], [produce libISSM.so.0]),         dnl help string
    50         [enable_sharedlibs=$enableval],                                        dnl action if given
    51         [enable_sharedlibs=no])                                                dnl action if not given
    52          AC_MSG_CHECKING(for shared library build)
    53     AM_CONDITIONAL([SHAREDLIBS], [test x$enable_sharedlibs = xyes])
    54          AC_MSG_RESULT($enable_sharedlibs)
     47    dnl Standalone Options {{{
     48    AC_ARG_ENABLE([standalone-modules],                                                      dnl feature
     49        AS_HELP_STRING([--enable-standalone-modules], [produce standalone modules]),         dnl help string
     50        [enable_standalone_modules=$enableval],                                              dnl action if given
     51        [enable_standalone_modules=no])                                                      dnl action if not given
     52        AC_MSG_CHECKING(for standalone modules build)
     53    AM_CONDITIONAL([STANDALONE_MODULES], [test x$enable_standalone_modules = xyes])
     54        AC_MSG_RESULT($enable_standalone_modules)
     55
     56    AC_ARG_ENABLE([standalone-executables],                                                  dnl feature
     57        AS_HELP_STRING([--enable-standalone-executables], [produce standalone executables]), dnl help string
     58        [enable_standalone_executables=$enableval],                                          dnl action if given
     59        [enable_standalone_executables=no])                                                  dnl action if not given
     60        AC_MSG_CHECKING(for standalone executables build)
     61    AM_CONDITIONAL([STANDALONE_EXECUTABLES], [test x$enable_standalone_executables = xyes])
     62        AC_MSG_RESULT($enable_standalone_executables)
     63
     64    AC_ARG_ENABLE([standalone-libraries],                                                    dnl feature
     65        AS_HELP_STRING([--enable-standalone-libraries], [produce standalone libraries]),     dnl help string
     66        [enable_standalone_libraries=$enableval],                                            dnl action if given
     67        [enable_standalone_libraries=no])                                                    dnl action if not given
     68        AC_MSG_CHECKING(for standalone libraries build)
     69    AM_CONDITIONAL([STANDALONE_LIBRARIES], [test x$enable_standalone_libraries = xyes])
     70        AC_MSG_RESULT($enable_standalone_libraries)
    5571    dnl }}}
    5672    dnl Version{{{
     
    182198                        ;;
    183199                   *)
    184                       MEXLINK=$($MATLAB_ROOT/bin/mex -v 2>&1 < /dev/null | grep LDFLAGS     | sed -e "s/         LDFLAGS            = //g")
    185                  MEXLIB=$( $MATLAB_ROOT/bin/mex -v 2>&1 < /dev/null | grep CXXLIBS     | sed -e "s/         CXXLIBS            = //g")
    186                       MEXEXT=$( $MATLAB_ROOT/bin/mex -v 2>&1 < /dev/null | grep LDEXTENSION | sed -e "s/         LDEXTENSION        = //g")
    187 
     200           MEXLINK=$(mex -v 2>&1 < /dev/null | grep LDFLAGS     | sed -e "s/         LDFLAGS            = //       g" | sed -e "s/-[[^ ]]*mexFunction\\.map//g")
     201           MEXLIB=$( $MATLAB_ROOT/bin/mex -v 2>&1 < /dev/null | grep CXXLIBS     | sed -e "s/         CXXLIBS            = //g")
     202                     MEXEXT=$( $MATLAB_ROOT/bin/mex -v 2>&1 < /dev/null | grep LDEXTENSION | sed -e "s/         LDEXTENSION        = //g")
    188203                                dnl version 2014 and up
    189204                                if test "x$MEXEXT" = "x" ; then
     
    319334                                        DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota -lteuchos -lpecos -lfftw3 -llhs -levidence -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -lopt -lpsuade -lnewmat -lncsuopt -lgsl -lquadrature -lcoliny -lcolin -lpebbl -lutilib -l3po -lnappspack -lappspack -lconveyor -lshared -lcdd -lamplsolver"
    320335                                else if test x$DAKOTA_VERSION = x5.1 || test x$DAKOTA_VERSION = x5.2; then
    321                                         DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota -lteuchos -lpecos -llhs -lsparsegrid -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -loptpp -lpsuade -lncsuopt -lcolin -linterfaces -lmomh -lscolib -lpebbl -ltinyxml -lutilib -l3po -lhopspack -lnidr -lamplsolver -lboost_signals -lboost_regex -lboost_filesystem"
     336                                        DAKOTALIB="-L$DAKOTA_ROOT/lib -L$BOOST_ROOT/lib -ldakota -lteuchos -lpecos -llhs -lsparsegrid -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -loptpp -lpsuade -lncsuopt -lcolin -linterfaces -lmomh -lscolib -lpebbl -ltinyxml -lutilib -l3po -lhopspack -lnidr -lamplsolver -lboost_signals -lboost_regex -lboost_filesystem"
    322337                                else
    323338                                        AC_MSG_ERROR([Dakota version not found or version ($DAKOTA_VERSION) not supported!]);
     
    329344                                        DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota -lteuchos -lpecos -lfftw3 -llhs -levidence -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -lopt -lpsuade -lnewmat -lncsuopt -lgsl -lquadrature -lcoliny -lcolin -lpebbl -lutilib -l3po -lnappspack -lappspack -lconveyor -lshared -lcdd -lamplsolver"
    330345                                else if test x$DAKOTA_VERSION = x5.1 || test x$DAKOTA_VERSION = x5.2; then
    331                                         DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota -lteuchos -lpecos -llhs -lsparsegrid -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -loptpp -lpsuade -lncsuopt -lcolin -linterfaces -lmomh -lscolib -lpebbl -ltinyxml -lutilib -l3po -lhopspack -lnidr -lamplsolver -lboost_signals -lboost_regex -lboost_filesystem -lboost_system -ldl"
     346-                                       DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota -lteuchos -lpecos -llhs -lsparsegrid -lsurfpack -lconmin -lddace -lfsudace -ljega -lcport -loptpp -lpsuade -lncsuopt -lcolin -linterfaces -lmomh -lscolib -lpebbl -ltinyxml -lutilib -l3po -lhopspack -lnidr -lamplsolver -lboost_signals -lboost_regex -lboost_filesystem -lboost_system -ldl"
    332347                                else if test x$DAKOTA_VERSION = x5.3 || test x$DAKOTA_VERSION = x5.3.1; then
    333348                                        DAKOTAFLAGS="-DDISABLE_DAKOTA_CONFIG_H -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION -DDAKOTA_PLUGIN -DBOOST_DISABLE_ASSERTS -DDAKOTA_HAVE_BOOST_FS -DHAVE_UNISTD_H -DHAVE_SYSTEM -DHAVE_WORKING_FORK -DHAVE_WORKING_VFORK -DHAVE_SYS_WAIT_H -DHAVE_USLEEP -DDAKOTA_F90 -DDAKOTA_HAVE_MPI -DHAVE_PECOS -DHAVE_SURFPACK -DDAKOTA_COLINY -DDAKOTA_UTILIB -DHAVE_ADAPTIVE_SAMPLING -DHAVE_CONMIN -DDAKOTA_DDACE -DHAVE_FSUDACE -DDAKOTA_HOPS -DHAVE_JEGA -DHAVE_NCSU -DHAVE_NL2SOL -DHAVE_OPTPP -DDAKOTA_OPTPP -DHAVE_PSUADE -DHAVE_AMPL"
    334                                         DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota_src -ldakota_src_fortran -lnidr -lteuchos -lpecos -lpecos_src -llhs -lmods -lmod -ldfftpack -lsparsegrid -lsurfpack -lsurfpack_fortran -lutilib -lcolin -linterfaces -lscolib -l3po -lpebbl -ltinyxml -lconmin -ldace -lanalyzer -lrandom -lsampling -lbose -lfsudace -lhopspack -ljega -ljega_fe -lmoga -lsoga -leutils -lutilities -lncsuopt -lcport -loptpp -lpsuade -lamplsolver -L$BOOST_ROOT/lib -lboost_signals -lboost_regex -lboost_filesystem -lboost_system "
     349                                        DAKOTALIB="-L$DAKOTA_ROOT/lib -L$BOOST_ROOT/lib -ldakota_src -lpecos_src -lscolib -ljega_fe -llhs -lpebbl -lcolin -linterfaces -lmods -lmoga -loptpp -lsampling -lsoga -lsurfpack -lutilib -lconmin -ldakota_src_fortran -lmod -lncsuopt -lsurfpack_fortran -lteuchos -l3po -lamplsolver -lanalyzer -lbose -lcport -ldace -ldfftpack -leutils -lfsudace -lhopspack -ljega -lnidr -lpecos -lpsuade -lrandom -ltinyxml -lutilities -lsparsegrid -lboost_signals -lboost_regex -lboost_filesystem -lboost_system"
    335350                                else
    336351                                        AC_MSG_ERROR([Dakota version not found or version ($DAKOTA_VERSION) not supported!]);
     
    348363                                else if test x$DAKOTA_VERSION = x5.3 || test x$DAKOTA_VERSION = x5.3.1; then
    349364                                        DAKOTAFLAGS="-DDISABLE_DAKOTA_CONFIG_H -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION -DDAKOTA_PLUGIN -DBOOST_DISABLE_ASSERTS -DDAKOTA_HAVE_BOOST_FS -DHAVE_UNISTD_H -DHAVE_SYSTEM -DHAVE_WORKING_FORK -DHAVE_WORKING_VFORK -DHAVE_SYS_WAIT_H -DHAVE_USLEEP -DDAKOTA_F90 -DDAKOTA_HAVE_MPI -DHAVE_PECOS -DHAVE_SURFPACK -DDAKOTA_COLINY -DDAKOTA_UTILIB -DHAVE_ADAPTIVE_SAMPLING -DHAVE_CONMIN -DDAKOTA_DDACE -DHAVE_FSUDACE -DDAKOTA_HOPS -DHAVE_JEGA -DHAVE_NCSU -DHAVE_NL2SOL -DHAVE_OPTPP -DDAKOTA_OPTPP -DHAVE_PSUADE -DHAVE_AMPL"
    350                                         DAKOTALIB="-L$DAKOTA_ROOT/lib -ldakota_src -ldakota_src_fortran -lnidr -lteuchos -lpecos -lpecos_src -llhs -lmods -lmod -ldfftpack -lsparsegrid -lsurfpack -lsurfpack_fortran -lutilib -lcolin -linterfaces -lscolib -l3po -lpebbl -ltinyxml -lconmin -ldace -lanalyzer -lrandom -lsampling -lbose -lfsudace -lhopspack -ljega -ljega_fe -lmoga -lsoga -leutils -lutilities -lncsuopt -lcport -loptpp -lpsuade -lamplsolver -L$BOOST_ROOT/lib -lboost_signals -lboost_regex -lboost_filesystem -lboost_system "
     365                                        DAKOTALIB="-L$DAKOTA_ROOT/lib -L$BOOST_ROOT/lib -ldakota_src -lpecos_src -lscolib -ljega_fe -llhs -lpebbl -lcolin -linterfaces -lmods -lmoga -loptpp -lsampling -lsoga -lsurfpack -lutilib -lconmin -ldakota_src_fortran -lmod -lncsuopt -lsurfpack_fortran -lteuchos -l3po -lamplsolver -lanalyzer -lbose -lcport -ldace -ldfftpack -leutils -lfsudace -lhopspack -ljega -lnidr -lpecos -lpsuade -lrandom -ltinyxml -lutilities -lsparsegrid -lboost_signals -lboost_regex -lboost_filesystem -lboost_system"
    351366                                else
    352367                                        AC_MSG_ERROR([Dakota version not found or version ($DAKOTA_VERSION) not supported!]);
     
    11941209                MUMPSINCL=-I"$MUMPS_ROOT/include"
    11951210                if test "$PETSC_MAJOR" = "2" ; then
    1196                         MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lpord "
     1211                        MUMPSLIB=-L"$MUMPS_ROOT/lib "
    11971212                else
    1198                         dnl MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lmumps_common -lpord -lparmetis -lzmumps"
    1199                         MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lmumps_common -lpord -lparmetis"
     1213                        MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lmumps_common -lpord -lparmetis -lzmumps -lmetis"
     1214                        dnl MUMPSLIB=-L"$MUMPS_ROOT/lib "
    12001215                fi
    12011216                AC_DEFINE([_HAVE_MUMPS_],[1],[with Mumps in ISSM src])
  • issm/trunk-jpl/src/c/Makefile.am

    r18179 r18313  
    11AM_CPPFLAGS = @DAKOTAINCL@ @SHAPELIBINCL@ @PETSCINCL@ @SLEPCINCL@ @AMPIINCL@ @MPIINCL@ @METISINCL@ @CHACOINCL@ @SCOTCHINCL@ @PLAPACKINCL@ @BLASLAPACKINCL@ @MKLINCL@ @MUMPSINCL@ @TRIANGLEINCL@ @SPAIINCL@ @HYPREINCL@ @PROMETHEUSINCL@ @SUPERLUINCL@ @SPOOLESINCL@ @PASTIXINCL@ @MLINCL@ @TAOINCL@ @ADIC2INCL@ @ADOLCINCL@ @GSLINCL@ @BOOSTINCL@ @ANDROID_NDKINCL@ @METEOIOINCL@ @SNOWPACKINCL@
     2
    23AUTOMAKE_OPTIONS = subdir-objects
    34
     
    56
    67#Library declaration {{{
    7 lib_LIBRARIES = libISSMCore.a libISSMOverload.a
    8 
    9 if SHAREDLIBS
    10 lib_LTLIBRARIES = libISSMCore.la libISSMOverload.la libISSM.la
    11 endif
     8
     9lib_LTLIBRARIES = libISSMCore.la libISSMOverload.la
    1210if WRAPPERS
    13 if SHAREDLIBS
    1411lib_LTLIBRARIES += libISSMModules.la
    15 endif
    16 lib_LIBRARIES += libISSMModules.a
    1712endif
    1813#}}}
     
    721716                                        ./modules/Krigingx/Krigingx.h
    722717issm_sources +=$(kriging_sources)
    723 issm_sources +=./modules/Krigingx/pKrigingx.cpp
     718#issm_sources +=./modules/Krigingx/pKrigingx.cpp
    724719endif
    725720#}}}
     
    854849ALLCXXFLAGS= -fPIC -D_GNU_SOURCE -fno-omit-frame-pointer -pthread -D_CPP_  $(CXXFLAGS) $(CXXOPTFLAGS)
    855850
    856 libISSMCore_a_SOURCES  = $(issm_sources)
    857 libISSMCore_a_CXXFLAGS = $(ALLCXXFLAGS) $(DAKOTAFLAGS)
    858 libISSMCore_a_FFLAGS = $(AM_FFLAGS)
    859 
    860 if SHAREDLIBS
    861 libISSM_la_SOURCES = main/issm.cpp
    862 libISSM_la_LIBADD = libISSMCore.la libISSMOverload.la
    863 
    864851libISSMCore_la_SOURCES  = $(issm_sources)
    865 libISSMCore_la_LIBADD = $(PETSCLIB) $(TAOLIB) $(M1QN3LIB) $(PLAPACKLIB) $(MUMPSLIB) $(SUPERLULIB) $(SPOOLESLIB) $(SCALAPACKLIB) $(BLACSLIB) $(HYPRELIB) $(SPAILIB) $(PROMETHEUSLIB) $(PASTIXLIB) $(MLLIB) $(DAKOTALIB) $(METISLIB) $(CHACOLIB) $(SCOTCHLIB) $(BLASLAPACKLIB) $(MKLLIB) $(MPILIB) $(MATHLIB) $(GRAPHICSLIB) $(MULTITHREADINGLIB) $(OSLIBS) $(GSLLIB)   $(ADOLCLIB) $(AMPILIB) $(METEOIOLIB) $(SNOWPACKLIB)
     852libISSMCore_la_CXXFLAGS = $(ALLCXXFLAGS) $(DAKOTAFLAGS)
    866853libISSMCore_la_FFLAGS = $(AM_FFLAGS)
    867 endif
     854
     855libISSMCore_la_LIBADD = $(PETSCLIB) $(TAOLIB) $(M1QN3LIB) $(PLAPACKLIB) $(MUMPSLIB) $(SUPERLULIB) $(SPOOLESLIB) $(SCALAPACKLIB) $(BLACSLIB) $(HYPRELIB) $(SPAILIB) $(PROMETHEUSLIB) $(PASTIXLIB) $(MLLIB) $(DAKOTALIB) $(METISLIB) $(CHACOLIB) $(SCOTCHLIB) $(BLASLAPACKLIB) $(MKLLIB) $(MPILIB) $(MATHLIB) $(GRAPHICSLIB) $(MULTITHREADINGLIB) $(OSLIBS) $(GSLLIB)   $(ADOLCLIB) $(AMPILIB) $(METEOIOLIB) $(SNOWPACKLIB)
    868856
    869857if WRAPPERS
    870 libISSMModules_a_SOURCES = $(modules_sources)
    871 libISSMModules_a_SOURCES += $(bamg_sources)
     858libISSMModules_la_SOURCES = $(modules_sources)
     859libISSMModules_la_SOURCES += $(bamg_sources)
    872860if KRIGING
    873 libISSMModules_a_SOURCES += $(kriging_sources)
     861libISSMModules_la_SOURCES += $(kriging_sources)
    874862endif
    875863if KML
    876 libISSMModules_a_SOURCES += $(kml_sources)
    877 endif
    878 libISSMModules_a_CXXFLAGS = $(ALLCXXFLAGS)
    879 libISSMModules_a_LIBADD = ./libISSMCore.a
    880 if SHAREDLIBS
    881 libISSMModules_la_SOURCES = $(libISSMModules_a_SOURCES)
    882 endif
     864libISSMModules_la_SOURCES += $(kml_sources)
     865endif
     866libISSMModules_la_CXXFLAGS = $(ALLCXXFLAGS)
     867libISSMModules_la_LIBADD = ./libISSMCore.la
    883868endif
    884869
     
    888873AM_LDFLAGS = -avoid-version
    889874endif
     875
     876if STANDALONE_EXECUTABLES
     877issm_LDFLAGS = -static
     878endif
     879
     880if STANDALONE_LIBRARIES
     881libISSMCore_la_LDFLAGS = -static
     882libISSMOverload_la_LDFLAGS = -static
     883if WRAPPERS
     884libISSMModules_la_LDFLAGS = -static
     885endif
     886endif
     887
    890888#}}}
    891889#Overload library, to overload any non-standard symbols. {{{
    892 libISSMOverload_a_SOURCES = ./shared/String/ApiPrintf.cpp
    893 
    894 libISSMOverload_a_CFLAGS  = -fPIC -D_C_ $(COPTFLAGS) $(CFLAGS)
     890libISSMOverload_la_SOURCES = ./shared/String/ApiPrintf.cpp
     891
     892libISSMOverload_la_CFLAGS  = -fPIC -D_C_ $(COPTFLAGS) $(CFLAGS)
    895893#}}}
    896894
     
    907905
    908906#Standard libraries
    909 LDADD = ./libISSMCore.a ./libISSMOverload.a
     907LDADD = ./libISSMCore.la ./libISSMOverload.la ./libISSMModules.la $(TRIANGLELIB)
    910908
    911909#External packages
     
    917915
    918916issm_SOURCES = main/issm.h main/globals.h main/issm.cpp
    919 issm_CXXFLAGS= -fPIC $(CXXFLAGS) $(CXXOPTFLAGS) $(COPTFLAGS)
     917issm_CXXFLAGS= -fPIC
    920918
    921919if KRIGING
     
    927925#Automatic differentiation (must be done at the end) {{{
    928926if ADIC2
    929 lib_LIBRARIES += libAD.a libISSMRose.a
     927lib_LTLIBRARIES += libAD.la libISSMRose.la
    930928
    931929#ADIC2 library, for automatic differentiation
    932930#libAD_a_SOURCES = ./mini1.ad.c
    933 libAD_a_SOURCES =
    934 libAD_a_CFLAGS = -fPIC -D_C_ $(COPTFLAGS)
     931libAD_la_SOURCES =
     932libAD_la_CFLAGS = -fPIC -D_C_ $(COPTFLAGS)
    935933
    936934#test rose preprocessing
    937935%.r2cpp.cpp : %.cpp
    938936        testTranslator -rose:o $@ -rose:skipfinalCompileStep -DHAVE_CONFIG_H -D_C_ -I. -I../.. $(INCLUDES) $<
    939 libISSMRose_a_SOURCES = $(libISSMCore_a_SOURCES:.cpp=.r2cpp.cpp)
    940 libISSMRose_a_CXXFLAGS= -fPIC -D_C_ $(CXXOPTFLAGS)
     937libISSMRose_la_SOURCES = $(libISSMCore_a_SOURCES:.cpp=.r2cpp.cpp)
     938libISSMRose_la_CXXFLAGS= -fPIC -D_C_ $(CXXOPTFLAGS)
    941939
    942940#Automatic differentiation rules:
     
    950948issmRose_exe_CXXFLAGS= -fPIC $(CXXOPTFLAGS) $(COPTFLAGS)
    951949LDADD +=  $(ADIC2LIB)
    952 
    953950endif #}}}
  • issm/trunk-jpl/src/wrappers/matlab/Makefile.am

    r18232 r18313  
    88
    99#matlab io{{{
    10 lib_LIBRARIES = libISSMMatlab.a
    11 if SHAREDLIBS
    1210lib_LTLIBRARIES = libISSMMatlab.la
    13 else
    14 lib_LTLIBRARIES =
    15 endif
    1611
    1712io_sources= ./include/matlabincludes.h\
     
    2318ALLCXXFLAGS= -fPIC -D_GNU_SOURCE -fno-omit-frame-pointer -pthread -D_CPP_ -D_WRAPPERS_ $(CXXFLAGS) $(CXXOPTFLAGS)
    2419
    25 libISSMMatlab_a_SOURCES = $(io_sources)
    26 libISSMMatlab_a_CXXFLAGS= $(ALLCXXFLAGS)
    27 if SHAREDLIBS
    2820libISSMMatlab_la_SOURCES = $(io_sources)
    29 endif
     21libISSMMatlab_la_CXXFLAGS= $(ALLCXXFLAGS)
    3022#}}}
    3123#api io{{{
    32 lib_LIBRARIES += libISSMApi.a
    33 if SHAREDLIBS
    3424lib_LTLIBRARIES += libISSMApi.la
    35 else
    36 lib_LTLIBRARIES +=
    37 endif
    3825
    3926api_sources= ./io/ApiPrintf.cpp
    4027
    41 libISSMApi_a_SOURCES = $(api_sources)
    42 libISSMApi_a_CXXFLAGS= $(ALLCXXFLAGS)
    43 if SHAREDLIBS
    4428libISSMApi_la_SOURCES = $(api_sources)
    45 endif
     29libISSMApi_la_CXXFLAGS= $(ALLCXXFLAGS)
    4630#}}}
    4731#Wrappers {{{
     
    9579
    9680#Matlab part
    97 AM_LDFLAGS = -module $(MEXLINK) -shrext ${EXEEXT}  -L/usr/lib
     81AM_LDFLAGS = -module $(MEXLINK) -shrext ${EXEEXT} --export-dynamic -rdynamic
    9882if VERSION
    9983AM_LDFLAGS +=
     
    10286endif
    10387
    104 AM_CXXFLAGS +=  -D_HAVE_MATLAB_MODULES_  -D_GNU_SOURCE -fPIC -fno-omit-frame-pointer -pthread
    105 
    106 if SHAREDLIBS
     88if STANDALONE_MODULES
     89AM_LDFLAGS += -Wl,-static
     90endif
     91
     92AM_CXXFLAGS +=  -D_HAVE_MATLAB_MODULES_  -D_GNU_SOURCE -fPIC -fno-omit-frame-pointer -pthread
     93
    10794deps += ./libISSMMatlab.la ../../c/libISSMModules.la ../../c/libISSMCore.la ./libISSMApi.la
    10895
    109 else
    110 deps += ./libISSMMatlab.a ../../c/libISSMModules.a ../../c/libISSMCore.a ./libISSMApi.a
    11196if ADOLC
    11297deps += $(ADOLCLIB)
    11398endif
    114 endif
    11599
    116100#MEXLIB needs to be the last (undefined references on larsen)
     
    122106# Module sources and dependencies {{{
    123107libISSMMatlab_la_LIBADD = ./../../c/libISSMCore.la ./../../c/libISSMModules.la $(MPILIB) $(PETSCLIB) $(GSLLIB) $(MATHLIB) $(MEXLIB)
    124 libISSMMatlab_la_LDFLAGS = -module -export-dynamic
     108
     109if STANDALONE_LIBRARIES
     110libISSMMatlab_la_LDFLAGS = -static
     111endif
    125112
    126113libISSMApi_la_LIBADD = $(MPILIB) $(PETSCLIB) $(GSLLIB) $(MATHLIB) $(MEXLIB)
    127 libISSMApi_la_LDFLAGS = -module -export-dynamic
     114
     115if STANDALONE_LIBRARIES
     116libISSMApi_la_LDFLAGS = -static
     117endif
    128118
    129119BamgMesher_la_SOURCES = ../BamgMesher/BamgMesher.cpp\
  • issm/trunk-jpl/src/wrappers/python/Makefile.am

    r18232 r18313  
    88
    99#python io{{{
    10 lib_LIBRARIES = libISSMPython.a
    11 if SHAREDLIBS
    1210lib_LTLIBRARIES = libISSMPython.la
    13 else
    14 lib_LTLIBRARIES =
    15 endif
    1611
    1712io_sources= ./include/pythonincludes.h\
     
    2217
    2318ALLCXXFLAGS= -fPIC -D_GNU_SOURCE -fno-omit-frame-pointer -pthread -D_CPP_  -D_WRAPPERS_ $(CXXFLAGS) $(CXXOPTFLAGS)
    24 libISSMPython_a_SOURCES = $(io_sources)
    25 libISSMPython_a_CXXFLAGS= $(ALLCXXFLAGS)
    26 if SHAREDLIBS
    2719libISSMPython_la_SOURCES = $(io_sources)
    28 endif
     20libISSMPython_la_CXXFLAGS= $(ALLCXXFLAGS)
    2921#}}}
    3022#api io{{{
    31 lib_LIBRARIES += libISSMApi.a
    32 if SHAREDLIBS
    3323lib_LTLIBRARIES += libISSMApi.la
    34 else
    35 lib_LTLIBRARIES +=
    36 endif
    3724
    3825api_sources= ./io/ApiPrintf.cpp
    3926
    40 libISSMApi_a_SOURCES = $(api_sources)
    41 libISSMApi_a_CXXFLAGS= $(ALLCXXFLAGS)
    42 if SHAREDLIBS
    4327libISSMApi_la_SOURCES = $(api_sources)
    44 endif
     28libISSMApi_la_CXXFLAGS= $(ALLCXXFLAGS)
    4529#}}}
    4630#Wrappers {{{
     31if WRAPPERS
    4732lib_LTLIBRARIES += BamgConvertMesh.la\
    48                                                  BamgMesher.la\
    49                                                  ContourToMesh.la\
    50                                                  ContourToNodes.la\
    51                                                  ElementConnectivity.la\
    52                                                  EnumToString.la\
    53                                                  InterpFromMeshToMesh2d.la\
    54                                                  InterpFromMeshToMesh3d.la\
    55                                                  InterpFromGridToMesh.la\
    56                                                  InterpFromMeshToGrid.la\
    57                                                  IssmConfig.la\
    58                                                  MeshProfileIntersection.la\
    59                                                  NodeConnectivity.la\
    60                                                  StringToEnum.la\
    61                                                  TriMesh.la\
    62                                                  TriMeshProcessRifts.la
     33                                                BamgMesher.la\
     34                                                ContourToMesh.la\
     35                                                ContourToNodes.la\
     36                                                ElementConnectivity.la\
     37                                                EnumToString.la\
     38                                                InterpFromMeshToMesh2d.la\
     39                                                InterpFromMeshToMesh3d.la\
     40                                                InterpFromGridToMesh.la\
     41                                                InterpFromMeshToGrid.la\
     42                                                IssmConfig.la\
     43                                                MeshProfileIntersection.la\
     44                                                NodeConnectivity.la\
     45                                                StringToEnum.la\
     46                                                TriMesh.la\
     47                                                TriMeshProcessRifts.la
     48endif
    6349#}}}
    6450#Flags and libraries {{{
    65 #if SHAREDLIBS
    66 #deps = ../../c/libISSMCore.la ../../c/libISSMModules.la
    67 #else
    68 #deps = ../../c/libISSMCore.a ../../c/libISSMModules.a
    69 #endif
    70 #deps +=  $(MATHLIB) ${PYTHONLIB}
    7151deps =  $(MATHLIB) ${PYTHONLIB}
    7252
     
    8161AM_LDFLAGS += -avoid-version
    8262endif
    83 if SHAREDLIBS
     63
     64if STANDALONE_MODULES
     65AM_LDFLAGS += -Wl,-static
     66endif
     67
    8468deps += ./libISSMPython.la
    85 else
    86 deps += ./libISSMPython.a
    8769AM_LDFLAGS += --no-warnings
    88 endif
    8970
    9071AM_CXXFLAGS +=  -D_HAVE_PYTHON_MODULES_   -fPIC
     
    9374endif
    9475
    95 if SHAREDLIBS           
    96 deps +=                 
    97 else             
    98 deps += ../../c/libISSMModules.a ../../c/libISSMCore.a           
     76deps += ../../c/libISSMModules.la ../../c/libISSMCore.la
    9977if ADOLC
    10078deps += $(ADOLCLIB)
    10179endif
    10280
    103 if SHAREDLIBS
    10481deps += ./libISSMApi.la
    105 else
    106 deps += ./libISSMApi.a
     82
     83if STANDALONE_LIBRARIES
     84libISSMPython_la_LDFLAGS = -static
    10785endif
    108 
    109 
    110 
    111 endif
     86if STANDALONE_LIBRARIES
     87libISSMApi_la_LDFLAGS = -static
     88endif
    11289
    11390#Optimization flags:
Note: See TracChangeset for help on using the changeset viewer.