diff options
-rw-r--r-- | host/CMakeLists.txt | 6 | ||||
-rw-r--r-- | host/cmake/Modules/UHDGlobalDefs.cmake | 30 | ||||
-rw-r--r-- | host/include/CMakeLists.txt | 6 | ||||
-rw-r--r-- | host/include/config.h.in | 24 |
4 files changed, 65 insertions, 1 deletions
diff --git a/host/CMakeLists.txt b/host/CMakeLists.txt index 856f1ec70..67a824c8f 100644 --- a/host/CMakeLists.txt +++ b/host/CMakeLists.txt @@ -62,6 +62,7 @@ SET(PKG_MAN_DIR share/man/man1) ######################################################################## # Local Include Dir ######################################################################## +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/include) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) ######################################################################## @@ -190,6 +191,11 @@ MESSAGE(STATUS "Boost library directories: ${Boost_LIBRARY_DIRS}") MESSAGE(STATUS "Boost libraries: ${Boost_LIBRARIES}") ######################################################################## +# Additional settings for build environment +######################################################################## +INCLUDE(UHDGlobalDefs) + +######################################################################## # Check Python Modules ######################################################################## INCLUDE(UHDPython) diff --git a/host/cmake/Modules/UHDGlobalDefs.cmake b/host/cmake/Modules/UHDGlobalDefs.cmake new file mode 100644 index 000000000..b4c0173ea --- /dev/null +++ b/host/cmake/Modules/UHDGlobalDefs.cmake @@ -0,0 +1,30 @@ +# +# Copyright 2015 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/>. +# + +# This file sets up all the stuff for the config.h file + +INCLUDE(CheckCXXSymbolExists) + +## Check for std::log2 +CHECK_CXX_SYMBOL_EXISTS("log2" "cmath" HAVE_LOG2) + +## Macros for the version number +MATH(EXPR UHD_VERSION_ADDED "10000 * ${TRIMMED_VERSION_MAJOR} + 100 * ${TRIMMED_VERSION_MINOR} + ${TRIMMED_VERSION_PATCH}") +ADD_DEFINITIONS(-DUHD_VERSION=${UHD_VERSION_ADDED}) + +## make sure the code knows about config.h +ADD_DEFINITIONS(-DHAVE_CONFIG_H) diff --git a/host/include/CMakeLists.txt b/host/include/CMakeLists.txt index 3f7ca2cb7..780213918 100644 --- a/host/include/CMakeLists.txt +++ b/host/include/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright 2010 Ettus Research LLC +# Copyright 2010,2015 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 @@ -15,5 +15,9 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # +CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in + ${CMAKE_CURRENT_BINARY_DIR}/config.h +) ADD_SUBDIRECTORY(uhd) diff --git a/host/include/config.h.in b/host/include/config.h.in new file mode 100644 index 000000000..bd690299e --- /dev/null +++ b/host/include/config.h.in @@ -0,0 +1,24 @@ +/* + * Copyright 2015 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/>. + */ + +#cmakedefine HAVE_LOG2 + +/* Version macros */ +#cmakedefine UHD_VERSION_MAJOR ${TRIMMED_VERSION_MAJOR} +#cmakedefine UHD_VERSION_MINOR ${TRIMMED_VERSION_MINOR} +#cmakedefine UHD_VERSION_PATCH ${TRIMMED_VERSION_PATCH} +#cmakedefine UHD_VERSION @UHD_VERSION_ADDED@ |