add -ffast-math to speed up the execution

+ src/CMakeLists whitespace cleanup
This commit is contained in:
Jiri Popek
2025-07-23 15:07:26 +02:00
parent 884eb31619
commit e22493b4ae
+26 -39
View File
@@ -59,8 +59,8 @@ find_package(sdbus-c++ REQUIRED)
find_package(ICU REQUIRED COMPONENTS uc i18n )
message(STATUS "ICU_LIBRARIES: ${ICU_LIBRARIES}")
find_package(ICU REQUIRED COMPONENTS uc i18n)
message(STATUS "ICU_LIBRARIES: ${ICU_LIBRARIES}")
if(DEFINED ENV{GITHUB_ACTIONS})
@@ -84,7 +84,7 @@ set (ENABLE_VST3 0)
if (ENABLE_VST3)
set (VST3PATH "../../vst3sdk")
set (VST3PATH "../../vst3sdk")
message(STATUS " VST3 Support Enabled")
set (VST3_INCLUDES "${VST3PATH}")
set (VST3_LIBRARIES vst3_lib dl)
@@ -133,7 +133,7 @@ set (LV2DEV_INCLUDE_DIRS ) # use lvt headers fro /usr/include
# version of websocketpp cannot compile under GCC 12.x.
set (WEBSOCKETPP_INCLUDE_DIRS ${PROJECT_SOURCE_DIR}/modules/websocketpp)
message(STATUS "WEBSOCKETPP_INCLUDE_DIRS ${WEBSOCKETPP_INCLUDE_DIRS}" )
message(STATUS "WEBSOCKETPP_INCLUDE_DIRS ${WEBSOCKETPP_INCLUDE_DIRS}")
# pkg_check_modules(JACK "jack")
# if(!JACK_FOUND)
@@ -151,7 +151,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED True)
if (!ENABLE_VST3)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Wno-psabi -DARCHITECTURE=${CPACK_SYSTEM_NAME}")
else()
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-multichar -Wno-psabi")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-multichar -Wno-psabi")
endif()
EXECUTE_PROCESS( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
@@ -163,22 +163,22 @@ if (CMAKE_BUILD_TYPE MATCHES Debug)
message(STATUS "Debug build")
# Must not -D_GLIBCXX_DEBUG, since it conflict with SQLiteCpp.lol
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -DDEBUG " )
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -DDEBUG " )
if (USE_SANITIZE)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -static-libasan " )
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -static-libasan " )
endif()
elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
message(STATUS "RelWithgDebInfo build")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O3 -DNDEBUG" )
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O3 -ffast-math -DNDEBUG" )
else()
message(STATUS "Release build")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG" )
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ffast-math -DNDEBUG" )
endif()
if (ENABLE_BACKTRACE)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -rdynamic")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -rdynamic")
if (${DEBIAN_ARCHITECTURE} MATCHES arm64)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funwind-tables")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funwind-tables")
endif()
endif()
@@ -189,7 +189,7 @@ endif()
# message(STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
# set(CMAKE_ENABLE_EXPORTS 1)
message (STATUS "Cxx flags: ${CMAKE_CXX_FLAGS}" )
message (STATUS "Cxx flags: ${CMAKE_CXX_FLAGS}")
add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_BIND_GLOBAL_PLACEHOLDERS -DONBOARDING)
@@ -350,8 +350,7 @@ add_library(libpipedald STATIC ${PIPEDAL_SOURCES})
target_compile_definitions(libpipedald PUBLIC "_REENTRANT")
target_include_directories(libpipedald PUBLIC ${PIPEDAL_INCLUDES}
)
target_include_directories(libpipedald PUBLIC ${PIPEDAL_INCLUDES})
target_link_libraries(libpipedald
PUBLIC
@@ -394,10 +393,7 @@ target_include_directories(pipedald PRIVATE ${PIPEDAL_INCLUDES})
target_compile_definitions(pipedald PRIVATE "ENABLE_BACKTRACE=${ENABLE_BACKTRACE}")
target_link_libraries(pipedald PRIVATE PiPedalCommon
${PIPEDAL_LIBS}
)
target_link_libraries(pipedald PRIVATE PiPedalCommon ${PIPEDAL_LIBS})
#################################
@@ -448,29 +444,23 @@ add_executable(pipedaltest
MemDebug.hpp
)
target_link_libraries(pipedaltest PRIVATE ${PIPEDAL_LIBS} ${ICU_LIBRARIES})
target_include_directories(pipedaltest PRIVATE ${PIPEDAL_INCLUDES}
)
target_include_directories(pipedaltest PRIVATE ${PIPEDAL_INCLUDES})
set_target_properties(pipedaltest PROPERTIES EXCLUDE_FROM_ALL ${PIPEDAL_EXCLUDE_TESTS})
if (NOT GITHUB_ACTIONS) # Google perftools are not available on Github action servers.
add_executable(pipedalProfilePlugin
profilePluginMain.cpp ArmPerformanceCounters.hpp
)
target_link_libraries(pipedalProfilePlugin PRIVATE profiler ${PIPEDAL_LIBS})
target_link_libraries(pipedalProfilePlugin PRIVATE profiler ${PIPEDAL_LIBS})
target_include_directories(pipedalProfilePlugin PRIVATE ${PIPEDAL_INCLUDES}
)
if (${DEBIAN_ARCHITECTURE} MATCHES arm64)
target_compile_definitions(pipedalProfilePlugin PRIVATE "PIPEDAL_AARCH64")
endif()
endif()
endif()
add_executable(jsonTest
testMain.cpp
jsonTest.cpp
@@ -484,8 +474,7 @@ add_executable(jsonTest
PromiseTest.cpp
)
target_link_libraries(jsonTest PRIVATE PiPedalCommon)
target_include_directories(jsonTest PRIVATE ${PIPEDAL_INCLUDES}
)
target_include_directories(jsonTest PRIVATE ${PIPEDAL_INCLUDES})
set_target_properties(jsonTest PROPERTIES EXCLUDE_FROM_ALL ${PIPEDAL_EXCLUDE_TESTS})
@@ -519,7 +508,7 @@ target_link_libraries(pipedaltest PRIVATE ${PIPEDAL_LIBS}
# licensing problems.
# There's no easy way to get the VST SDK to build without
# GCC c++11 linkage, which is not compatible with pipedal's
# GCC c++11 linkage, which is not compatible with pipedal's
# use of C++20 features (strictly a link time breakage).
#
# So pipedal rebuilds the VST3 SDK using pipedal-compatible
@@ -693,7 +682,7 @@ if(ENABLE_VST3)
add_library(vst3_lib STATIC ${vst3_sources})
target_include_directories(vst3_lib PRIVATE ${VST3_INCLUDES}
target_include_directories(vst3_lib PRIVATE ${VST3_INCLUDES}
)
@@ -710,8 +699,7 @@ if(ENABLE_VST3)
# asan_options.cpp
# )
target_include_directories(vst3test PRIVATE ${PIPEDAL_INCLUDES}
)
target_include_directories(vst3test PRIVATE ${PIPEDAL_INCLUDES})
target_link_libraries(vst3test PRIVATE ${PIPEDAL_LIBS}
@@ -773,8 +761,7 @@ add_executable(pipedal_latency_test
CpuUse.cpp
)
target_link_libraries(pipedal_latency_test PRIVATE pthread asound PiPedalCommon
)
target_link_libraries(pipedal_latency_test PRIVATE pthread asound PiPedalCommon)
add_executable(pipedal_alsa_info
@@ -814,7 +801,7 @@ add_executable(pipedal_update
AdminInstallUpdate.cpp AdminInstallUpdate.hpp
)
target_link_libraries(pipedal_update PRIVATE stdc++fs systemd PiPedalCommon )
target_link_libraries(pipedal_update PRIVATE stdc++fs systemd PiPedalCommon )
add_executable(pipedaladmind AdminMain.cpp CommandLineParser.hpp
@@ -834,7 +821,7 @@ target_link_libraries(pipedaladmind PRIVATE PiPedalCommon pthread atomic stdc++f
add_executable(processcopyrights copyrightMain.cpp
CommandLineParser.hpp
PiPedalException.hpp
asan_options.cpp )
asan_options.cpp)
target_link_libraries(processcopyrights PRIVATE PiPedalCommon stdc++fs)
set (REACT_BUILD_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../build/react/build/)
@@ -876,7 +863,7 @@ add_custom_target (
install (TARGETS pipedalconfig pipedal_kconfig pipedal_latency_test DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
EXPORT pipedalTargets)
install (TARGETS pipedald pipedaladmind pipedal_update DESTINATION ${CMAKE_INSTALL_PREFIX}/sbin
install (TARGETS pipedald pipedaladmind pipedal_update DESTINATION ${CMAKE_INSTALL_PREFIX}/sbin
EXPORT pipedalSbinTargets)