summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorJosh Morman <jmorman@perspectalabs.com>2021-03-03 13:33:23 -0500
committermormj <34754695+mormj@users.noreply.github.com>2021-03-04 06:18:51 -0500
commit731a274e7cc22f6938dab9af63a6b213bc01f2b6 (patch)
tree240605522a79889459250051d4da60d2d038ce67 /cmake
parent02b909bbcfc27ffea582b06dd2f95e478e0cdee2 (diff)
cmake: remove custom FindGSL module
The in-tree FindGSL.cmake module differs from the standard cmake FindGSL in the target names that are output. (gsl::gsl vs GSL::gsl). This makes linking an OOT to something that links to gsl cause issues and requires copying in FindGSL.cmake into the OOT. Since CMake 3.8 (current project minimum) installs FindGSL, use that instead Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/Modules/FindGSL.cmake168
1 files changed, 0 insertions, 168 deletions
diff --git a/cmake/Modules/FindGSL.cmake b/cmake/Modules/FindGSL.cmake
deleted file mode 100644
index 1776eee594..0000000000
--- a/cmake/Modules/FindGSL.cmake
+++ /dev/null
@@ -1,168 +0,0 @@
-# Try to find gnu scientific library GSL
-# See
-# http://www.gnu.org/software/gsl/ and
-# http://gnuwin32.sourceforge.net/packages/gsl.htm
-#
-# Based on a script of Felix Woelk and Jan Woetzel
-# (www.mip.informatik.uni-kiel.de)
-#
-# It defines the following variables:
-# GSL_FOUND - system has GSL lib
-# GSL_INCLUDE_DIRS - where to find headers
-# GSL_LIBRARIES - full path to the libraries
-# GSL_LIBRARY_DIRS, the directory where the PLplot library is found.
-
-# CMAKE_GSL_CXX_FLAGS = Unix compiler flags for GSL, essentially "`gsl-config --cxxflags`"
-# GSL_LINK_DIRECTORIES = link directories, useful for rpath on Unix
-# GSL_EXE_LINKER_FLAGS = rpath on Unix
-
-if(NOT PKG_CONFIG_FOUND)
- INCLUDE(FindPkgConfig)
-endif()
-PKG_CHECK_MODULES(GSL "gsl >= 1.10")
-IF(GSL_FOUND)
- set(GSL_LIBRARY_DIRS ${GSL_LIBDIR})
- set(GSL_INCLUDE_DIRS ${GSL_INCLUDEDIR})
- if( NOT TARGET gsl::gsl)
- add_library(gsl::gsl INTERFACE IMPORTED)
- set_target_properties(gsl::gsl PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${GSL_INCLUDE_DIRS}"
- INTERFACE_LINK_LIBRARIES "${GSL_LIBRARIES}"
- INTERFACE_COMPILE_DEFINITIONS "${GSL_DEFINITIONS}"
- )
- endif( NOT TARGET gsl::gsl)
-ELSE(GSL_FOUND)
-set( GSL_FOUND OFF )
-set( GSL_CBLAS_FOUND OFF )
-
-# Windows, but not for Cygwin and MSys where gsl-config is available
-if( WIN32 AND NOT CYGWIN AND NOT MSYS )
- # look for headers
- find_path( GSL_INCLUDE_DIRS
- NAMES gsl/gsl_cdf.h gsl/gsl_randist.h
- )
- if( GSL_INCLUDE_DIRS )
- # look for gsl library
- find_library( GSL_LIBRARY
- NAMES gsl
- )
- if( GSL_LIBRARY )
- set( GSL_INCLUDE_DIRS ${GSL_INCLUDE_DIR} )
- get_filename_component( GSL_LIBRARY_DIRS ${GSL_LIBRARY} PATH )
- set( GSL_FOUND ON )
- endif( GSL_LIBRARY )
-
- # look for gsl cblas library
- find_library( GSL_CBLAS_LIBRARY
- NAMES gslcblas cblas
- )
- if( GSL_CBLAS_LIBRARY )
- set( GSL_CBLAS_FOUND ON )
- endif( GSL_CBLAS_LIBRARY )
-
- set( GSL_LIBRARIES ${GSL_LIBRARY} ${GSL_CBLAS_LIBRARY} )
- set( GSL_LDFLAGS ${GSL_LIBRARIES} )
- endif( GSL_INCLUDE_DIRS )
-
- mark_as_advanced(
- GSL_INCLUDE_DIRS
- GSL_LIBRARIES
- GSL_CBLAS_LIBRARIES
- )
-else( WIN32 AND NOT CYGWIN AND NOT MSYS )
- if( UNIX OR MSYS )
- find_program( GSL_CONFIG_EXECUTABLE gsl-config
- /usr/bin/
- /usr/local/bin
- )
-
- if( GSL_CONFIG_EXECUTABLE )
- set( GSL_FOUND ON )
-
- # run the gsl-config program to get cxxflags
- execute_process(
- COMMAND sh "${GSL_CONFIG_EXECUTABLE}" --cflags
- OUTPUT_VARIABLE GSL_CFLAGS
- RESULT_VARIABLE RET
- ERROR_QUIET
- )
- if( RET EQUAL 0 )
- string( STRIP "${GSL_CFLAGS}" GSL_CFLAGS )
- separate_arguments( GSL_CFLAGS )
-
- # parse definitions from cflags; drop -D* from CFLAGS
- string( REGEX MATCHALL "-D[^;]+"
- GSL_DEFINITIONS "${GSL_CFLAGS}" )
- string( REGEX REPLACE "-D[^;]+;" ""
- GSL_CFLAGS "${GSL_CFLAGS}" )
-
- # parse include dirs from cflags; drop -I prefix
- string( REGEX MATCHALL "-I[^;]+"
- GSL_INCLUDE_DIRS "${GSL_CFLAGS}" )
- string( REPLACE "-I" ""
- GSL_INCLUDE_DIRS "${GSL_INCLUDE_DIRS}")
- string( REGEX REPLACE "-I[^;]+;" ""
- GSL_CFLAGS "${GSL_CFLAGS}")
-
- message("GSL_DEFINITIONS=${GSL_DEFINITIONS}")
- message("GSL_INCLUDE_DIRS=${GSL_INCLUDE_DIRS}")
- message("GSL_CFLAGS=${GSL_CFLAGS}")
- else( RET EQUAL 0 )
- set( GSL_FOUND FALSE )
- endif( RET EQUAL 0 )
-
- # run the gsl-config program to get the libs
- execute_process(
- COMMAND sh "${GSL_CONFIG_EXECUTABLE}" --libs
- OUTPUT_VARIABLE GSL_LIBRARIES
- RESULT_VARIABLE RET
- ERROR_QUIET
- )
- if( RET EQUAL 0 )
- string(STRIP "${GSL_LIBRARIES}" GSL_LIBRARIES )
- separate_arguments( GSL_LIBRARIES )
-
- # extract linkdirs (-L) for rpath (i.e., LINK_DIRECTORIES)
- string( REGEX MATCHALL "-L[^;]+"
- GSL_LIBRARY_DIRS "${GSL_LIBRARIES}" )
- string( REPLACE "-L" ""
- GSL_LIBRARY_DIRS "${GSL_LIBRARY_DIRS}" )
- else( RET EQUAL 0 )
- set( GSL_FOUND FALSE )
- endif( RET EQUAL 0 )
-
- MARK_AS_ADVANCED(
- GSL_CFLAGS
- )
- message( STATUS "Using GSL from ${GSL_PREFIX}" )
- else( GSL_CONFIG_EXECUTABLE )
- message( STATUS "FindGSL: gsl-config not found.")
- endif( GSL_CONFIG_EXECUTABLE )
- endif( UNIX OR MSYS )
-endif( WIN32 AND NOT CYGWIN AND NOT MSYS )
-#needed for gsl windows port but safe to always define
-LIST(APPEND GSL_DEFINITIONS "GSL_DLL")
-
-if( GSL_FOUND )
- if( NOT GSL_FIND_QUIETLY )
- message( STATUS "FindGSL: Found both GSL headers and library" )
- endif( NOT GSL_FIND_QUIETLY )
- if( NOT TARGET gsl::gsl)
- add_library(gsl::gsl INTERFACE IMPORTED)
- set_target_properties(gsl::gsl PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${GSL_INCLUDE_DIRS}"
- INTERFACE_LINK_LIBRARIES "${GSL_LIBRARIES}"
- INTERFACE_COMPILE_DEFINITIONS "${GSL_DEFINITIONS}"
- )
- endif( NOT TARGET gsl::gsl)
-else( GSL_FOUND )
- if( GSL_FIND_REQUIRED )
- message( FATAL_ERROR "FindGSL: Could not find GSL headers or library" )
- endif( GSL_FIND_REQUIRED )
-endif( GSL_FOUND )
-
-
-ENDIF(GSL_FOUND)
-
-INCLUDE(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(GSL DEFAULT_MSG GSL_LIBRARIES GSL_INCLUDE_DIRS GSL_LIBRARY_DIRS)