srsLTE/srslte/lib/CMakeLists.txt

103 lines
3.2 KiB
CMake
Raw Normal View History

#
2015-11-13 04:22:33 -08:00
# Copyright 2013-2015 Software Radio Systems Limited
#
2015-03-24 07:58:33 -07:00
# This file is part of the srsLTE library.
#
2015-03-24 07:58:33 -07:00
# srsLTE is free software: you can redistribute it and/or modify
2015-05-08 08:05:40 -07:00
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
#
2015-03-24 07:58:33 -07:00
# srsLTE 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
2015-05-08 08:05:40 -07:00
# GNU Affero General Public License for more details.
#
2015-05-08 08:05:40 -07:00
# A copy of the GNU Affero General Public License can be found in
# the LICENSE file in the top-level directory of this distribution
# and at http://www.gnu.org/licenses/.
#
add_subdirectory(agc)
add_subdirectory(ch_estimation)
add_subdirectory(common)
add_subdirectory(fec)
add_subdirectory(mimo)
add_subdirectory(phch)
add_subdirectory(rf)
add_subdirectory(sync)
add_subdirectory(utils)
add_subdirectory(channel)
add_subdirectory(dft)
add_subdirectory(io)
add_subdirectory(modem)
add_subdirectory(resampling)
add_subdirectory(scrambling)
add_subdirectory(ue)
2016-05-06 02:03:42 -07:00
add_subdirectory(enb)
2016-04-08 08:30:02 -07:00
2016-08-30 07:01:37 -07:00
set(srslte_srcs version.c
$<TARGET_OBJECTS:srslte_agc>
$<TARGET_OBJECTS:srslte_ch_estimation>
$<TARGET_OBJECTS:srslte_common>
$<TARGET_OBJECTS:srslte_fec>
$<TARGET_OBJECTS:srslte_mimo>
$<TARGET_OBJECTS:srslte_phch>
$<TARGET_OBJECTS:srslte_sync>
$<TARGET_OBJECTS:srslte_utils>
$<TARGET_OBJECTS:srslte_channel>
$<TARGET_OBJECTS:srslte_dft>
$<TARGET_OBJECTS:srslte_io>
$<TARGET_OBJECTS:srslte_modem>
$<TARGET_OBJECTS:srslte_resampling>
$<TARGET_OBJECTS:srslte_scrambling>
$<TARGET_OBJECTS:srslte_ue>
2016-08-30 07:09:49 -07:00
$<TARGET_OBJECTS:srslte_enb>
2016-04-18 04:15:41 -07:00
)
2016-08-30 07:01:37 -07:00
if(RF_FOUND)
list(APPEND srslte_srcs $<TARGET_OBJECTS:srslte_rf>)
endif(RF_FOUND)
2016-08-30 07:01:37 -07:00
add_library(srslte SHARED ${srslte_srcs})
2016-04-28 07:42:12 -07:00
target_link_libraries(srslte pthread m)
set_target_properties(srslte PROPERTIES
2016-04-08 08:30:02 -07:00
VERSION ${SRSLTE_VERSION_MAJOR}.${SRSLTE_VERSION_MINOR})
2016-06-09 08:09:20 -07:00
if(NOT DisableMEX)
2016-08-30 07:01:37 -07:00
add_library(srslte_static STATIC ${srslte_srcs})
2016-06-09 08:09:20 -07:00
endif(NOT DisableMEX)
2016-08-30 07:01:37 -07:00
2016-04-28 07:42:12 -07:00
if(MKL_FOUND)
target_link_libraries(srslte ${MKL_LIBRARIES})
if(NOT DisableMEX)
target_link_libraries(srslte_static ${MKL_LIBRARIES})
endif(NOT DisableMEX)
2016-04-28 07:42:12 -07:00
else(MKL_FOUND)
target_link_libraries(srslte ${FFTW3F_LIBRARIES})
if(NOT DisableMEX)
target_link_libraries(srslte_static ${FFTW3F_LIBRARIES})
endif(NOT DisableMEX)
2016-04-28 07:42:12 -07:00
endif(MKL_FOUND)
2016-04-18 04:15:41 -07:00
if(RF_FOUND)
if(UHD_FOUND)
target_link_libraries(srslte ${UHD_LIBRARIES})
endif(UHD_FOUND)
if(BLADERF_FOUND)
target_link_libraries(srslte ${BLADERF_LIBRARIES})
endif(BLADERF_FOUND)
endif(RF_FOUND)
if(VOLK_FOUND)
target_link_libraries(srslte ${VOLK_LIBRARIES})
if(NOT DisableMEX)
target_link_libraries(srslte_static ${VOLK_LIBRARIES})
endif(NOT DisableMEX)
endif(VOLK_FOUND)
INSTALL(TARGETS srslte DESTINATION ${LIBRARY_DIR})
2015-05-08 08:05:40 -07:00
SRSLTE_SET_PIC(srslte)