mirror of
https://github.com/EttusResearch/uhd.git
synced 2026-10-25 17:36:10 +00:00
Merge branch 'package'
Also tweaked pkg config file Conflicts: host/CMakeLists.txt
This commit is contained in:
commit
ef0ca3b183
16
host/AUTHORS
16
host/AUTHORS
@ -1 +1,17 @@
|
||||
Matt Ettus - matt@ettus.com
|
||||
USRP1/USRP2 FPGA code
|
||||
|
||||
Josh Blum - josh@ettus.com
|
||||
driver framework
|
||||
USRP2 firmware
|
||||
USRP2 host code
|
||||
Basic/LF host code
|
||||
XCVR2450 host code
|
||||
RFX Series host code
|
||||
|
||||
Jason Abele - jason@ettus.com
|
||||
RFX Series host code
|
||||
WBX host code
|
||||
|
||||
Eric Blossom - eb@comsec.com
|
||||
USRP2 firmware
|
||||
|
||||
@ -20,14 +20,10 @@ PROJECT(UHD CXX)
|
||||
ENABLE_TESTING()
|
||||
|
||||
########################################################################
|
||||
# Setup CPack
|
||||
# Config Files
|
||||
########################################################################
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR 0)
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR 0)
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH 0)
|
||||
SET(CPACK_RESOURCE_FILE_README ${CMAKE_CURRENT_SOURCE_DIR}/README)
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE)
|
||||
INCLUDE(CPack) #include after setting vars
|
||||
INCLUDE(${CMAKE_SOURCE_DIR}/config/Python.cmake)
|
||||
INCLUDE(${CMAKE_SOURCE_DIR}/config/CPack.cmake)
|
||||
|
||||
########################################################################
|
||||
# Install Dirs
|
||||
@ -42,7 +38,7 @@ MESSAGE(STATUS "Using install prefix: ${CMAKE_INSTALL_PREFIX}")
|
||||
########################################################################
|
||||
# Local Include Dir
|
||||
########################################################################
|
||||
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
|
||||
|
||||
########################################################################
|
||||
# Optional Compiler Flags
|
||||
@ -62,10 +58,10 @@ IF(NOT CMAKE_BUILD_TYPE)
|
||||
ENDIF(NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
UHD_ADD_OPTIONAL_CXX_COMPILER_FLAG(-Wall HAVE_WALL)
|
||||
UHD_ADD_OPTIONAL_CXX_COMPILER_FLAG(-Wextra HAVE_WEXTRA)
|
||||
UHD_ADD_OPTIONAL_CXX_COMPILER_FLAG(-pedantic HAVE_PEDANTIC)
|
||||
UHD_ADD_OPTIONAL_CXX_COMPILER_FLAG(-ansi HAVE_ANSI)
|
||||
ADD_DEFINITIONS(-Wall)
|
||||
ADD_DEFINITIONS(-Wextra)
|
||||
ADD_DEFINITIONS(-pedantic)
|
||||
ADD_DEFINITIONS(-ansi)
|
||||
#only export symbols that are declared to be part of the uhd api:
|
||||
UHD_ADD_OPTIONAL_CXX_COMPILER_FLAG(-fvisibility=hidden HAVE_VISIBILITY_HIDDEN)
|
||||
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
@ -86,7 +82,7 @@ IF(UNIX AND EXISTS "/usr/lib64")
|
||||
ENDIF(UNIX AND EXISTS "/usr/lib64")
|
||||
|
||||
SET(Boost_ADDITIONAL_VERSIONS "1.42.0" "1.42" "1.43.0" "1.43")
|
||||
FIND_PACKAGE(Boost 1.36 REQUIRED COMPONENTS
|
||||
FIND_PACKAGE(Boost ${BOOST_MIN_VERSION} REQUIRED COMPONENTS
|
||||
date_time
|
||||
filesystem
|
||||
program_options
|
||||
@ -103,7 +99,7 @@ LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})
|
||||
# Create Uninstall Target
|
||||
########################################################################
|
||||
CONFIGURE_FILE(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in
|
||||
${CMAKE_SOURCE_DIR}/config/cmake_uninstall.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake
|
||||
@ONLY)
|
||||
|
||||
|
||||
81
host/config/CPack.cmake
Normal file
81
host/config/CPack.cmake
Normal file
@ -0,0 +1,81 @@
|
||||
#
|
||||
# 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 HHMMSS 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})
|
||||
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "import time; print time.strftime('%H%M%S', time.gmtime())"
|
||||
OUTPUT_VARIABLE UHD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
SET(UHD_VERSION_MINOR ${UHD_TIME})
|
||||
|
||||
########################################################################
|
||||
# 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_PATCH ${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_SOURCE_DIR}/README)
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_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
|
||||
49
host/config/Python.cmake
Normal file
49
host/config/Python.cmake
Normal file
@ -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)
|
||||
@ -147,6 +147,12 @@ Build the project in MSVC
|
||||
**Note:** you may not have permission to build the install target.
|
||||
You need to be an administrator or to run MSVC as administrator.
|
||||
|
||||
** alternative command line instructions **
|
||||
|
||||
* Open the Visual Studio Command Prompt Shorcut
|
||||
* DevEnv <uhd-repo-path>\host\build\ALL_BUILD.vcproj /Build Release
|
||||
* DevEnv <uhd-repo-path>\host\build\INSTALL.vcproj /Build Release
|
||||
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
Setup the PATH environment variable
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@ -15,32 +15,6 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
########################################################################
|
||||
# Setup Python
|
||||
########################################################################
|
||||
INCLUDE(FindPythonInterp)
|
||||
|
||||
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)
|
||||
|
||||
PYTHON_CHECK_MODULE("Cheetah" HAVE_PYTHON_MODULE_CHEETAH)
|
||||
|
||||
IF(NOT HAVE_PYTHON_MODULE_CHEETAH)
|
||||
MESSAGE(FATAL_ERROR "Error: Cheetah Templates needed for pre-build generation.")
|
||||
ENDIF(NOT HAVE_PYTHON_MODULE_CHEETAH)
|
||||
|
||||
########################################################################
|
||||
# Helpful Macros
|
||||
########################################################################
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
prefix=@CMAKE_INSTALL_PREFIX@
|
||||
exec_prefix=${prefix}
|
||||
libdir=${prefix}/@LIBRARY_DIR@
|
||||
libdir=${exec_prefix}/@LIBRARY_DIR@
|
||||
includedir=${prefix}/@INCLUDE_DIR@
|
||||
|
||||
Name: @CPACK_PACKAGE_NAME@
|
||||
Description: Universal Hardware Driver
|
||||
Description: @CPACK_PACKAGE_DESCRIPTION_SUMMARY@
|
||||
Requires:
|
||||
Version: @CPACK_PACKAGE_VERSION@
|
||||
Libs: -L${libdir} -luhd
|
||||
|
||||
Loading…
Reference in New Issue
Block a user