horusdemodlib/src/CMakeLists.txt

68 wiersze
2.1 KiB
CMake

include_directories(${CMAKE_CURRENT_SOURCE_DIR})
set(horus_srcs
fsk.c
kiss_fft.c
kiss_fftr.c
mpdecode_core.c
H_256_768_22.c
H_128_384_23.c
golay23.c
phi0.c
horus_api.c
horus_l2.c
)
add_library(horus SHARED ${horus_srcs})
target_link_libraries(horus m)
set_target_properties(horus PROPERTIES
PUBLIC_HEADER horus_api.h
)
target_include_directories(horus INTERFACE
$<INSTALL_INTERFACE:include/horus>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
install(TARGETS horus EXPORT horus-config
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/horus
)
install(EXPORT horus-config
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/horus
)
# Export libhab target for import into build trees of other projects.
export(TARGETS horus
FILE ${CMAKE_BINARY_DIR}/horus.cmake
)
add_executable(fsk_mod fsk_mod.c)
target_link_libraries(fsk_mod m horus ${CMAKE_REQUIRED_LIBRARIES})
add_executable(fsk_demod fsk_demod.c modem_probe.c octave.c)
target_link_libraries(fsk_demod m horus ${CMAKE_REQUIRED_LIBRARIES})
add_executable(fsk_get_test_bits fsk_get_test_bits.c)
target_link_libraries(fsk_get_test_bits)
add_executable(fsk_put_test_bits fsk_put_test_bits.c)
target_link_libraries(fsk_put_test_bits ${CMAKE_REQUIRED_LIBRARIES})
add_executable(drs232 drs232.c)
target_link_libraries(drs232 m horus ${CMAKE_REQUIRED_LIBRARIES})
add_executable(drs232_ldpc drs232_ldpc.c)
target_link_libraries(drs232_ldpc m horus ${CMAKE_REQUIRED_LIBRARIES})
add_definitions(-DINTERLEAVER -DSCRAMBLER -DRUN_TIME_TABLES)
add_executable(horus_gen_test_bits horus_gen_test_bits.c horus_l2.c)
target_link_libraries(horus_gen_test_bits m horus)
add_definitions(-DHORUS_L2_RX -DINTERLEAVER -DSCRAMBLER -DRUN_TIME_TABLES)
add_executable(horus_demod horus_demod.c horus_api.c horus_l2.c golay23.c fsk.c kiss_fft.c)
target_link_libraries(horus_demod m horus ${CMAKE_REQUIRED_LIBRARIES})
install(TARGETS fsk_mod fsk_demod fsk_get_test_bits fsk_put_test_bits drs232 drs232_ldpc horus_gen_test_bits horus_demod DESTINATION bin)