Changeset 11995 for issm/trunk/src/c/Makefile.am
- Timestamp:
- 04/16/12 14:57:18 (13 years ago)
- Location:
- issm/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk
- Property svn:ignore
-
old new 7 7 config.status 8 8 configure 9 doxygen10 9 ISSM.paf 11 10 ISSM.ppf 12 11 ISSM.ppf_cache 13 12 libtool 14 list15 13 Makefile 16 14 Makefile.in
-
- Property svn:mergeinfo changed
- Property svn:ignore
-
issm/trunk/src/c/Makefile.am
r11527 r11995 1 INCLUDES = @DAKOTAINCL@ @SHAPELIBINCL@ @PETSCINCL@ @SLEPCINCL@ @MPIINCL@ @MATLABINCL@ @METISINCL@ @CHACOINCL@ @SCOTCHINCL@ @PLAPACKINCL@ @BLASLAPACKINCL@ @MKLINCL@ @MUMPSINCL@ @TRIANGLEINCL@ @HYPREINCL@ @MLINCL@ @TAOINCL@ 1 INCLUDES = @DAKOTAINCL@ @SHAPELIBINCL@ @PETSCINCL@ @SLEPCINCL@ @MPIINCL@ @MATLABINCL@ @METISINCL@ @CHACOINCL@ @SCOTCHINCL@ @PLAPACKINCL@ @BLASLAPACKINCL@ @MKLINCL@ @MUMPSINCL@ @TRIANGLEINCL@ @HYPREINCL@ @MLINCL@ @TAOINCL@ @ADIC2INCL@ @ADOLCINCL@ @GSLINCL@ @BOOSTINCL@ @PYTHONINCL@ @PYTHON_NUMPYINCL@ 2 2 3 EXEEXT=$(ISSMEXT) 3 4 … … 12 13 else 13 14 if NOPARALLEL 14 lib_LIBRARIES = libISSM.a 15 lib_LIBRARIES = libISSM.a libOverload.a 15 16 else 16 17 lib_LIBRARIES = libISSM.a libpISSM.a libOverload.a … … 21 22 #sources 22 23 #Core sources{{{1 23 core_sources 24 core_sources = ./include/macros.h\ 24 25 ./include/typedefs.h\ 25 26 ./include/types.h\ … … 79 80 ./objects/ExternalResults/StringExternalResult.h\ 80 81 ./objects/ExternalResults/StringExternalResult.cpp\ 81 ./objects/ExternalResults/PetscVecExternalResult.h\82 ./objects/ExternalResults/PetscVecExternalResult.cpp\83 82 ./objects/Elements/Tria.h\ 84 83 ./objects/Elements/Tria.cpp\ … … 120 119 ./objects/Numerics/ElementVector.h\ 121 120 ./objects/Numerics/ElementVector.cpp\ 121 ./objects/Numerics/Matrix.h\ 122 ./objects/Numerics/Matrix.cpp\ 123 ./objects/Numerics/Vector.h\ 124 ./objects/Numerics/Vector.cpp\ 122 125 ./objects/Params/Param.h\ 123 126 ./objects/Params/BoolParam.cpp\ … … 133 136 ./objects/Params/FileParam.cpp\ 134 137 ./objects/Params/FileParam.h\ 135 ./objects/Params/PetscMatParam.cpp\136 ./objects/Params/PetscMatParam.h\137 138 ./objects/Params/StringArrayParam.cpp\ 138 139 ./objects/Params/StringArrayParam.h\ … … 145 146 ./objects/Params/DoubleVecParam.cpp\ 146 147 ./objects/Params/DoubleVecParam.h\ 147 ./objects/Params/PetscVecParam.cpp\148 ./objects/Params/PetscVecParam.h\149 148 ./objects/Params/StringParam.cpp\ 150 149 ./objects/Params/StringParam.h\ 150 ./objects/Params/MatrixParam.h\ 151 ./objects/Params/MatrixParam.cpp\ 152 ./objects/Params/VectorParam.h\ 153 ./objects/Params/VectorParam.cpp\ 151 154 ./Container/Container.h\ 152 155 ./Container/Constraints.h\ … … 191 194 ./shared/Numerics/XZvectorsToCoordinateSystem.cpp\ 192 195 ./shared/Numerics/UnitConversion.cpp\ 193 ./shared/Numerics/ PetscOptionsFromAnalysis.cpp\196 ./shared/Numerics/OptionsFromAnalysis.cpp\ 194 197 ./shared/Exceptions/exceptions.h\ 195 198 ./shared/Exceptions/Exceptions.cpp\ … … 204 207 ./shared/Elements/GetGlobalDofList.cpp\ 205 208 ./shared/Elements/GetNumberOfDofs.cpp\ 206 ./shared/Elements/CoordinateSystemTransform.cpp\207 209 ./shared/String/sharedstring.h\ 208 ./toolkits/petsc\ 209 ./toolkits/petsc/patches\ 210 ./toolkits/petsc/patches/SolverEnum.h\ 211 ./toolkits/petsc/patches/petscpatches.h\ 212 ./toolkits/petsc/patches/MatlabMatrixToPetscMatrix.cpp\ 213 ./toolkits/petsc/patches/MatlabVectorToPetscVector.cpp\ 214 ./toolkits/petsc/patches/PetscMatrixToMatlabMatrix.cpp\ 215 ./toolkits/petsc/patches/PetscVectorToMatlabVector.cpp\ 216 ./toolkits/petsc/patches/MatlabMatrixToDoubleMatrix.cpp\ 217 ./toolkits/petsc/patches/MatlabVectorToDoubleVector.cpp\ 218 ./toolkits/petsc/patches/PetscDetermineLocalSize.cpp\ 219 ./toolkits/petsc/patches/VecTranspose.cpp\ 220 ./toolkits/petsc/patches/VecToMPISerial.cpp\ 221 ./toolkits/petsc/patches/MatToSerial.cpp\ 222 ./toolkits/petsc/patches/VecMerge.cpp\ 223 ./toolkits/petsc/patches/NewVec.cpp\ 224 ./toolkits/petsc/patches/PetscOptionsDetermineSolverType.cpp\ 225 ./toolkits/petsc/patches/PetscOptionsInsertMultipleString.cpp\ 226 ./toolkits/petsc/patches/NewMat.cpp\ 227 ./toolkits/petsc/patches/SerialToVec.cpp\ 228 ./toolkits/petsc/patches/VecFree.cpp\ 229 ./toolkits/petsc/patches/VecDuplicatePatch.cpp\ 230 ./toolkits/petsc/patches/KSPFree.cpp\ 231 ./toolkits/petsc/patches/ISFree.cpp\ 232 ./toolkits/petsc/patches/MatFree.cpp\ 233 ./toolkits/petsc/patches/GetOwnershipBoundariesFromRange.cpp\ 234 ./toolkits/petsc/patches/VecPartition.cpp\ 235 ./toolkits/petsc/patches/MatPartition.cpp\ 236 ./toolkits/petsc/patches/MatInvert.cpp\ 237 ./toolkits/petsc/patches/MatMultPatch.cpp\ 238 ./toolkits/petsc/petscincludes.h\ 210 ./shared/Wrapper/wrappershared.h\ 211 ./shared/Wrapper/ModuleBoot.cpp\ 212 ./shared/Wrapper/ModuleEnd.cpp\ 239 213 ./toolkits/mpi/mpiincludes.h\ 240 214 ./toolkits/mpi/patches/mpipatches.h\ 215 ./toolkits/mpi/patches/DetermineLocalSize.cpp\ 241 216 ./toolkits/mpi/patches/MPI_Upperrow.cpp\ 242 217 ./toolkits/mpi/patches/MPI_Lowerrow.cpp\ 243 218 ./toolkits/mpi/patches/MPI_Boundariesfromrange.cpp\ 244 219 ./toolkits/metis/metisincludes.h\ 220 ./toolkits/issm/issmtoolkit.h\ 221 ./toolkits/issm/SeqVec.h\ 222 ./toolkits/issm/SeqVec.cpp\ 223 ./toolkits/issm/SeqMat.h\ 224 ./toolkits/issm/SeqMat.cpp\ 245 225 ./toolkits/metis/patches/metispatches.h\ 246 226 ./toolkits/metis/patches/METIS_PartMeshNodalPatch.cpp\ 247 227 ./toolkits/triangle/triangleincludes.h\ 228 ./toolkitsenums.h\ 248 229 ./toolkits.h\ 249 230 ./io/io.h\ … … 253 234 ./io/PrintfFunction.cpp\ 254 235 ./EnumDefinitions/EnumDefinitions.h\ 255 ./EnumDefinitions/EnumToModelField.cpp\256 236 ./modules/ModelProcessorx/ModelProcessorx.h\ 257 237 ./modules/ModelProcessorx/ModelProcessorx.cpp\ … … 343 323 ./modules/Solverx/Solverx.cpp\ 344 324 ./modules/Solverx/Solverx.h\ 345 ./modules/Solverx/DofTypesToIndexSet.cpp\346 325 ./modules/VecMergex/VecMergex.cpp\ 347 326 ./modules/VecMergex/VecMergex.h\ … … 419 398 420 399 thermal_psources = ./solutions/thermal_core.cpp\ 421 ./solutions/thermal_core_step.cpp\422 400 ./solutions/enthalpy_core.cpp\ 423 ./solutions/enthalpy_core_step.cpp\424 401 ./solvers/solver_thermal_nonlinear.cpp 425 402 #}}} … … 473 450 ./solutions/controlrestart.cpp\ 474 451 ./solutions/controlconvergence.cpp\ 475 ./solutions/objectivefunction C.cpp\452 ./solutions/objectivefunction.cpp\ 476 453 ./solutions/gradient_core.cpp\ 477 454 ./solutions/adjointdiagnostic_core.cpp\ … … 503 480 ./modules/ModelProcessorx/DiagnosticHutter/CreateConstraintsDiagnosticHutter.cpp \ 504 481 ./modules/ModelProcessorx/DiagnosticHutter/CreateLoadsDiagnosticHutter.cpp \ 482 ./shared/Elements/CoordinateSystemTransform.cpp\ 505 483 ./shared/Elements/TransformLoadVectorCoord.cpp \ 506 484 ./shared/Elements/TransformStiffnessMatrixCoord.cpp \ … … 717 695 #}}} 718 696 #Matlab sources {{{1 719 matlab_sources= ./shared/Matlab/matlabshared.h\ 720 ./shared/Matlab/ModuleBoot.cpp\ 721 ./shared/Matlab/ModuleEnd.cpp\ 722 ./shared/Matlab/mxGetAssignedField.cpp\ 723 ./shared/Matlab/mxGetField.cpp\ 724 ./shared/Matlab/CheckNumMatlabArguments.cpp\ 725 ./toolkits/matlab/matlabincludes.h\ 697 matlab_sources= ./toolkits/matlab/matlabincludes.h\ 726 698 ./toolkits/matlab/MatlabNArrayToNArray.cpp\ 699 ./toolkits/double/MatlabVectorToDoubleVector.cpp\ 700 ./toolkits/double/double.h\ 701 ./toolkits/double/MatlabMatrixToDoubleMatrix.cpp\ 727 702 ./io/Matlab/matlabio.h\ 703 ./io/Matlab/CheckNumMatlabArguments.cpp\ 704 ./io/Matlab/mxGetAssignedField.cpp\ 728 705 ./io/Matlab/WriteMatlabData.cpp\ 729 706 ./io/Matlab/FetchMatlabData.cpp\ 730 707 ./io/Matlab/OptionParse.cpp 708 #}}} 709 #Python sources {{{1 710 python_sources= ./io/Python/pythonio.h\ 711 ./io/Python/WritePythonData.cpp\ 712 ./io/Python/CheckNumPythonArguments.cpp\ 713 ./io/Python/FetchPythonData.cpp 714 #}}} 715 #Petsc sources {{{1 716 petsc_sources= ./toolkits/petsc\ 717 ./toolkits/petsc/patches\ 718 ./toolkits/petsc/patches/SolverEnum.h\ 719 ./toolkits/petsc/patches/petscpatches.h\ 720 ./toolkits/petsc/patches/MatlabMatrixToPetscMatrix.cpp\ 721 ./toolkits/petsc/patches/MatlabVectorToPetscVector.cpp\ 722 ./toolkits/petsc/patches/PetscMatrixToMatlabMatrix.cpp\ 723 ./toolkits/petsc/patches/PetscVectorToMatlabVector.cpp\ 724 ./toolkits/petsc/patches/VecTranspose.cpp\ 725 ./toolkits/petsc/patches/VecToMPISerial.cpp\ 726 ./toolkits/petsc/patches/MatToSerial.cpp\ 727 ./toolkits/petsc/patches/VecMerge.cpp\ 728 ./toolkits/petsc/patches/NewVec.cpp\ 729 ./toolkits/petsc/patches/PetscOptionsDetermineSolverType.cpp\ 730 ./toolkits/petsc/patches/PetscOptionsInsertMultipleString.cpp\ 731 ./toolkits/petsc/patches/NewMat.cpp\ 732 ./toolkits/petsc/patches/SerialToVec.cpp\ 733 ./toolkits/petsc/patches/VecFree.cpp\ 734 ./toolkits/petsc/patches/VecDuplicatePatch.cpp\ 735 ./toolkits/petsc/patches/KSPFree.cpp\ 736 ./toolkits/petsc/patches/ISFree.cpp\ 737 ./toolkits/petsc/patches/MatFree.cpp\ 738 ./toolkits/petsc/patches/GetOwnershipBoundariesFromRange.cpp\ 739 ./toolkits/petsc/patches/VecPartition.cpp\ 740 ./toolkits/petsc/patches/MatPartition.cpp\ 741 ./toolkits/petsc/patches/MatInvert.cpp\ 742 ./toolkits/petsc/patches/MatMultPatch.cpp\ 743 ./toolkits/petsc/patches/ISSMToPetscMatrixType.cpp\ 744 ./toolkits/petsc/patches/ISSMToPetscInsertMode.cpp\ 745 ./toolkits/petsc/patches/ISSMToPetscNormMode.cpp\ 746 ./toolkits/petsc/petscincludes.h\ 747 ./shared/Numerics/PetscOptionsFromAnalysis.cpp\ 748 ./modules/Solverx/SolverxPetsc.cpp\ 749 ./modules/Solverx/DofTypesToIndexSet.cpp 750 751 #}}} 752 #Gsl sources {{{1 753 gsl_sources= ./modules/Solverx/SolverxGsl.cpp 754 731 755 #}}} 732 756 #Serialsources {{{1 … … 769 793 ./modules/TriaSearchx/TriaSearchx.h\ 770 794 ./modules/TriaSearchx/TriaSearchx.cpp\ 795 ./modules/TriMeshx/TriMeshx.h\ 796 ./modules/TriMeshx/TriMeshx.cpp\ 771 797 ./modules/PointCloudFindNeighborsx/PointCloudFindNeighborsx.h\ 772 798 ./modules/PointCloudFindNeighborsx/PointCloudFindNeighborsx.cpp\ … … 816 842 817 843 #ISSM sources are a combination of core sources and sources related to specific capabilities (which can 818 #be activated by autotools conditionals {{{1 844 #be activated by autotools conditionals 845 #{{{1 819 846 820 847 #First the core … … 828 855 endif 829 856 857 if PETSC 858 issm_sources += $(petsc_sources) 859 issm_psources += $(petsc_psources) 860 endif 861 862 if GSL 863 issm_sources += $(gsl_sources) 864 issm_psources += $(gsl_psources) 865 endif 866 867 830 868 if TRANSIENT 831 869 issm_sources += $(transient_sources) … … 891 929 892 930 #ISSM serial library {{{1 931 if SERIAL 893 932 libISSM_a_SOURCES = $(issm_sources) 894 933 libISSM_a_SOURCES += $(serial_sources) 895 934 libISSM_a_SOURCES += $(bamg_sources) 896 935 libISSM_a_SOURCES += $(kml_sources) 936 libISSM_a_CXXFLAGS = -fPIC -D_SERIAL_ -D_GNU_SOURCE -fno-omit-frame-pointer -pthread -D_CPP_ $(CXXFLAGS) $(CXXOPTFLAGS) 937 #libISSM_a_CXXFLAGS = -D_SERIAL_ -DTRILIBRARY -DANSI_DECLARATORS -DNO_TIMER $(CXXFLAGS) $(CXXOPTFLAGS) 938 939 if PYTHON 940 libISSM_a_CXXFLAGS+= -DNPY_NO_DEPRECATED_API 941 libISSM_a_SOURCES += $(python_sources) 942 endif 943 944 if MATLAB 897 945 libISSM_a_SOURCES += $(matlab_sources) 898 899 libISSM_a_CXXFLAGS = -fPIC -DMATLAB -D_SERIAL_ -D_GNU_SOURCE -fno-omit-frame-pointer -pthread -D_CPP_ $(CXXFLAGS) $(CXXOPTFLAGS) 900 if LARGEARRAYS 901 libISSM_a_CXXFLAGS += -D__GCC4BUILD__ 902 else 903 libISSM_a_CXXFLAGS += -DMX_COMPAT_32 946 endif 947 904 948 endif 905 949 #}}} 906 950 #ISSM parallel library {{{1 951 if PARALLEL 907 952 libpISSM_a_SOURCES = $(issm_sources) 908 953 libpISSM_a_SOURCES += $(issm_psources) 909 954 libpISSM_a_CXXFLAGS = -fPIC -D_PARALLEL_ -D_C_ $(CXXFLAGS) $(CXXOPTFLAGS) 955 endif 910 956 #}}} 911 957 #Overload library, to overload any non-standard symbols. {{{1 … … 918 964 bin_PROGRAMS = 919 965 else 920 bin_PROGRAMS = issm 966 bin_PROGRAMS = issm 921 967 endif 922 968 923 969 #Standard libraries 924 LDADD = 970 LDADD = ./libpISSM.a ./libOverload.a 925 971 926 972 #External packages 927 LDADD += $(PETSCLIB) $(TAOLIB) $(FLIBS) $(PLAPACKLIB) $(MUMPSLIB) $(SCALAPACKLIB) $(BLACSLIB) $(HYPRELIB) $(MLLIB) $(DAKOTALIB) $(METISLIB) $(CHACOLIB) $(SCOTCHLIB) $(BLASLAPACKLIB) $(MKLLIB) $(MPILIB) $(MATHLIB) $(FORTRANLIB) $(GRAPHICSLIB) $(MULTITHREADINGLIB) $(ADIC2LIB) $(OSLIBS)973 LDADD += $(PETSCLIB) $(TAOLIB) $(FLIBS) $(PLAPACKLIB) $(MUMPSLIB) $(SCALAPACKLIB) $(BLACSLIB) $(HYPRELIB) $(MLLIB) $(DAKOTALIB) $(METISLIB) $(CHACOLIB) $(SCOTCHLIB) $(BLASLAPACKLIB) $(MKLLIB) $(MPILIB) $(MATHLIB) $(FORTRANLIB) $(GRAPHICSLIB) $(MULTITHREADINGLIB) $(OSLIBS) $(GSLLIB) 928 974 929 975 issm_SOURCES = solutions/issm.cpp 930 issm_CXXFLAGS= -fPIC -D_PARALLEL_ $(CXXFLAGS) $(CXXOPTFLAGS) $(COPTFLAGS) 931 #}}} 976 issm_CXXFLAGS= -fPIC -D_PARALLEL_ $(CXXFLAGS) $(CXXOPTFLAGS) $(COPTFLAGS) 977 #}}} 978 #Automatic differentiation: append this fold to the end of the src/c/Makefile.am to get this Makefile.am {{{ 979 if ADIC2 980 lib_LIBRARIES += libAD.a libpISSMRose.a 981 982 #ADIC2 library, for automatic differentiation 983 #libAD_a_SOURCES = ./mini1.ad.c 984 libAD_a_SOURCES = 985 libAD_a_CFLAGS = -fPIC -D_PARALLEL_ -D_C_ $(COPTFLAGS) 986 987 988 989 #test rose preprocessing 990 %.r2cpp.cpp : %.cpp 991 testTranslator -rose:o $@ -rose:skipfinalCompileStep -DHAVE_CONFIG_H -D_PARALLEL_ -D_C_ -I. -I../.. $(INCLUDES) $< 992 libpISSMRose_a_SOURCES = $(libpISSM_a_SOURCES:.cpp=.r2cpp.cpp) 993 libpISSMRose_a_CXXFLAGS= -fPIC -D_PARALLEL_ -D_C_ $(CXXOPTFLAGS) 994 995 996 997 #Automatic differentiation rules: 998 %.ad.c: %.c 999 adic2 -mforward $< --nary 1000 1001 1002 1003 #Executable 1004 bin_PROGRAMS += issmRose.exe 1005 issmRose_exe_LDADD = ./libpISSMRose.a $(LDADD) 1006 issmRose_exe_SOURCES = solutions/issm.cpp 1007 issmRose_exe_CXXFLAGS= -fPIC -D_PARALLEL_ $(CXXOPTFLAGS) $(COPTFLAGS) 1008 LDADD += $(ADIC2LIB) 1009 1010 endif #}}}
Note:
See TracChangeset
for help on using the changeset viewer.