From 138c0279ae8f59ac78164de7614bb0786d78fc15 Mon Sep 17 00:00:00 2001
From: Daniel Arndt <arndtd@ornl.gov>
Date: Sat, 4 Jan 2020 18:31:27 +0100
Subject: [PATCH] Restructure python-bindings CMakeLists.txt files

---
 contrib/python-bindings/CMakeLists.txt        | 58 ++++++++++++++++++
 contrib/python-bindings/source/CMakeLists.txt | 59 -------------------
 2 files changed, 58 insertions(+), 59 deletions(-)

diff --git a/contrib/python-bindings/CMakeLists.txt b/contrib/python-bindings/CMakeLists.txt
index a7e2f53d5e..884b8322c3 100644
--- a/contrib/python-bindings/CMakeLists.txt
+++ b/contrib/python-bindings/CMakeLists.txt
@@ -18,6 +18,64 @@ IF(DEAL_II_COMPONENT_PYTHON_BINDINGS)
   MESSAGE(STATUS "")
   MESSAGE(STATUS "Setting up python bindings")
 
+  #
+  # Find Python:
+  #
+  INCLUDE(FindPythonInterp)
+  INCLUDE(FindPythonLibs)
+
+  IF(FEATURE_BOOST_BUNDLED_CONFIGURED)
+    MESSAGE(FATAL_ERROR
+      "DEAL_II_COMPONENT_PYTHON_BINDINGS has unmet configuration requirements: "
+      "Python bindings require an external boost library, but deal.II was "
+      "configured with bundled boost."
+      )
+  ENDIF()
+
+  #
+  # As of 1.67, boost requires specifying the suffix for the python
+  # component manually.
+  #
+  UNSET(Boost_FOUND)
+  IF(${BOOST_VERSION} VERSION_LESS 1.67)
+    _FIND_PACKAGE(Boost 1.59 COMPONENTS python REQUIRED)
+  ELSE()
+    _FIND_PACKAGE(Boost 1.67 COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR} REQUIRED)
+  ENDIF()
+
+  IF(NOT Boost_FOUND)
+    MESSAGE(FATAL_ERROR
+      "DEAL_II_COMPONENT_PYTHON_BINDINGS has unmet configuration requirements: "
+      "The external boost library does not provide Boost.Python"
+      )
+  ENDIF()
+
+  #
+  # FIXME: Once finalized, reconsider moving this definitions into
+  # cmake/setup_dealii.cmake
+  #
+  # General information about deal.II:
+  #
+  #     PYTHON_BINDINGS_BASE_NAME       *)
+  #     PYTHON_BINDINGS_DEBUG_NAME      *)
+  #     PYTHON_BINDINGS_RELEASE_NAME    *)
+  #
+  # Information about paths, install locations and names:
+  #
+  #     DEAL_II_PYTHON_RELDIR           *) **)
+  #
+  # *)  Can be overwritten by the command line via -D<...>
+  # **) We do a best effort guess on site-packages location...
+  #
+
+  SET_IF_EMPTY(PYTHON_BINDINGS_BASE_NAME "PyDealII")
+  SET_IF_EMPTY(PYTHON_BINDINGS_DEBUG_NAME "Debug")
+  SET_IF_EMPTY(PYTHON_BINDINGS_RELEASE_NAME "Release")
+
+  SET_IF_EMPTY(DEAL_II_PYTHON_RELDIR
+    "${DEAL_II_LIBRARY_RELDIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/${PYTHON_BINDINGS_BASE_NAME}"
+    )
+
   ADD_SUBDIRECTORY(source)
 
   MESSAGE(STATUS "Setting up python bindings - Done")
diff --git a/contrib/python-bindings/source/CMakeLists.txt b/contrib/python-bindings/source/CMakeLists.txt
index a76c202ee9..5dd35adcc8 100644
--- a/contrib/python-bindings/source/CMakeLists.txt
+++ b/contrib/python-bindings/source/CMakeLists.txt
@@ -13,65 +13,6 @@
 ##
 ## ---------------------------------------------------------------------
 
-#
-# Find Python:
-#
-
-INCLUDE(FindPythonInterp)
-INCLUDE(FindPythonLibs)
-
-IF(FEATURE_BOOST_BUNDLED_CONFIGURED)
-  MESSAGE(FATAL_ERROR
-    "DEAL_II_COMPONENT_PYTHON_BINDINGS has unmet configuration requirements: "
-    "Python bindings require an external boost library, but deal.II was "
-    "configured with bundled boost."
-    )
-ENDIF()
-
-#
-# As of 1.67, boost requires specifying the suffix for the python
-# component manually.
-#
-UNSET(Boost_FOUND)
-IF(${BOOST_VERSION} VERSION_LESS 1.67)
-  _FIND_PACKAGE(Boost 1.59 COMPONENTS python REQUIRED)
-ELSE()
-  _FIND_PACKAGE(Boost 1.67 COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR} REQUIRED)
-ENDIF()
-
-IF(NOT Boost_FOUND)
-  MESSAGE(FATAL_ERROR
-    "DEAL_II_COMPONENT_PYTHON_BINDINGS has unmet configuration requirements: "
-    "The external boost library does not provide Boost.Python"
-    )
-ENDIF()
-
-#
-# FIXME: Once finalized, reconsider moving this definitions into
-# cmake/setup_dealii.cmake
-#
-# General information about deal.II:
-#
-#     PYTHON_BINDINGS_BASE_NAME       *)
-#     PYTHON_BINDINGS_DEBUG_NAME      *)
-#     PYTHON_BINDINGS_RELEASE_NAME    *)
-#
-# Information about paths, install locations and names:
-#
-#     DEAL_II_PYTHON_RELDIR           *) **)
-#
-# *)  Can be overwritten by the command line via -D<...>
-# **) We do a best effort guess on site-packages location...
-#
-
-SET_IF_EMPTY(PYTHON_BINDINGS_BASE_NAME "PyDealII")
-SET_IF_EMPTY(PYTHON_BINDINGS_DEBUG_NAME "Debug")
-SET_IF_EMPTY(PYTHON_BINDINGS_RELEASE_NAME "Release")
-
-SET_IF_EMPTY(DEAL_II_PYTHON_RELDIR
-  "${DEAL_II_LIBRARY_RELDIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/${PYTHON_BINDINGS_BASE_NAME}"
-  )
-
 INCLUDE_DIRECTORIES(
   ${CMAKE_BINARY_DIR}/include/
   ${CMAKE_SOURCE_DIR}/include/
-- 
2.39.5