mirror of
https://github.com/mborgerding/kissfft.git
synced 2025-05-25 20:20:26 -04:00
Build and install kissfft-tools
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
This commit is contained in:
parent
7651bdaaa1
commit
c2e82a30e8
@ -11,6 +11,13 @@ project(kissfft VERSION "${MAKEFILE_EXTRACTED_VERSION}")
|
||||
option(KISSFFT_SIMD "Build kissfft with SIMD" OFF)
|
||||
option(KISSFFT_FLOAT "Build kissfft with float type" ON)
|
||||
option(KISSFFT_OPENMP "Build kissfft with openmp" OFF)
|
||||
option(KISSFFT_TOOLS "Build kissfft tools" ON)
|
||||
option(KISSFFT_TEST "Build and enable kissfft tests" ON)
|
||||
option(KISSFFT_INSTALL "Enable kissfft install" ON)
|
||||
|
||||
if (KISSFFT_INSTALL)
|
||||
include(GNUInstallDirs)
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
add_compile_options(-ffast-math -fomit-frame-pointer
|
||||
@ -93,20 +100,16 @@ function(add_kissfft_executable NAME)
|
||||
OUTPUT_NAME "${NAME}_${KISSFFT_DATATYPE}")
|
||||
endfunction()
|
||||
|
||||
option(KISSFFT_TOOLS "Build kissfft tools" ON)
|
||||
if(KISSFFT_TOOLS)
|
||||
add_subdirectory(tools)
|
||||
endif()
|
||||
|
||||
option(KISSFFT_TEST "Build and enable kissfft tests" ON)
|
||||
if(KISSFFT_TEST)
|
||||
enable_testing()
|
||||
add_subdirectory(test)
|
||||
endif()
|
||||
|
||||
option(KISSFFT_INSTALL "Enable kissfft install" ON)
|
||||
if (KISSFFT_INSTALL)
|
||||
include(GNUInstallDirs)
|
||||
install(TARGETS kissfft EXPORT kissfft
|
||||
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||
|
@ -6,12 +6,28 @@ target_compile_definitions(fastconv PRIVATE FAST_FILT_UTIL)
|
||||
|
||||
add_kissfft_executable(fft fftutil.c kiss_fftnd.c kiss_fftr.c kiss_fftndr.c)
|
||||
|
||||
|
||||
if (KISSFFT_INSTALL)
|
||||
install(TARGETS fastconv fastconvr fft
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
endif()
|
||||
|
||||
# psdpng does not build with "simd" datatype
|
||||
if(NOT KISSFFT_DATATYPE MATCHES "simd")
|
||||
include(FindPkgConfig)
|
||||
pkg_check_modules(libpng REQUIRED IMPORTED_TARGET libpng)
|
||||
add_kissfft_executable(psdpng psdpng.c kiss_fftr.c)
|
||||
target_link_libraries(psdpng PRIVATE PkgConfig::libpng)
|
||||
if (KISSFFT_INSTALL)
|
||||
install(TARGETS psdpng
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
#FIXME: dumphdr.c is not available
|
||||
|
Loading…
Reference in New Issue
Block a user