]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Improve the generated Make.global_options file
authormaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 5 Dec 2012 18:13:30 +0000 (18:13 +0000)
committermaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 5 Dec 2012 18:13:30 +0000 (18:13 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_cmake@27769 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/cmake/config/CMakeLists.txt
deal.II/cmake/config/Make.global_options.in
tests/Makefile.rules

index bafad09cb13338972deee05c8c7bd6d42f560414..ced316aa2e84b55f6f438f8d15151d7e6e45bad0 100644 (file)
@@ -132,6 +132,10 @@ IF(DEAL_II_COMPONENT_COMPAT_FILES)
   # Transform some cmake lists into a string that the old Makefile
   # mechanism actually understands:
   #
+  # TODO: Come up with an idea how to get the link line directly from
+  # CMake...
+  #
+
   TO_STRING_AND_ADD_PREFIX(MAKEFILE_INCLUDE_DIRS "${CMAKE_INCLUDE_FLAG_CXX}"
     ${DEAL_II_USER_INCLUDE_DIRS}
     ${DEAL_II_INCLUDE_DIRS}
@@ -144,26 +148,27 @@ IF(DEAL_II_COMPONENT_COMPAT_FILES)
       ${DEAL_II_USER_DEFINITIONS_${build}}
       )
 
-    #
-    # Add an rpath directive in front of each library, so that libraries
-    # outside of the default search directories will be found by the runtime
-    # dynamic linker:
-    #
-    FOREACH(lib
+
+    FOREACH(_lib
         ${MAKEFILE_LIBRARY_${build}}
         ${DEAL_II_EXTERNAL_LIBRARIES}
         ${DEAL_II_EXTERNAL_LIBRARIES_${build}}
         )
-      GET_FILENAME_COMPONENT(path ${lib} PATH)
-      LIST(APPEND MAKEFILE_LIBS_${build} "-Wl,-rpath -Wl,${path}")
-      LIST(APPEND MAKEFILE_LIBS_${build} ${lib})
+      LIST(APPEND MAKEFILE_LIBS_${build} ${_lib})
+      #
+      # Add an rpath directive for each library:
+      #
+      GET_FILENAME_COMPONENT(_path ${_lib} PATH)
+      LIST(APPEND MAKEFILE_LIBS_${build} "-Wl,-rpath,${_path}")
     ENDFOREACH()
+
     TO_STRING(MAKEFILE_LIBS_${build} ${MAKEFILE_LIBS_${build}})
+
     #
-    # Put our linker flags directly in front of this string:
+    # Set up our linker flags:
     #
-    SET(MAKEFILE_LIBS_${build}
-      "${CMAKE_SHARED_LINKER_FLAGS} ${DEAL_II_SHARED_LINKER_FLAGS_${build}} ${MAKEFILE_LIBS_${build}}"
+    SET(MAKEFILE_LDFLAGS_${build}
+      "${CMAKE_CXX_FLAGS} ${DEAL_II_CXX_FLAGS_${build}} ${CMAKE_SHARED_LINKER_FLAGS} ${DEAL_II_SHARED_LINKER_FLAGS_${build}}"
       )
   ENDFOREACH()
 
@@ -176,8 +181,11 @@ IF(DEAL_II_COMPONENT_COMPAT_FILES)
   COND_SET_TO_YES(BUILD_SHARED_LIBS MAKEFILE_enableshared)
 
   COND_SET_TO_YES(DEAL_II_WITH_PETSC MAKEFILE_PETSC)
+  COND_SET_TO_YES(DEAL_II_WITH_SLEPC MAKEFILE_SLEPC)
   COND_SET_TO_YES(DEAL_II_WITH_TRILINOS MAKEFILE_TRILINOS)
+  COND_SET_TO_YES(DEAL_II_WITH_HDF5 MAKEFILE_HDF5)
   COND_SET_TO_YES(DEAL_II_WITH_BLAS MAKEFILE_BLAS)
+  COND_SET_TO_YES(DEAL_II_WITH_MUMPS MAKEFILE_MUMPS)
   COND_SET_TO_YES(DEAL_II_WITH_LAPACK MAKEFILE_LAPACK)
   COND_SET_TO_YES(DEAL_II_WITH_ARPACK MAKEFILE_ARPACK)
   COND_SET_TO_YES(DEAL_II_WITH_METIS MAKEFILE_METIS)
@@ -185,6 +193,7 @@ IF(DEAL_II_COMPONENT_COMPAT_FILES)
   COND_SET_TO_YES(DEAL_II_WITH_P4EST MAKEFILE_P4EST)
   COND_SET_TO_YES(DEAL_II_WITH_MPI MAKEFILE_MPI)
 
+
   CONFIGURE_FILE(
     ${CMAKE_CURRENT_SOURCE_DIR}/Make.global_options.in
     ${CMAKE_CURRENT_BINARY_DIR}/Make.global_options
index 7f34e20468d950b45305486a098180f0e5f59ac5..3445c489e1355449175171085427d6c419b28b4f 100644 (file)
@@ -21,11 +21,12 @@ D                    = @CMAKE_INSTALL_PREFIX@
 CXX                  = @CMAKE_CXX_COMPILER@
 CXX-ID               = @CMAKE_CXX_COMPILER_ID@
 CXX-VERSION          = @CMAKE_CXX_COMPILER_VERSION@
-LDFLAGS              = # intentionally left empty and specified in LIBS
 
 ifeq ($(debug-mode), on)
+  LDFLAGS              = @MAKEFILE_LDFLAGS_DEBUG@
   LIBS                 = @MAKEFILE_LIBS_DEBUG@
 else
+  LDFLAGS              = @MAKEFILE_LDFLAGS_RELEASE@
   LIBS                 = @MAKEFILE_LIBS_RELEASE@
 endif
 
@@ -42,13 +43,13 @@ PERL                 = perl
 
 
 USE_CONTRIB_PETSC    = @MAKEFILE_PETSC@
-USE_CONTRIB_SLEPC    = @USE_CONTRIB_SLEPC@
+USE_CONTRIB_SLEPC    = @MAKEFILE_SLEPC@
 USE_CONTRIB_TRILINOS = @MAKEFILE_TRILINOS@
-#USE_CONTRIB_HDF5 = @USE_CONTRIB_HDF5@
-USE_CONTRIB_BLAS   = @MAKEFILE_BLAS@
-USE_CONTRIB_LAPACK = @MAKEFILE_LAPACK@
-#USE_CONTRIB_MUMPS  = @USE_CONTRIB_MUMPS@
-USE_CONTRIB_ARPACK  = @MAKEFILE_ARPACK@
+USE_CONTRIB_HDF5     = @MAKEFILE_HDF5@
+USE_CONTRIB_BLAS     = @MAKEFILE_BLAS@
+USE_CONTRIB_LAPACK   = @MAKEFILE_LAPACK@
+USE_CONTRIB_MUMPS    = @MAKEFILE_MUMPS@
+USE_CONTRIB_ARPACK   = @MAKEFILE_ARPACK@
 USE_CONTRIB_METIS    = @MAKEFILE_METIS@
 USE_CONTRIB_UMFPACK  = @MAKEFILE_UMFPACK@
 USE_CONTRIB_P4EST    = @MAKEFILE_P4EST@
index 282d3dfc3fad0ebc334dce83d4ffdec09c73e3a4..22cb8a5dbb59ceaf36edb5315b8e09dcbea84084 100644 (file)
@@ -46,13 +46,13 @@ endif
        @echo =====debug========= $<
        @echo Compiling > $(dir $@)/status
        @-rm -f $(dir $@)/ncpu*/status
-       @$(CXX) $(flags) -c $< -o $@
+       $(CXX) $(flags) -c $< -o $@
 
 %/obj.$(OBJEXT) : %.cc
        @echo =====optimized===== $<
        @echo Compiling > $(dir $@)/status
        @-rm -f $(dir $@)/ncpu*/status
-       @$(CXX) $(CXXFLAGS.o) -c $< -o $@
+       $(CXX) $(CXXFLAGS.o) -c $< -o $@
 
 ######################################################################
 # Don't put $(libraries) into this line since it is already in $^
@@ -60,7 +60,7 @@ endif
 %/exe : %/obj.g.$(OBJEXT)
        @echo =====linking======= $@
        @echo Linking > $(dir $@)/status
-       @$(CXX) -o $@ $^ $(LDFLAGS) $(LIBS)
+       $(CXX) -o $@ $^ $(LDFLAGS) $(LIBS)
 
 
 ############################################################

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.