Changeset 15257


Ignore:
Timestamp:
06/13/13 15:46:53 (12 years ago)
Author:
glperez
Message:

CHG: Changes to our m4 macros and Makefile.am for Windows.

Location:
issm/trunk-jpl
Files:
2 edited

Legend:

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

    r15244 r15257  
    5555                        export CXXFLAGS="-DWIN32 -D_INTEL_WIN_"
    5656                elif  test $VENDOR = intel-win7-32; then
    57                         export CC=cccl
    58                         export CXX=cccl
    59                         export CXXFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
    60                         export CFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
    61                         export AR=lib
    62                         export RANLIB=true
    63                         OSLIBS="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
    64                 elif  test $VENDOR = intel-win7-64; then
    65                         export CC=cccl
     57                        export CC=cl
    6658                        export CXX=cccl
    6759                        export CXXFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
    6860                        export CFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
    6961                        export AR="ar-lib lib"
     62         export OS_LDFLAG="-Wl,"
    7063                        export RANLIB=true
    71                         OSLIBS="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
     64                        OSLIBS="-Wl,kernel32.lib -Wl,user32.lib -Wl,gdi32.lib -Wl,winspool.lib -Wl,comdlg32.lib -Wl,advapi32.lib -Wl,shell32.lib -Wl,ole32.lib -Wl,oleaut32.lib -Wl,uuid.lib -Wl,odbc32.lib -Wl,odbccp32.lib"
     65                elif  test $VENDOR = intel-win7-64; then
     66                        export CC=cl
     67                        export CXX=cccl
     68                        export CXXFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
     69                        export CFLAGS="-DWIN32 -D_INTEL_WIN_ -EHsc"
     70                        export AR="ar-lib lib"
     71         export OS_LDFLAG="-Wl,"
     72                        export RANLIB=true
     73                        OSLIBS="-Wl,kernel32.lib -Wl,user32.lib -Wl,gdi32.lib -Wl,winspool.lib -Wl,comdlg32.lib -Wl,advapi32.lib -Wl,shell32.lib -Wl,ole32.lib -Wl,oleaut32.lib -Wl,uuid.lib -Wl,odbc32.lib -Wl,odbccp32.lib"
    7274                elif test $VENDOR = intel-linux; then
    7375                        export CC=icc
     
    8688                        export CFLAGS=" -O3 -D_INTEL_LINUX_ "
    8789        else
    88                 AC_MSG_ERROR([unknow compiler vendor!])
     90                AC_MSG_ERROR([unknown compiler vendor!])
    8991                fi
    9092        fi
     
    115117
    116118                AC_MSG_CHECKING(for matlab headers and libraries in $MATLAB_ROOT)
    117                 MATLABINCL=-I"$MATLAB_ROOT/extern/include";
     119                MATLABINCL="-I$MATLAB_ROOT/extern/include/"
    118120               
    119121                dnl 4. get MEXLIB MEXLINK and MEXEXT (experimental)
    120                 MEXLINK=$(mex -v 2>&1 < /dev/null | grep LDFLAGS     | sed -e "s/         LDFLAGS            = //g")
    121                 MEXLIB=$( mex -v 2>&1 < /dev/null | grep CXXLIBS     | sed -e "s/         CXXLIBS            = //g")
    122                 MEXEXT=$( mex -v 2>&1 < /dev/null | grep LDEXTENSION | sed -e "s/         LDEXTENSION        = //g")
     122      dnl OS-dependent variables and checks
     123                case "${host_os}" in
     124                        *linux*)
     125         ;&
     126                        *darwin*)
     127                      MEXLINK=$(mex -v 2>&1 < /dev/null | grep LDFLAGS     | sed -e "s/         LDFLAGS            = //g")
     128                 MEXLIB=$( mex -v 2>&1 < /dev/null | grep CXXLIBS     | sed -e "s/         CXXLIBS            = //g")
     129                      MEXEXT=$( mex -v 2>&1 < /dev/null | grep LDEXTENSION | sed -e "s/         LDEXTENSION        = //g")
     130                        ;;
     131                        *cygwin*)
     132                                if  test $VENDOR = intel-win7-32; then
     133                                        MEXLIB="/link /DLL -export:mexFunction -Wl,libmx.lib -Wl,libmex.lib -Wl,libmat.lib -Wl,kernel32.lib -Wl,user32.lib -Wl,gdi32.lib -Wl,winspool.lib -Wl,comdlg32.lib -Wl,advapi32.lib -Wl,shell32.lib -Wl,ole32.lib -Wl,oleaut32.lib -Wl,uuid.lib -Wl,odbc32.lib -Wl,odbccp32.lib -Wl,libf2cblas.lib -Wl,libf2clapack.lib"
     134                                elif  test $VENDOR = intel-win7-64; then
     135                                        MEXLIB="/DLL -export:mexFunction -L$MATLAB_ROOT\extern\lib\win64\microsoft\ -Wl,libmx.lib -Wl,libmex.lib -Wl,libmat.lib -Wl,kernel32.lib -Wl,user32.lib -Wl,gdi32.lib -Wl,winspool.lib -Wl,comdlg32.lib -Wl,advapi32.lib -Wl,shell32.lib -Wl,ole32.lib -Wl,oleaut32.lib -Wl,uuid.lib -Wl,odbc32.lib -Wl,odbccp32.lib  -NOLOGO -INCREMENTAL:NO -manifest"
     136                                fi
     137                                MEXEXT=`$MATLAB_ROOT/bin/mexext.bat`
     138                                MEXEXT=".$MEXEXT"
     139                        ;;
     140      esac
    123141           AC_MSG_RESULT(done)
    124142
     
    581599        if test -d "$PETSC_ROOT"; then
    582600
     601   echo "LISTEN LISTEN LISTEN"
    583602         PETSCINCL=" -I$PETSC_ROOT/include"
    584603         dnl Add other location (maybe not needed anymore)
     
    593612                        *cygwin*)
    594613                        if test $PETSC_MAJOR -lt 3 ; then
    595                                 PETSCLIB="-L$PETSC_ROOT/lib libpetscksp.lib libpetscdm.lib libpetscmat.lib libpetscvec.lib libpetscsnes.lib libpetscts.lib libmpiuni.lib libpetsc.lib"
     614                                PETSCLIB=-Wl,/LIBPATH:`cygpath -w $PETSC_ROOT/lib` libpetscksp.lib libpetscdm.lib libpetscmat.lib libpetscvec.lib libpetscsnes.lib libpetscts.lib libmpiuni.lib libpetsc.lib
    596615                        else
    597616                                PETSCLIB="-L$PETSC_ROOT/lib libpetsc.lib"
     
    601620                        *linux*)
    602621                        if test $PETSC_MAJOR -lt 3 ; then
    603                                 PETSCLIB="-L$PETSC_ROOT/lib -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc  -lpetscsnes -lpetscts"
     622                                PETSCLIB="-L$PETSC_ROOT/lib libpetscksp.lib libpetscdm.lib libpetscmat.lib libpetscvec.lib libpetscsnes.lib libpetscts.lib libmpiuni.lib libpetsc.lib"
    604623                        else
    605                                 PETSCLIB="-L$PETSC_ROOT/lib -lpetsc -ldl"
     624                                PETSCLIB="-L$PETSC_ROOT/lib libpetsc.lib"
    606625                                if test $PETSC_MAJOR -gt 3 || test $PETSC_MINOR -ge 3; then PETSCLIB+=" -lmetis"; fi
    607626                        fi
  • issm/trunk-jpl/src/wrappers/matlab/Makefile.am

    r15166 r15257  
    102102endif
    103103#}}}
    104 #Flags and libraries {{{
    105 #if SHAREDLIBS
    106 #deps = ../../c/libISSMCore.la ../../c/libISSMModules.la
    107 #else
    108 #deps = ../../c/libISSMCore.a ../../c/libISSMModules.a
    109 #endif
    110 #deps +=  $(MATHLIB)
     104
     105# Dependencies {{{
    111106deps =  $(MATHLIB)
    112107
     
    115110
    116111#Matlab part
    117 AM_LDFLAGS = -module $(MEXLINK) -shrext ${EXEEXT}  -L/usr/lib
     112AM_LDFLAGS = -no-undefined -module $(MEXLINK) -shrext ${EXEEXT}  -L/usr/lib -Wl,/export:mexFunction
    118113if VERSION
    119114AM_LDFLAGS +=
     
    122117endif
    123118
    124 if SHAREDLIBS
    125 deps += ./libISSMMatlab.la
    126 else
    127 deps += ./libISSMMatlab.a
    128 AM_LDFLAGS += --no-warnings
    129 endif
    130 
    131119AM_CXXFLAGS +=  -D_HAVE_MATLAB_MODULES_  -D_GNU_SOURCE -fPIC -fno-omit-frame-pointer -pthread
    132120
    133121if SHAREDLIBS
    134 deps +=
    135 else
    136 deps += ../../c/libISSMModules.a ../../c/libISSMCore.a 
     122deps += ../../c/libISSMModules.la ../../c/libISSMCore.la ./libISSMApi.la ./libISSMMatlab.a
     123else
     124#if WINDOWS
     125#AM_LDFLAGS += -Wl,../../c/libISSMCore.a -Wl,./libISSMApi.a -Wl,../../c/libISSMModules.a -Wl,./libISSMMatlab.a
     126#else
     127deps += ${OS_LDFLAG}../../c/libISSMModules.a ${OS_LDFLAG}../../c/libISSMCore.a ${OS_LDFLAG}./libISSMApi.a ${OS_LDFLAG}./libISSMMatlab.a
     128#endif
    137129if ADOLC
    138130deps += $(ADOLCLIB)
     
    140132endif
    141133
    142 if SHAREDLIBS
    143 deps += ./libISSMApi.la
    144 else
    145 deps += ./libISSMApi.a
    146 endif
    147 
    148 
    149 
    150134#MEXLIB needs to be the last (undefined references on larsen)
    151135deps += ${MEXLIB}
     
    154138AM_CXXFLAGS += $(CXXOPTFLAGS)
    155139#}}}
    156 #Bin sources {{{
     140# Module sources and dependencies {{{
     141libISSMMatlab_la_LIBADD = $(MPILIB) $(PETSCLIB) $(GSLLIB) $(MATHLIB) $(MEXLIB) ./../../c/libISSMCore.la
     142libISSMMatlab_la_LDFLAGS = -no-undefined -module
     143
     144libISSMApi_la_LIBADD = $(MPILIB) $(PETSCLIB) $(GSLLIB) $(MATHLIB) $(MEXLIB)
     145libISSMApi_la_LDFLAGS = -no-undefined -module
     146
    157147AverageFilter_la_SOURCES = ../AverageFilter/AverageFilter.cpp\
    158148                                                                        ../AverageFilter/AverageFilter.h
Note: See TracChangeset for help on using the changeset viewer.