]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
The last update for today :-]
authormaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 18 Sep 2012 22:19:42 +0000 (22:19 +0000)
committermaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 18 Sep 2012 22:19:42 +0000 (22:19 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_cmake@26490 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/compiler.m4
deal.II/contrib/cmake/check/check_for_compiler_features.cmake
deal.II/contrib/cmake/setup_compiler_flags.cmake
deal.II/contrib/cmake/setup_compiler_flags_gnu.cmake
deal.II/contrib/cmake/setup_finalize.cmake

index 7043ed49635182465807b1050b135c3ca824d9fb..5da58fa300a56d142a0e5057480b400b7e20309d 100644 (file)
           DEAL_II_ADD_EXTERNAL_LIBS_AT_TAIL(-lm)
           ;;
 
-      clang*)
-          dnl Like many other compilers, clang produces warnings for array
-          dnl accesses out of bounds, even if they are in code that's dead
-          dnl for this dimension. Suppress this.
-          dnl
-          dnl There are a number of other warnings we get that can't easily
-          dnl be worked around and that are definitely not useful. Suppress
-          dnl those too.
-          CXXFLAGSG="$CXXFLAGS -DDEBUG -g -Wall -Wno-array-bounds -Wno-parentheses -Wno-delete-non-virtual-dtor -Wno-unneeded-internal-declaration -Wno-unused-function -Wno-unused-variable"
-          CXXFLAGSO="$CXXFLAGS -O2 -Wno-array-bounds -Wno-parentheses -Wno-delete-non-virtual-dtor -Wno-unneeded-internal-declaration -Wno-unused-function -Wno-unused-variable"
-          CXXFLAGSPIC="-fPIC"
-          LDFLAGSPIC="-fPIC"
           ;;
 
       intel_icc*)
index 2d1a2d5daf5f8623ec30b002b103639acdeef5ba..b8e8c1b2735bc97affee6a5d3dd7cd3cd298a0f6 100644 (file)
@@ -400,5 +400,5 @@ ENDIF()
 # per email by John Fowkes on the mailing list in Feb 2012,
 # so don't run the test on cygwin.
 #
-ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wa,--compress-debug-sections")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wa,--compress-debug-sections")
+ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_DEBUG "-Wa,--compress-debug-sections")
+ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_DEBUG "-Wa,--compress-debug-sections")
index 357a95d4bef6df443f984c1fe24a379372a1d928..bfd8d6ff403d1acc12a009c3b90c592d9615436c 100644 (file)
 #
 
 
+#
+#
+#   ######################
+#   #     FAT NOTE 2:    #
+#   ######################
 #
 # For the moment we assume that CC and CXX are the same compilers.
 # (We only need CC for the compilation of the bundled umfpack library.)
@@ -48,6 +53,12 @@ IF(NOT ( ${CMAKE_C_COMPILER_ID} STREQUAL ${CMAKE_CXX_COMPILER_ID} AND
       "CMAKE_CXX_COMPILER: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}\n"
       )
 ENDIF()
+#
+# ... and that we can set the same _default_ flags for both.
+#
+# So at the end of the default compiler flags setup, we just set all
+# C-Flags to the corersponding CXX-Flags:
+#
 
 
 #
@@ -67,3 +78,10 @@ IF(NOT DEAL_II_KNOWN_COMPILER)
     "Please set the relevant compiler options by hand.\n")
 ENDIF()
 
+#
+# For the moment we assume that CC and CXX are the same compilers and that
+# we can set the same _default_ flags for both.
+#
+SET(CMAKE_C_FLAGS ${CMAKE_CXX_FLAGS})
+SET(CMAKE_C_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
+SET(CMAKE_C_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
index 2e36489eaa5e592e2f4c17dddf349f496af5f5e9..0715c56a8b9d6519884d423dda006a5c76399d33 100644 (file)
@@ -17,7 +17,6 @@
 # TODO: On some systems, -fpic/PIC is implied, so don't set anything to
 # avoid a warning.
 #
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-fpic")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-fpic")
 
 #
@@ -30,23 +29,16 @@ ENABLE_IF_AVAILABLE(CMAKE_SHARED_LINKER_FLAGS "-Wl,-as-needed")
 #
 # Set -pedantic if the compiler supports it.
 #
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-pedantic")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-pedantic")
 
 #
 # Setup various warnings:
 #
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wall")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wall")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wpointer-arith")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wpointer-arith")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wwrite-strings")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wwrite-strings")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wsynth")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wsynth")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wsign-compare")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wsign-compare")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS "-Wswitch")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wswitch")
 
 #
@@ -57,6 +49,23 @@ ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wswitch")
 #
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-unused-local-typedefs")
 
+IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+  #
+  # Like many other compilers, clang produces warnings for array
+  # accesses out of bounds, even if they are in code that's dead
+  # for this dimension. Suppress this.
+  #
+  # There are a number of other warnings we get that can't easily
+  # be worked around and that are definitely not useful. Suppress
+  # those too.
+  #
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-array-bounds")
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-parentheses")
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-delete-non-virtual-dtor")
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-unneeded-internal-declaration")
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-unused-function")
+  ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-unused-variable")
+ENDIF()
 
 
 
@@ -69,14 +78,10 @@ ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS "-Wno-unused-local-typedefs")
 #
 # General optimization flags:
 #
-ADD_FLAGS(CMAKE_C_FLAGS_RELEASE "-O2")
 ADD_FLAGS(CMAKE_CXX_FLAGS_RELEASE "-O2")
 
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_RELEASE "-funroll-loops")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_RELEASE "-funroll-loops")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_RELEASE "-fstrict-aliasing")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_RELEASE "-fstrict-aliasing")
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_RELEASE "-felide-constructors")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_RELEASE "-felide-constructors")
 
 #
@@ -100,17 +105,14 @@ IF (CMAKE_BUILD_TYPE MATCHES "Debug")
   ADD_DEFINITIONS("-DDEBUG")
 ENDIF()
 
-ADD_FLAGS(CMAKE_C_FLAGS_DEBUG "-O0")
 ADD_FLAGS(CMAKE_CXX_FLAGS_DEBUG "-O0")
 
-ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_DEBUG "-ggdb")
 ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_DEBUG "-ggdb")
 ENABLE_IF_AVAILABLE(CMAKE_SHARED_LINKER_FLAGS "-ggdb")
 #
 # If -ggdb is not available, fall back to -g:
 #
 IF(NOT DEAL_II_HAVE_FLAG_-ggdb)
-  ENABLE_IF_AVAILABLE(CMAKE_C_FLAGS_DEBUG "-g")
   ENABLE_IF_AVAILABLE(CMAKE_CXX_FLAGS_DEBUG "-g")
   ENABLE_IF_AVAILABLE(CMAKE_SHARED_LINKER_FLAGS "-g")
 ENDIF()
index 6f18b648dc3e6444dd9b869ae43b6e2559936bfd..39078ec31de28ded57f72437fbff50db3b3b3556 100644 (file)
@@ -14,9 +14,9 @@ ENDFOREACH()
 
 MESSAGE("
 
-    *                                        *
-    *    deal.II successfully configured!    *
-    *                                        *
+   *                                    *
+   *  deal.II successfully configured!  *
+   *                                    *
 
 
       CMAKE_BUILD_TYPE:     ${CMAKE_BUILD_TYPE}
@@ -25,38 +25,43 @@ MESSAGE("
       CMAKE_BINARY_DIR:     ${CMAKE_BINARY_DIR}
 
       CMAKE_CXX_COMPILER:   ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}
-    ( CMAKE_C_COMPILER:     ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} )
 
 General compiler flags (used by all build targets):
 
-      CMAKE_CXX_FLAGS:     ${CMAKE_CXX_FLAGS}
-    ( CMAKE_C_FLAGS:       ${CMAKE_C_FLAGS} )
+      CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}
 ")
 
 IF(CMAKE_BUILD_TYPE MATCHES "Release")
-  MESSAGE("
-Additional compiler flags used for the Release target:
+  MESSAGE("Additional compiler flags used for the Release target:
 
       CMAKE_CXX_FLAGS_RELEASE: ${CMAKE_CXX_FLAGS_RELEASE}
-    ( CMAKE_C_FLAGS_RELEASE:   ${CMAKE_C_FLAGS_RELEASE} )
 ")
 ENDIF()
 
 IF(CMAKE_BUILD_TYPE MATCHES "Debug")
-  MESSAGE("
-Additional compiler flags used for the Debug target:
+  MESSAGE("Additional compiler flags used for the Debug target:
 
       CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}
-    ( CMAKE_C_FLAGS_DEBUG:   ${CMAKE_C_FLAGS_DEBUG} )
 ")
 ENDIF()
 
-MESSAGE("
-Configured linker flags:
+MESSAGE("Configured linker flags:
 
       CMAKE_SHARED_LINKER_FLAGS: ${CMAKE_SHARED_LINKER_FLAGS}
+")
 
+IF(FEATURE_UMFPACK_CONTRIB_CONFIGURED)
+  MESSAGE("The contrib UMFPACK library will be compiled with the following C compiler:
 
+      CMAKE_C_COMPILER:       ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION}
+      CMAKE_C_FLAGS:         ${CMAKE_C_FLAGS}
+      CMAKE_C_FLAGS_DEBUG:   ${CMAKE_C_FLAGS_DEBUG}
+      CMAKE_C_FLAGS_RELEASE: ${CMAKE_C_FLAGS_RELEASE}
+
+")
+ENDIF()
+
+MESSAGE("
 Configured Features (DEAL_II_FEATURE_AUTODETECTION = ${DEAL_II_FEATURE_AUTODETECTION}):
 ")
 

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.