CONFIGURE_FEATURE(BOOST)
+
+#
+# DEAL_II_WITH_BOOST is always required.
+#
+IF(NOT DEAL_II_WITH_BOOST)
+ IF(DEAL_II_FEATURE_AUTODETECTION)
+ FEATURE_ERROR_MESSAGE("BOOST")
+ ELSE()
+ MESSAGE(SEND_ERROR "\n"
+ "Unmet configuration requirements: "
+ "DEAL_II_WITH_BOOST required, but set to OFF!.\n\n"
+ )
+ ENDIF()
+ENDIF()
CONFIGURE_FEATURE(DOXYGEN)
+#
+# Additional dependency check:
+# DEAL_II_COMPONENT_DOCUMENTATION needs DEAL_II_WITH_DOXYGEN
+#
+IF(DEAL_II_COMPONENT_DOCUMENTATION AND NOT DEAL_II_WITH_DOXYGEN)
+ IF(DEAL_II_FEATURE_AUTODETECTION)
+ FEATURE_DOXYGEN_ERROR_MESSAGE()
+ ELSE()
+ MESSAGE(SEND_ERROR "\n"
+ "DEAL_II_COMPONENT_DOCUMENTATION has unmet configuration requirements: "
+ "DEAL_II_WITH_DOXYGEN required, but set to OFF!\n\n"
+ )
+ ENDIF()
+ENDIF()
+
+
#
# Setup cached variables prior to the PROJECT(deal.II) call
#
)
FOREACH(flag ${deal_ii_used_flags})
+ #
# "CACHE" ensures that we only set the variable if it is not already set
- # as a cached variable, effectively we're setting a default value:
+ # as a cached variable. Effectively we're setting a default value:
+ #
SET(${flag} "" CACHE STRING
"The user supplied cache variable will be appended _at the end_ of the auto generated ${flag} variable"
)
#
# Save the initial (cached) variable at this point and clear it.
# ${flags}_SAVED will be appended to ${flags} in
- # setup_cached_compiler_flags_finalize.cmake (called at the end of the
+ # setup_finalize.cmake (called at the end of the
# main CMakeLists.txt file).
#
SET(${flag}_SAVED "${${flag}}")
#
-# Setup some convenience custom targets for the build system:
+# Setup some convenience custom targets for the build system, i.e.
#
-
+# $ make <custom_target>.
+#
+# We add custom targets for building all targets necessary to install a
+# specific component (too bad, we have to do this by hand. There is no cmake
+# internal way to do this, yet...):
+#
+# library, documentation, compat_files, project_config
#
-# Custom targets for building all targets necessary to install a specific
-# component. (Too bad, we have to do this by hand. There is no cmake
-# internal way to do this, yet...)
+# And a release and debug target (depending on configuration)
#
ADD_CUSTOM_TARGET(library)
#
-#
-# Dependency check:
-#
-# - DEAL_II_COMPONENT_DOCUMENTATION needs DEAL_II_WITH_DOXYGEN.
-#
-# - DEAL_II_WITH_BOOST has to be enabled.
-#
-# TODO: It is a bit sloppy to test this here. But this is the only
-# dependency of this kind atm.
-#
-IF(DEAL_II_COMPONENT_DOCUMENTATION AND NOT DEAL_II_WITH_DOXYGEN)
- MESSAGE(SEND_ERROR "\n"
- "DEAL_II_COMPONENT_DOCUMENTATION has unmet configuration requirements: "
- "DEAL_II_WITH_DOXYGEN required, but set to OFF!\n\n"
- )
-ENDIF()
-
-IF(NOT DEAL_II_WITH_BOOST)
- MESSAGE(SEND_ERROR "\n"
- "Unmet configuration requirements: "
- "DEAL_II_WITH_BOOST required, but set to OFF!.\n\n"
- )
-ENDIF()
-
#
# Hide some cmake specific cached variables. This is annoying...
ENDIF()
ENDIF()
-
IF(NOT DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS)
- MESSAGE("\n
-WARNING: DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS is set to OFF\n")
+ MESSAGE("\n"
+ "WARNING: DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS is set to OFF\n"
+ )
+ELSE()
+ IF(NOT DEAL_II_KNOWN_COMPILER)
+ MESSAGE("\n"
+ "WARNING: Unknown compiler! Please set compiler flags by hand.\n"
+ )
+ ENDIF()
ENDIF()
-
MESSAGE("
Configured Features ("
"DEAL_II_FEATURE_AUTODETECTION = ${DEAL_II_FEATURE_AUTODETECTION}, "