aboutsummaryrefslogtreecommitdiffstats
path: root/cmake/Modules/GrComponent.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/Modules/GrComponent.cmake')
-rw-r--r--cmake/Modules/GrComponent.cmake115
1 files changed, 0 insertions, 115 deletions
diff --git a/cmake/Modules/GrComponent.cmake b/cmake/Modules/GrComponent.cmake
deleted file mode 100644
index 22b0ea4..0000000
--- a/cmake/Modules/GrComponent.cmake
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 2010-2011 Free Software Foundation, Inc.
-#
-# This file is part of GNU Radio
-#
-# GNU Radio 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, or (at your option)
-# any later version.
-#
-# GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
-# the Free Software Foundation, Inc., 51 Franklin Street,
-# Boston, MA 02110-1301, USA.
-
-if(DEFINED __INCLUDED_GR_COMPONENT_CMAKE)
- return()
-endif()
-set(__INCLUDED_GR_COMPONENT_CMAKE TRUE)
-
-set(_gr_enabled_components "" CACHE INTERNAL "" FORCE)
-set(_gr_disabled_components "" CACHE INTERNAL "" FORCE)
-
-if(NOT DEFINED ENABLE_DEFAULT)
- set(ENABLE_DEFAULT ON)
- message(STATUS "")
- message(STATUS "The build system will automatically enable all components.")
- message(STATUS "Use -DENABLE_DEFAULT=OFF to disable components by default.")
-endif()
-
-########################################################################
-# Register a component into the system
-# - name: canonical component name
-# - var: variable for enabled status
-# - argn: list of dependencies
-########################################################################
-function(GR_REGISTER_COMPONENT name var)
- include(CMakeDependentOption)
- message(STATUS "")
- message(STATUS "Configuring ${name} support...")
- foreach(dep ${ARGN})
- message(STATUS " Dependency ${dep} = ${${dep}}")
- endforeach(dep)
-
- #if the user set the var to force, we note this
- if("${${var}}" STREQUAL "FORCE")
- set(${var} ON)
- set(var_force TRUE)
- else()
- set(var_force FALSE)
- endif()
-
- #rewrite the dependency list so that deps that are also components use the cached version
- unset(comp_deps)
- foreach(dep ${ARGN})
- list(FIND _gr_enabled_components ${dep} dep_enb_index)
- list(FIND _gr_disabled_components ${dep} dep_dis_index)
- if (${dep_enb_index} EQUAL -1 AND ${dep_dis_index} EQUAL -1)
- list(APPEND comp_deps ${dep})
- else()
- list(APPEND comp_deps ${dep}_cached) #is a component, use cached version
- endif()
- endforeach(dep)
-
- #setup the dependent option for this component
- CMAKE_DEPENDENT_OPTION(${var} "enable ${name} support" ${ENABLE_DEFAULT} "${comp_deps}" OFF)
- set(${var} "${${var}}" PARENT_SCOPE)
- set(${var}_cached "${${var}}" CACHE INTERNAL "" FORCE)
-
- #force was specified, but the dependencies were not met
- if(NOT ${var} AND var_force)
- message(FATAL_ERROR "user force-enabled ${name} but configuration checked failed")
- endif()
-
- #append the component into one of the lists
- if(${var})
- message(STATUS " Enabling ${name} support.")
- list(APPEND _gr_enabled_components ${name})
- else(${var})
- message(STATUS " Disabling ${name} support.")
- list(APPEND _gr_disabled_components ${name})
- endif(${var})
- message(STATUS " Override with -D${var}=ON/OFF")
-
- #make components lists into global variables
- set(_gr_enabled_components ${_gr_enabled_components} CACHE INTERNAL "" FORCE)
- set(_gr_disabled_components ${_gr_disabled_components} CACHE INTERNAL "" FORCE)
-endfunction(GR_REGISTER_COMPONENT)
-
-########################################################################
-# Print the registered component summary
-########################################################################
-function(GR_PRINT_COMPONENT_SUMMARY)
- message(STATUS "")
- message(STATUS "######################################################")
- message(STATUS "# gr-osmosdr enabled components ")
- message(STATUS "######################################################")
- foreach(comp ${_gr_enabled_components})
- message(STATUS " * ${comp}")
- endforeach(comp)
-
- message(STATUS "")
- message(STATUS "######################################################")
- message(STATUS "# gr-osmosdr disabled components ")
- message(STATUS "######################################################")
- foreach(comp ${_gr_disabled_components})
- message(STATUS " * ${comp}")
- endforeach(comp)
-
- message(STATUS "")
-endfunction(GR_PRINT_COMPONENT_SUMMARY)