From 3f1d313c9ffd30c70c609748696b746633e47a8a Mon Sep 17 00:00:00 2001
From: Josh Blum <josh@joshknows.com>
Date: Tue, 13 Jul 2010 18:15:47 -0700
Subject: uhd: moved cpack stuff into config dir (work on cpack)

---
 host/config/CPack.cmake              | 75 ++++++++++++++++++++++++++++++++++++
 host/config/Python.cmake             | 49 +++++++++++++++++++++++
 host/config/cmake_uninstall.cmake.in | 23 +++++++++++
 3 files changed, 147 insertions(+)
 create mode 100644 host/config/CPack.cmake
 create mode 100644 host/config/Python.cmake
 create mode 100644 host/config/cmake_uninstall.cmake.in

(limited to 'host/config')

diff --git a/host/config/CPack.cmake b/host/config/CPack.cmake
new file mode 100644
index 000000000..a73a00923
--- /dev/null
+++ b/host/config/CPack.cmake
@@ -0,0 +1,75 @@
+#
+# Copyright 2010 Ettus Research LLC
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+
+########################################################################
+# Setup Version Numbers
+########################################################################
+SET(UHD_VERSION_MAJOR 0)
+SET(UHD_VERSION_MINOR 0)
+SET(UHD_VERSION_PATCH 0)
+
+########################################################################
+# Get the current YYYYMMDD timestamp
+########################################################################
+EXECUTE_PROCESS(
+    COMMAND ${PYTHON_EXECUTABLE} -c "import time; print time.strftime('%Y%m%d', time.gmtime())"
+    OUTPUT_VARIABLE UHD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE
+)
+SET(UHD_VERSION_MAJOR ${UHD_DATE})
+
+########################################################################
+# Find GIT to get repo information
+########################################################################
+MESSAGE(STATUS "Checking for git")
+FIND_PROGRAM(GIT git)
+IF(${GIT} STREQUAL "GIT-NOTFOUND")
+    MESSAGE(STATUS "Checking for git - not found")
+    SET(UHD_REV "unknown")
+ELSE(${GIT} STREQUAL "GIT-NOTFOUND")
+    MESSAGE(STATUS "Checking for git - found")
+    EXECUTE_PROCESS(
+        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+        COMMAND ${GIT} rev-parse --short HEAD
+        OUTPUT_VARIABLE UHD_REV OUTPUT_STRIP_TRAILING_WHITESPACE
+    )
+ENDIF(${GIT} STREQUAL "GIT-NOTFOUND")
+SET(UHD_VERSION_MINOR ${UHD_REV})
+
+########################################################################
+# Setup CPack
+########################################################################
+SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Ettus Research - Universal Hardware Driver")
+SET(CPACK_PACKAGE_VENDOR              "Ettus Research LLC")
+SET(CPACK_PACKAGE_CONTACT             "support@ettus.com")
+SET(CPACK_PACKAGE_VERSION_MAJOR ${UHD_VERSION_MAJOR})
+SET(CPACK_PACKAGE_VERSION_MINOR ${UHD_VERSION_MINOR})
+SET(CPACK_PACKAGE_VERSION_PATCH ${UHD_VERSION_PATCH})
+SET(CPACK_RESOURCE_FILE_README ${CMAKE_CURRENT_SOURCE_DIR}/README)
+SET(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE)
+SET(BOOST_MIN_VERSION 1.36) #used in setup for boost
+STRING(REPLACE "," ", " CPACK_DEBIAN_PACKAGE_DEPENDS
+    "libboost-date-time-dev          (>= ${BOOST_MIN_VERSION}),"
+    "libboost-filesystem-dev         (>= ${BOOST_MIN_VERSION}),"
+    "libboost-program-options-dev    (>= ${BOOST_MIN_VERSION}),"
+    "libboost-regex-dev              (>= ${BOOST_MIN_VERSION}),"
+    "libboost-system-dev             (>= ${BOOST_MIN_VERSION}),"
+    "libboost-test-dev               (>= ${BOOST_MIN_VERSION}),"
+    "libboost-thread-dev             (>= ${BOOST_MIN_VERSION})"
+)
+SET(CPACK_DEBIAN_PACKAGE_RECOMMENDS "python, python-tk")
+SET(CPACK_RPM_PACKAGE_REQUIRES "boost-devel >= ${BOOST_MIN_VERSION}")
+INCLUDE(CPack) #include after setting vars
diff --git a/host/config/Python.cmake b/host/config/Python.cmake
new file mode 100644
index 000000000..55ef6acca
--- /dev/null
+++ b/host/config/Python.cmake
@@ -0,0 +1,49 @@
+#
+# Copyright 2010 Ettus Research LLC
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+
+########################################################################
+# Setup Python
+########################################################################
+INCLUDE(FindPythonInterp)
+
+IF(NOT PYTHONINTERP_FOUND)
+    MESSAGE(FATAL_ERROR "Error: Python interpretor required by the build system.")
+ENDIF(NOT PYTHONINTERP_FOUND)
+
+MACRO(PYTHON_CHECK_MODULE module have)
+    MESSAGE(STATUS "Checking for python module ${module}")
+    EXECUTE_PROCESS(
+        COMMAND ${PYTHON_EXECUTABLE} -c "import ${module}"
+        RESULT_VARIABLE ${have}
+    )
+    IF(${have} EQUAL 0)
+        MESSAGE(STATUS "Checking for python module ${module} - found")
+        SET(${have} TRUE)
+    ELSE(${have} EQUAL 0)
+        MESSAGE(STATUS "Checking for python module ${module} - not found")
+        SET(${have} FALSE)
+    ENDIF(${have} EQUAL 0)
+ENDMACRO(PYTHON_CHECK_MODULE)
+
+########################################################################
+# Check Modules
+########################################################################
+PYTHON_CHECK_MODULE("Cheetah" HAVE_PYTHON_MODULE_CHEETAH)
+
+IF(NOT HAVE_PYTHON_MODULE_CHEETAH)
+    MESSAGE(FATAL_ERROR "Error: Cheetah Templates required by the build system.")
+ENDIF(NOT HAVE_PYTHON_MODULE_CHEETAH)
diff --git a/host/config/cmake_uninstall.cmake.in b/host/config/cmake_uninstall.cmake.in
new file mode 100644
index 000000000..6031a6ca9
--- /dev/null
+++ b/host/config/cmake_uninstall.cmake.in
@@ -0,0 +1,23 @@
+# http://www.vtk.org/Wiki/CMake_FAQ#Can_I_do_.22make_uninstall.22_with_CMake.3F
+
+IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
+  MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
+ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
+
+FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
+STRING(REGEX REPLACE "\n" ";" files "${files}")
+FOREACH(file ${files})
+  MESSAGE(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
+  IF(EXISTS "$ENV{DESTDIR}${file}")
+    EXEC_PROGRAM(
+      "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
+      OUTPUT_VARIABLE rm_out
+      RETURN_VALUE rm_retval
+      )
+    IF(NOT "${rm_retval}" STREQUAL 0)
+      MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
+    ENDIF(NOT "${rm_retval}" STREQUAL 0)
+  ELSE(EXISTS "$ENV{DESTDIR}${file}")
+    MESSAGE(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
+  ENDIF(EXISTS "$ENV{DESTDIR}${file}")
+ENDFOREACH(file)
-- 
cgit v1.2.3