diff --git a/CMakeLists.txt b/CMakeLists.txt index dffb7c6..5bea7e9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,15 +17,6 @@ if (ANDROID) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=c++17") endif (ANDROID) -# Compiler arguments for each platform -if (MSVC) - target_compile_options(sdrpp PRIVATE /O2 /Ob2 /std:c++17 /EHsc) -elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") - target_compile_options(sdrpp PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) -else () - target_compile_options(sdrpp PRIVATE -O3 -std=c++17) -endif () - # Backends option(OPT_BACKEND_GLFW "Use the GLFW backend" ON) option(OPT_BACKEND_ANDROID "Use the Android backend" OFF) @@ -218,12 +209,23 @@ endif (OPT_BUILD_SCHEDULER) add_executable(sdrpp "src/main.cpp" "win32/resources.rc") target_link_libraries(sdrpp PRIVATE sdrpp_core) +# Compiler arguments for each platform +if (MSVC) + target_compile_options(sdrpp PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(sdrpp PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(sdrpp PRIVATE -O3 -std=c++17) +endif () + + # Copy dynamic libs over if (MSVC) add_custom_target(do_always ALL xcopy /s \"$\\*.dll\" \"$\" /Y) add_custom_target(do_always_volk ALL xcopy /s \"C:/Program Files/PothosSDR/bin\\volk.dll\" \"$\" /Y) endif () + if (${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD") add_custom_target(do_always ALL cp \"$/libsdrpp_core.so\" \"$\") endif () diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt index 4d8612e..675cdee 100644 --- a/core/CMakeLists.txt +++ b/core/CMakeLists.txt @@ -29,6 +29,15 @@ endif (OPT_BACKEND_ANDROID) # Add code to dyn lib add_library(sdrpp_core SHARED ${SRC} ${BACKEND_SRC}) +# Set compiler options +if (MSVC) + target_compile_options(sdrpp_core PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(sdrpp_core PRIVATE -O3 -std=c++17) +else () + target_compile_options(sdrpp_core PRIVATE -O3 -std=c++17) +endif () + # Set the install prefix target_compile_definitions(sdrpp_core PUBLIC INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}") diff --git a/decoder_modules/falcon9_decoder/CMakeLists.txt b/decoder_modules/falcon9_decoder/CMakeLists.txt index 6876f34..d08286a 100644 --- a/decoder_modules/falcon9_decoder/CMakeLists.txt +++ b/decoder_modules/falcon9_decoder/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(falcon9_decoder PROPERTIES PREFIX "") target_include_directories(falcon9_decoder PRIVATE "src/") +if (MSVC) + target_compile_options(falcon9_decoder PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(falcon9_decoder PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(falcon9_decoder PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS falcon9_decoder DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/decoder_modules/kg_sstv_decoder/CMakeLists.txt b/decoder_modules/kg_sstv_decoder/CMakeLists.txt index bff8079..4bb74df 100644 --- a/decoder_modules/kg_sstv_decoder/CMakeLists.txt +++ b/decoder_modules/kg_sstv_decoder/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(kg_sstv_decoder PROPERTIES PREFIX "") target_include_directories(kg_sstv_decoder PRIVATE "src/") +if (MSVC) + target_compile_options(kg_sstv_decoder PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(kg_sstv_decoder PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(kg_sstv_decoder PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS kg_sstv_decoder DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/decoder_modules/m17_decoder/CMakeLists.txt b/decoder_modules/m17_decoder/CMakeLists.txt index 9f960b7..4b44578 100644 --- a/decoder_modules/m17_decoder/CMakeLists.txt +++ b/decoder_modules/m17_decoder/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(m17_decoder PROPERTIES PREFIX "") target_include_directories(m17_decoder PRIVATE "src/") +if (MSVC) + target_compile_options(m17_decoder PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(m17_decoder PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(m17_decoder PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_include_directories(m17_decoder PRIVATE "C:/Program Files/codec2/include/") diff --git a/decoder_modules/meteor_demodulator/CMakeLists.txt b/decoder_modules/meteor_demodulator/CMakeLists.txt index 79df1a5..e15042f 100644 --- a/decoder_modules/meteor_demodulator/CMakeLists.txt +++ b/decoder_modules/meteor_demodulator/CMakeLists.txt @@ -9,5 +9,13 @@ add_library(meteor_demodulator SHARED ${SRC}) target_link_libraries(meteor_demodulator PRIVATE sdrpp_core) set_target_properties(meteor_demodulator PROPERTIES PREFIX "") +if (MSVC) + target_compile_options(meteor_demodulator PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(meteor_demodulator PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(meteor_demodulator PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS meteor_demodulator DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/decoder_modules/radio/CMakeLists.txt b/decoder_modules/radio/CMakeLists.txt index 4c806bb..f554f2a 100644 --- a/decoder_modules/radio/CMakeLists.txt +++ b/decoder_modules/radio/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(radio PROPERTIES PREFIX "") target_include_directories(radio PRIVATE "src/") +if (MSVC) + target_compile_options(radio PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(radio PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(radio PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS radio DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/decoder_modules/weather_sat_decoder/CMakeLists.txt b/decoder_modules/weather_sat_decoder/CMakeLists.txt index 4e1d0cf..b687d75 100644 --- a/decoder_modules/weather_sat_decoder/CMakeLists.txt +++ b/decoder_modules/weather_sat_decoder/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(weather_sat_decoder PROPERTIES PREFIX "") target_include_directories(weather_sat_decoder PRIVATE "src/") +if (MSVC) + target_compile_options(weather_sat_decoder PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(weather_sat_decoder PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(weather_sat_decoder PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS weather_sat_decoder DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/demo_module/CMakeLists.txt b/misc_modules/demo_module/CMakeLists.txt index 2b8ce39..9a1fdb1 100644 --- a/misc_modules/demo_module/CMakeLists.txt +++ b/misc_modules/demo_module/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(demo PROPERTIES PREFIX "") target_include_directories(demo PRIVATE "src/") +if (MSVC) + target_compile_options(demo PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(demo PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(demo PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS demo DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/discord_integration/CMakeLists.txt b/misc_modules/discord_integration/CMakeLists.txt index a31e0d1..c0f54b1 100644 --- a/misc_modules/discord_integration/CMakeLists.txt +++ b/misc_modules/discord_integration/CMakeLists.txt @@ -17,5 +17,13 @@ set_target_properties(discord_integration PROPERTIES PREFIX "") target_include_directories(discord_integration PRIVATE "src/" "discord-rpc/include" "../../decoder_modules/radio/src/") +if (MSVC) + target_compile_options(discord_integration PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(discord_integration PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(discord_integration PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS discord_integration DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/frequency_manager/CMakeLists.txt b/misc_modules/frequency_manager/CMakeLists.txt index 91ca931..a3397c9 100644 --- a/misc_modules/frequency_manager/CMakeLists.txt +++ b/misc_modules/frequency_manager/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(frequency_manager PROPERTIES PREFIX "") target_include_directories(frequency_manager PRIVATE "src/" "../../decoder_modules/radio/src") +if (MSVC) + target_compile_options(frequency_manager PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(frequency_manager PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(frequency_manager PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS frequency_manager DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/recorder/CMakeLists.txt b/misc_modules/recorder/CMakeLists.txt index 0f91f97..d72b938 100644 --- a/misc_modules/recorder/CMakeLists.txt +++ b/misc_modules/recorder/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(recorder PROPERTIES PREFIX "") target_include_directories(recorder PRIVATE "src/") +if (MSVC) + target_compile_options(recorder PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(recorder PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(recorder PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS recorder DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/rigctl_server/CMakeLists.txt b/misc_modules/rigctl_server/CMakeLists.txt index 665e78b..89a61df 100644 --- a/misc_modules/rigctl_server/CMakeLists.txt +++ b/misc_modules/rigctl_server/CMakeLists.txt @@ -12,5 +12,13 @@ target_include_directories(rigctl_server PRIVATE "../recorder/src") target_include_directories(rigctl_server PRIVATE "../../decoder_modules/meteor_demodulator/src") target_include_directories(rigctl_server PRIVATE "../../decoder_modules/radio/src") +if (MSVC) + target_compile_options(rigctl_server PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(rigctl_server PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(rigctl_server PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS rigctl_server DESTINATION lib/sdrpp/plugins) diff --git a/misc_modules/scanner/CMakeLists.txt b/misc_modules/scanner/CMakeLists.txt index 9e3e82d..98a380b 100644 --- a/misc_modules/scanner/CMakeLists.txt +++ b/misc_modules/scanner/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(scanner PROPERTIES PREFIX "") target_include_directories(scanner PRIVATE "src/") +if (MSVC) + target_compile_options(scanner PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(scanner PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(scanner PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS scanner DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/misc_modules/scheduler/CMakeLists.txt b/misc_modules/scheduler/CMakeLists.txt index fcf15ec..f51a8f5 100644 --- a/misc_modules/scheduler/CMakeLists.txt +++ b/misc_modules/scheduler/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(scheduler PROPERTIES PREFIX "") target_include_directories(scheduler PRIVATE "src/") +if (MSVC) + target_compile_options(scheduler PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(scheduler PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(scheduler PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS scheduler DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/sink_modules/audio_sink/CMakeLists.txt b/sink_modules/audio_sink/CMakeLists.txt index b056716..e76fa43 100644 --- a/sink_modules/audio_sink/CMakeLists.txt +++ b/sink_modules/audio_sink/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(audio_sink PROPERTIES PREFIX "") target_include_directories(audio_sink PRIVATE "src/") +if (MSVC) + target_compile_options(audio_sink PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(audio_sink PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(audio_sink PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(audio_sink PRIVATE "C:/Program Files (x86)/RtAudio/lib") diff --git a/sink_modules/network_sink/CMakeLists.txt b/sink_modules/network_sink/CMakeLists.txt index 46b9964..b7ab9c7 100644 --- a/sink_modules/network_sink/CMakeLists.txt +++ b/sink_modules/network_sink/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(network_sink PROPERTIES PREFIX "") target_include_directories(network_sink PRIVATE "src/") +if (MSVC) + target_compile_options(network_sink PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(network_sink PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(network_sink PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS network_sink DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/sink_modules/new_portaudio_sink/CMakeLists.txt b/sink_modules/new_portaudio_sink/CMakeLists.txt index 44bf466..0d05291 100644 --- a/sink_modules/new_portaudio_sink/CMakeLists.txt +++ b/sink_modules/new_portaudio_sink/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(new_portaudio_sink PROPERTIES PREFIX "") target_include_directories(new_portaudio_sink PRIVATE "src/") +if (MSVC) + target_compile_options(new_portaudio_sink PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(new_portaudio_sink PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(new_portaudio_sink PRIVATE -O3 -std=c++17) +endif () + if (MSVC) find_package(portaudio CONFIG REQUIRED) target_link_libraries(new_portaudio_sink PRIVATE portaudio) diff --git a/sink_modules/portaudio_sink/CMakeLists.txt b/sink_modules/portaudio_sink/CMakeLists.txt index 377f763..d920989 100644 --- a/sink_modules/portaudio_sink/CMakeLists.txt +++ b/sink_modules/portaudio_sink/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(audio_sink PROPERTIES PREFIX "") target_include_directories(audio_sink PRIVATE "src/") +if (MSVC) + target_compile_options(audio_sink PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(audio_sink PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(audio_sink PRIVATE -O3 -std=c++17) +endif () + if (MSVC) find_package(portaudio CONFIG REQUIRED) target_link_libraries(audio_sink PRIVATE portaudio) diff --git a/source_modules/airspy_source/CMakeLists.txt b/source_modules/airspy_source/CMakeLists.txt index 9993ff0..b206da9 100644 --- a/source_modules/airspy_source/CMakeLists.txt +++ b/source_modules/airspy_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(airspy_source PROPERTIES PREFIX "") target_include_directories(airspy_source PRIVATE "src/") +if (MSVC) + target_compile_options(airspy_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(airspy_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(airspy_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(airspy_source PRIVATE "C:/Program Files/PothosSDR/bin/") diff --git a/source_modules/airspyhf_source/CMakeLists.txt b/source_modules/airspyhf_source/CMakeLists.txt index 28091df..03446ad 100644 --- a/source_modules/airspyhf_source/CMakeLists.txt +++ b/source_modules/airspyhf_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(airspyhf_source PROPERTIES PREFIX "") target_include_directories(airspyhf_source PRIVATE "src/") +if (MSVC) + target_compile_options(airspyhf_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(airspyhf_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(airspyhf_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(airspyhf_source PRIVATE "C:/Program Files/PothosSDR/bin/") diff --git a/source_modules/bladerf_source/CMakeLists.txt b/source_modules/bladerf_source/CMakeLists.txt index ed8a989..bd801ce 100644 --- a/source_modules/bladerf_source/CMakeLists.txt +++ b/source_modules/bladerf_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(bladerf_source PROPERTIES PREFIX "") target_include_directories(bladerf_source PRIVATE "src/") +if (MSVC) + target_compile_options(bladerf_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(bladerf_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(bladerf_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(bladerf_source PRIVATE "C:/Program Files/PothosSDR/bin/") diff --git a/source_modules/file_source/CMakeLists.txt b/source_modules/file_source/CMakeLists.txt index eb6ae93..496c084 100644 --- a/source_modules/file_source/CMakeLists.txt +++ b/source_modules/file_source/CMakeLists.txt @@ -9,5 +9,13 @@ set_target_properties(file_source PROPERTIES PREFIX "") target_include_directories(file_source PRIVATE "src/") +if (MSVC) + target_compile_options(file_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(file_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(file_source PRIVATE -O3 -std=c++17) +endif () + # Install directives install(TARGETS file_source DESTINATION lib/sdrpp/plugins) \ No newline at end of file diff --git a/source_modules/hackrf_source/CMakeLists.txt b/source_modules/hackrf_source/CMakeLists.txt index 5e209e2..6b69c75 100644 --- a/source_modules/hackrf_source/CMakeLists.txt +++ b/source_modules/hackrf_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(hackrf_source PROPERTIES PREFIX "") target_include_directories(hackrf_source PRIVATE "src/") +if (MSVC) + target_compile_options(hackrf_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(hackrf_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(hackrf_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(hackrf_source PRIVATE "C:/Program Files/PothosSDR/bin/") diff --git a/source_modules/limesdr_source/CMakeLists.txt b/source_modules/limesdr_source/CMakeLists.txt index 961e756..9d07ae3 100644 --- a/source_modules/limesdr_source/CMakeLists.txt +++ b/source_modules/limesdr_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(limesdr_source PROPERTIES PREFIX "") target_include_directories(limesdr_source PRIVATE "src/") +if (MSVC) + target_compile_options(limesdr_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(limesdr_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(limesdr_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(limesdr_source PRIVATE "C:/Program Files/PothosSDR/lib") diff --git a/source_modules/plutosdr_source/CMakeLists.txt b/source_modules/plutosdr_source/CMakeLists.txt index 20e39e4..224a328 100644 --- a/source_modules/plutosdr_source/CMakeLists.txt +++ b/source_modules/plutosdr_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(plutosdr_source PROPERTIES PREFIX "") target_include_directories(plutosdr_source PRIVATE "src/") +if (MSVC) + target_compile_options(plutosdr_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(plutosdr_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(plutosdr_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(plutosdr_source PRIVATE "C:/Program Files/PothosSDR/lib/") diff --git a/source_modules/rfspace_source/CMakeLists.txt b/source_modules/rfspace_source/CMakeLists.txt index 7123260..3035589 100644 --- a/source_modules/rfspace_source/CMakeLists.txt +++ b/source_modules/rfspace_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(rfspace_source PROPERTIES PREFIX "") target_include_directories(rfspace_source PRIVATE "src/") +if (MSVC) + target_compile_options(rfspace_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(rfspace_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(rfspace_source PRIVATE -O3 -std=c++17) +endif () + if(WIN32) target_link_libraries(rfspace_source PRIVATE wsock32 ws2_32) endif() diff --git a/source_modules/rtl_sdr_source/CMakeLists.txt b/source_modules/rtl_sdr_source/CMakeLists.txt index f35475b..3df82b2 100644 --- a/source_modules/rtl_sdr_source/CMakeLists.txt +++ b/source_modules/rtl_sdr_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(rtl_sdr_source PROPERTIES PREFIX "") target_include_directories(rtl_sdr_source PRIVATE "src/") +if (MSVC) + target_compile_options(rtl_sdr_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(rtl_sdr_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(rtl_sdr_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(rtl_sdr_source PRIVATE "C:/Program Files/PothosSDR/bin/") diff --git a/source_modules/rtl_tcp_source/CMakeLists.txt b/source_modules/rtl_tcp_source/CMakeLists.txt index 6cacf2f..a1e0a78 100644 --- a/source_modules/rtl_tcp_source/CMakeLists.txt +++ b/source_modules/rtl_tcp_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(rtl_tcp_source PROPERTIES PREFIX "") target_include_directories(rtl_tcp_source PRIVATE "src/") +if (MSVC) + target_compile_options(rtl_tcp_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(rtl_tcp_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(rtl_tcp_source PRIVATE -O3 -std=c++17) +endif () + if(WIN32) target_link_libraries(rtl_tcp_source PRIVATE wsock32 ws2_32) endif() diff --git a/source_modules/sddc_source/CMakeLists.txt b/source_modules/sddc_source/CMakeLists.txt index 5c6890f..0882a1f 100644 --- a/source_modules/sddc_source/CMakeLists.txt +++ b/source_modules/sddc_source/CMakeLists.txt @@ -14,6 +14,14 @@ set_target_properties(sddc_source PROPERTIES PREFIX "") target_include_directories(sddc_source PRIVATE "src/" "src/libsddc/" "src/libsddc/Core/" "src/libsddc/Core/pffft/" "src/libsddc/libsddc/") +if (MSVC) + target_compile_options(sddc_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(sddc_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(sddc_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(sddc_source PRIVATE "C:/Program Files/PothosSDR/lib/") diff --git a/source_modules/sdrplay_source/CMakeLists.txt b/source_modules/sdrplay_source/CMakeLists.txt index d23e0cd..902d250 100644 --- a/source_modules/sdrplay_source/CMakeLists.txt +++ b/source_modules/sdrplay_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(sdrplay_source PROPERTIES PREFIX "") target_include_directories(sdrplay_source PRIVATE "src/") +if (MSVC) + target_compile_options(sdrplay_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(sdrplay_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(sdrplay_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(sdrplay_source PRIVATE "C:/Program Files/SDRplay/API/x64") diff --git a/source_modules/sdrpp_server_source/CMakeLists.txt b/source_modules/sdrpp_server_source/CMakeLists.txt index 587a7a2..477e648 100644 --- a/source_modules/sdrpp_server_source/CMakeLists.txt +++ b/source_modules/sdrpp_server_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(sdrpp_server_source PROPERTIES PREFIX "") target_include_directories(sdrpp_server_source PRIVATE "src/") +if (MSVC) + target_compile_options(sdrpp_server_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(sdrpp_server_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(sdrpp_server_source PRIVATE -O3 -std=c++17) +endif () + if(WIN32) target_link_libraries(sdrpp_server_source PRIVATE wsock32 ws2_32) endif() diff --git a/source_modules/soapy_source/CMakeLists.txt b/source_modules/soapy_source/CMakeLists.txt index 5dfb2b7..f6b40fe 100644 --- a/source_modules/soapy_source/CMakeLists.txt +++ b/source_modules/soapy_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(soapy_source PROPERTIES PREFIX "") target_include_directories(soapy_source PRIVATE "src/") +if (MSVC) + target_compile_options(soapy_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(soapy_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(soapy_source PRIVATE -O3 -std=c++17) +endif () + if (MSVC) # Lib path target_link_directories(soapy_source PRIVATE "C:/Program Files/PothosSDR/lib/") diff --git a/source_modules/spyserver_source/CMakeLists.txt b/source_modules/spyserver_source/CMakeLists.txt index 823b75b..db904df 100644 --- a/source_modules/spyserver_source/CMakeLists.txt +++ b/source_modules/spyserver_source/CMakeLists.txt @@ -9,6 +9,14 @@ set_target_properties(spyserver_source PROPERTIES PREFIX "") target_include_directories(spyserver_source PRIVATE "src/") +if (MSVC) + target_compile_options(spyserver_source PRIVATE /O2 /Ob2 /std:c++17 /EHsc) +elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + target_compile_options(spyserver_source PRIVATE -O3 -std=c++17 -Wno-unused-command-line-argument -undefined dynamic_lookup) +else () + target_compile_options(spyserver_source PRIVATE -O3 -std=c++17) +endif () + if(WIN32) target_link_libraries(spyserver_source PRIVATE wsock32 ws2_32) endif()