mirror of
https://github.com/mborgerding/kissfft.git
synced 2025-05-27 21:20:27 -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_SIMD "Build kissfft with SIMD" OFF)
|
||||||
option(KISSFFT_FLOAT "Build kissfft with float type" ON)
|
option(KISSFFT_FLOAT "Build kissfft with float type" ON)
|
||||||
option(KISSFFT_OPENMP "Build kissfft with openmp" OFF)
|
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")
|
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||||
add_compile_options(-ffast-math -fomit-frame-pointer
|
add_compile_options(-ffast-math -fomit-frame-pointer
|
||||||
@ -93,20 +100,16 @@ function(add_kissfft_executable NAME)
|
|||||||
OUTPUT_NAME "${NAME}_${KISSFFT_DATATYPE}")
|
OUTPUT_NAME "${NAME}_${KISSFFT_DATATYPE}")
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
option(KISSFFT_TOOLS "Build kissfft tools" ON)
|
|
||||||
if(KISSFFT_TOOLS)
|
if(KISSFFT_TOOLS)
|
||||||
add_subdirectory(tools)
|
add_subdirectory(tools)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(KISSFFT_TEST "Build and enable kissfft tests" ON)
|
|
||||||
if(KISSFFT_TEST)
|
if(KISSFFT_TEST)
|
||||||
enable_testing()
|
enable_testing()
|
||||||
add_subdirectory(test)
|
add_subdirectory(test)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(KISSFFT_INSTALL "Enable kissfft install" ON)
|
|
||||||
if (KISSFFT_INSTALL)
|
if (KISSFFT_INSTALL)
|
||||||
include(GNUInstallDirs)
|
|
||||||
install(TARGETS kissfft EXPORT kissfft
|
install(TARGETS kissfft EXPORT kissfft
|
||||||
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||||||
LIBRARY 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)
|
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
|
# psdpng does not build with "simd" datatype
|
||||||
if(NOT KISSFFT_DATATYPE MATCHES "simd")
|
if(NOT KISSFFT_DATATYPE MATCHES "simd")
|
||||||
include(FindPkgConfig)
|
include(FindPkgConfig)
|
||||||
pkg_check_modules(libpng REQUIRED IMPORTED_TARGET libpng)
|
pkg_check_modules(libpng REQUIRED IMPORTED_TARGET libpng)
|
||||||
add_kissfft_executable(psdpng psdpng.c kiss_fftr.c)
|
add_kissfft_executable(psdpng psdpng.c kiss_fftr.c)
|
||||||
target_link_libraries(psdpng PRIVATE PkgConfig::libpng)
|
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()
|
endif()
|
||||||
|
|
||||||
#FIXME: dumphdr.c is not available
|
#FIXME: dumphdr.c is not available
|
||||||
|
Loading…
Reference in New Issue
Block a user