From ac2ffb6e458ed7272d37a67aed4839c0caa9387e Mon Sep 17 00:00:00 2001
From: Dilawar Singh <dilawars@ncbs.res.in>
Date: Sat, 16 Dec 2017 11:03:17 +0530
Subject: [PATCH] On debian pass -DDISTUTILS_EXTRA_ARGS=--install-layout-deb to
 downstream cmake.

---
 CMakeLists.txt               | 22 ++++++++++++++++++++--
 build_moose-core.sh.in       | 12 +++++++++++-
 cmake/build_moose-core.sh.in |  3 ++-
 3 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index d8986742..05af9b09 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,9 +36,27 @@ if(PYTHON_VERSION_MAJOR VERSION_EQUAL 3)
     set(WITH_GUI OFF)
 endif( )
 
+# On debian or ubuntu, --install-layout=deb needs to be passed.
+if(UNIX AND NOT APPLE)
+    find_program(LSB_RELEASE lsb_release)
+    if(LSB_RELEASE)
+        execute_process(COMMAND ${LSB_RELEASE} -is
+            OUTPUT_VARIABLE LSB_RELEASE_ID_SHORT
+            OUTPUT_STRIP_TRAILING_WHITESPACE
+            )
+        if(${LSB_RELEASE_ID_SHORT} STREQUAL "Ubuntu" 
+                OR ${LSB_RELEASE_ID_SHORT} STREQUAL "Debian" )
+            message(STATUS "Debian based LINUX: ${LSB_RELEASE_ID_SHORT}" )
+            set(CMAKE_PYMOOSE_ARGS "-DDISTUTILS_EXTRA_ARGS=\"--install-layout=deb\"" )
+        endif( )
+    endif( )
+endif( )
+
+
+
 add_custom_target(moose ALL)
 
-## intialize paths
+
 set(PYMOOSE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/moose-core")
 set(PYMOOSE_BUILD_DIR ${CMAKE_BINARY_DIR}/__moose-core_build)
 set(PYMOOSE_INSTALL_DIR ${CMAKE_BINARY_DIR}/__moose-core_install)
@@ -131,7 +149,7 @@ if(WITH_GUI)
         ${CMAKE_INSTALL_PREFIX}/lib/moose/gui
         COMMAND ${CMAKE_COMMAND} -E remove ${CMAKE_INSTALL_PREFIX}/bin/moose
         )
-    add_dependencies( uninstall __uninstall_moose-gui__ )
+    #add_dependencies( uninstall __uninstall_moose-gui__ )
 endif()
 
 ################################################################################
diff --git a/build_moose-core.sh.in b/build_moose-core.sh.in
index 84057cf7..57d0e682 100755
--- a/build_moose-core.sh.in
+++ b/build_moose-core.sh.in
@@ -3,13 +3,23 @@ set -x
 set -e
 
 # NOTICE: This file is parsed by cmake to create a shell script. Not all syntax
-# will play well with cmake. CMAKE replaces @FOO@ and ${FOO} with cmake variable
+# will play well with cmake. 
+#
+# CMAKE replaces @FOO@ and ${FOO} with cmake variable
 # values.
 
 if [ -z "$MAKE" ]; then
     MAKE=make
 fi
 
+CMAKE_PYMOOSE_ARGS=''
+SITE_PACKAGE=`@PYTHON_EXECUTABLE@ -c \
+    "from distutils.sysconfig import get_python_lib; print(get_python_lib())"`
+echo $SITE_PACKAGE
+
+
+# If we are on DEBIAN/UBUNTU, pass --install-layout=deb to moose-core.
+
 echo "Building MOOSE"
 (
     export GSL_ROOT_DIR=@GSL_ROOT_DIR@
diff --git a/cmake/build_moose-core.sh.in b/cmake/build_moose-core.sh.in
index 43d2ab2b..269e28e5 100755
--- a/cmake/build_moose-core.sh.in
+++ b/cmake/build_moose-core.sh.in
@@ -1,4 +1,5 @@
-#!/bin/bash
+#!/bin/sh
+
 set -x 
 set -e
 
-- 
GitLab