From: maier Date: Wed, 19 Sep 2012 12:23:23 +0000 (+0000) Subject: Set the Cflags globally. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3ef7e0112819a0cce85c0ce422aa8adcff1752c5;p=dealii-svn.git Set the Cflags globally. git-svn-id: https://svn.dealii.org/branches/branch_cmake@26503 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/contrib/cmake/setup_compiler_flags.cmake b/deal.II/contrib/cmake/setup_compiler_flags.cmake index 25590ee087..494d51f9a6 100644 --- a/deal.II/contrib/cmake/setup_compiler_flags.cmake +++ b/deal.II/contrib/cmake/setup_compiler_flags.cmake @@ -26,12 +26,8 @@ # # ./check/check_for_compiler_bugs.cmake # -# and enable language features: -# # ./check/check_for_cxx_features.cmake # -# TODO: There is a bit of ambiguity. Clarify with Wolfgang. -# # @@ -40,7 +36,7 @@ # ###################### # # For the moment we assume that CC and CXX are the same compiler. -# (We only need CC for the compilation of the bundled umfpack library.) +# We need CC for the compilation of the bundled umfpack library only... # So, give a prominent error message in case CC and CXX differ: # IF(NOT ( ${CMAKE_C_COMPILER_ID} STREQUAL ${CMAKE_CXX_COMPILER_ID} AND @@ -53,6 +49,8 @@ IF(NOT ( ${CMAKE_C_COMPILER_ID} STREQUAL ${CMAKE_CXX_COMPILER_ID} AND ) ENDIF() + + # # Setup CMAKE_CXX_FLAGS<_RELEASE|_DEBUG>: # @@ -84,6 +82,7 @@ ELSE(DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS) ENDIF(DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS) + # # Setup CMAKE_C_FLAGS<_RELEASE|_DEBUG>: # @@ -98,8 +97,10 @@ SET(CMAKE_C_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE}) SET(CMAKE_C_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG}) # -# Strip some CXX-only flags +# Strip some -W* flags and all CXX-only flags. +# This is mainly to silence the build of contrib UMFPACK. # - +STRIP_FLAG(CMAKE_C_FLAGS "-Wall") STRIP_FLAG(CMAKE_C_FLAGS "-Wsynth") +STRIP_FLAG(CMAKE_C_FLAGS "-Wsign-compare") STRIP_FLAG(CMAKE_C_FLAGS_RELEASE "-felide-constructors") diff --git a/deal.II/contrib/umfpack/UMFPACK/Source/CMakeLists.txt b/deal.II/contrib/umfpack/UMFPACK/Source/CMakeLists.txt index 9063ecf77d..af958d2eac 100644 --- a/deal.II/contrib/umfpack/UMFPACK/Source/CMakeLists.txt +++ b/deal.II/contrib/umfpack/UMFPACK/Source/CMakeLists.txt @@ -89,78 +89,72 @@ SET(src_umfpack_UMFPACK umfpack_triplet_to_col.c ) -# -# Disable some warning for the compilation of UMFPACK: -# -ENABLE_IF_SUPPORTED(obj_umfpack_COMPILE_FLAGS "-Wno-pragmas") -ENABLE_IF_SUPPORTED(obj_umfpack_COMPILE_FLAGS "-Wno-sign-compare") - #------------------------------------------------------------------------------- # compile each int and long routine (with no real/complex version) #------------------------------------------------------------------------------- ADD_LIBRARY(obj_umfpack_I_UMF OBJECT ${src_umfpack_UMF}) -SET_TARGET_PROPERTIES(obj_umfpack_I_UMF PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT") +SET_TARGET_PROPERTIES(obj_umfpack_I_UMF PROPERTIES COMPILE_FLAGS "-DDINT") ADD_LIBRARY(obj_umfpack_L_UMF OBJECT ${src_umfpack_UMF}) -SET_TARGET_PROPERTIES(obj_umfpack_L_UMF PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG") +SET_TARGET_PROPERTIES(obj_umfpack_L_UMF PROPERTIES COMPILE_FLAGS "-DDLONG") ADD_LIBRARY(obj_umfpack_I_UMFPACK OBJECT ${src_umfpack_UMFPACK}) -SET_TARGET_PROPERTIES(obj_umfpack_I_UMFPACK PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT") +SET_TARGET_PROPERTIES(obj_umfpack_I_UMFPACK PROPERTIES COMPILE_FLAGS "-DDINT") ADD_LIBRARY(obj_umfpack_L_UMFPACK OBJECT ${src_umfpack_UMFPACK}) -SET_TARGET_PROPERTIES(obj_umfpack_L_UMFPACK PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG") +SET_TARGET_PROPERTIES(obj_umfpack_L_UMFPACK PROPERTIES COMPILE_FLAGS "-DDLONG") #------------------------------------------------------------------------------- # compile each routine in the DI version #------------------------------------------------------------------------------- ADD_LIBRARY(obj_umfpack_DI_TSOLVE OBJECT umf_ltsolve.c umf_utsolve.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_TSOLVE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DCONJUGATE_SOLVE") +SET_TARGET_PROPERTIES(obj_umfpack_DI_TSOLVE PROPERTIES COMPILE_FLAGS "-DDINT -DCONJUGATE_SOLVE") ADD_LIBRARY(obj_umfpack_DI_TRIPLET_MAP_NOX OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_MAP_NOX PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DDO_MAP") +SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_MAP_NOX PROPERTIES COMPILE_FLAGS "-DDINT -DDO_MAP") ADD_LIBRARY(obj_umfpack_DI_TRIPLET_MAP_X OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_MAP_X PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DDO_MAP -DDO_VALUES") +SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_MAP_X PROPERTIES COMPILE_FLAGS "-DDINT -DDO_MAP -DDO_VALUES") ADD_LIBRARY(obj_umfpack_DI_TRIPLET_NOMAP_X OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_NOMAP_X PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DDO_VALUES") +SET_TARGET_PROPERTIES(obj_umfpack_DI_TRIPLET_NOMAP_X PROPERTIES COMPILE_FLAGS "-DDINT -DDO_VALUES") ADD_LIBRARY(obj_umfpack_DI_STORE OBJECT umf_store_lu.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_STORE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DDROP") +SET_TARGET_PROPERTIES(obj_umfpack_DI_STORE PROPERTIES COMPILE_FLAGS "-DDINT -DDROP") ADD_LIBRARY(obj_umfpack_DI_ASSEMBLE OBJECT umf_assemble.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_ASSEMBLE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DFIXQ") +SET_TARGET_PROPERTIES(obj_umfpack_DI_ASSEMBLE PROPERTIES COMPILE_FLAGS "-DDINT -DFIXQ") ADD_LIBRARY(obj_umfpack_DI_SOLVE OBJECT umfpack_solve.c) -SET_TARGET_PROPERTIES(obj_umfpack_DI_SOLVE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDINT -DWSOLVE") +SET_TARGET_PROPERTIES(obj_umfpack_DI_SOLVE PROPERTIES COMPILE_FLAGS "-DDINT -DWSOLVE") #------------------------------------------------------------------------------- # compile each routine in the DL version #------------------------------------------------------------------------------- ADD_LIBRARY(obj_umfpack_DL_TSOLVE OBJECT umf_ltsolve.c umf_utsolve.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_TSOLVE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DCONJUGATE_SOLVE") +SET_TARGET_PROPERTIES(obj_umfpack_DL_TSOLVE PROPERTIES COMPILE_FLAGS "-DDLONG -DCONJUGATE_SOLVE") ADD_LIBRARY(obj_umfpack_DL_TRIPLET_MAP_NOX OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_MAP_NOX PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DDO_MAP") +SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_MAP_NOX PROPERTIES COMPILE_FLAGS "-DDLONG -DDO_MAP") ADD_LIBRARY(obj_umfpack_DL_TRIPLET_MAP_X OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_MAP_X PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DDO_MAP -DDO_VALUES") +SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_MAP_X PROPERTIES COMPILE_FLAGS "-DDLONG -DDO_MAP -DDO_VALUES") ADD_LIBRARY(obj_umfpack_DL_TRIPLET_NOMAP_X OBJECT umf_triplet.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_NOMAP_X PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DDO_VALUES") +SET_TARGET_PROPERTIES(obj_umfpack_DL_TRIPLET_NOMAP_X PROPERTIES COMPILE_FLAGS "-DDLONG -DDO_VALUES") ADD_LIBRARY(obj_umfpack_DL_STORE OBJECT umf_store_lu.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_STORE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DDROP") +SET_TARGET_PROPERTIES(obj_umfpack_DL_STORE PROPERTIES COMPILE_FLAGS "-DDLONG -DDROP") ADD_LIBRARY(obj_umfpack_DL_ASSEMBLE OBJECT umf_assemble.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_ASSEMBLE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DFIXQ") +SET_TARGET_PROPERTIES(obj_umfpack_DL_ASSEMBLE PROPERTIES COMPILE_FLAGS "-DDLONG -DFIXQ") ADD_LIBRARY(obj_umfpack_DL_SOLVE OBJECT umfpack_solve.c) -SET_TARGET_PROPERTIES(obj_umfpack_DL_SOLVE PROPERTIES COMPILE_FLAGS "${obj_umfpack_COMPILE_FLAGS} -DDLONG -DWSOLVE") +SET_TARGET_PROPERTIES(obj_umfpack_DL_SOLVE PROPERTIES COMPILE_FLAGS "-DDLONG -DWSOLVE") #------------------------------------------------------------------------------- # Create the generic routines (GN) using a generic rule