From 1568a11e0c76b0a8ec6c601c4436bb6e095b11e2 Mon Sep 17 00:00:00 2001 From: Joseph Lenox Date: Tue, 31 Jul 2018 09:00:24 -0500 Subject: [PATCH 1/3] Remove -std=c++11 to use the build options in cmake properly. --- src/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d77d103fa..379070315 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -55,7 +55,7 @@ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 ${CMAKE_CXX_FLAGS}") set(CMAKE_INCLUDE_CURRENT_DIR ON) IF(CMAKE_HOST_APPLE) - add_compile_options(-std=c++11 -stdlib=libc++ -DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE) + add_compile_options(-stdlib=libc++ -DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE) set(CMAKE_EXE_LINKER_FLAGS "-framework IOKit -framework CoreFoundation -lc++") ELSE(CMAKE_HOST_APPLE) # set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++ -L.") From d3c18cd1b57fea7e4497cfa01d0c38dee19305fc Mon Sep 17 00:00:00 2001 From: Joseph Lenox Date: Tue, 31 Jul 2018 19:19:05 -0500 Subject: [PATCH 2/3] Added compile option to build with gprof --- src/CMakeLists.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 379070315..57e4b769f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -6,6 +6,7 @@ option(GUI_BUILD_TESTS "Build tests for Slic3r GUI." ON) option(SLIC3R_BUILD_TESTS "Build tests for libslic3r." ON) option(SLIC3R_STATIC "Build and link Slic3r statically." ON) option(BUILD_EXTRUDE_TIN "Build and link the extrude-tin application." OFF) +option(PROFILE "Build with gprof profiling output." OFF) # only on newer GCCs: -ftemplate-backtrace-limit=0 add_compile_options(-DNO_PERL -Wall -DM_PI=3.14159265358979323846 -D_GLIBCXX_USE_C99 -DHAS_BOOL -DNOGDI -DBOOST_ASIO_DISABLE_KQUEUE) @@ -47,9 +48,10 @@ elseif (CMAKE_BUILD_TYPE MATCHES Release) elseif (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) add_compile_options(-g -O3) endif() -# Flags for debug and release tuning -set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -O0 ${CMAKE_CXX_FLAGS}") -set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 ${CMAKE_CXX_FLAGS}") + +IF(PROFILE) + add_compile_options(-g -pg -DBUILD_PROFILE) +endif(PROFILE) set(CMAKE_INCLUDE_CURRENT_DIR ON) From 07b982dd60e7ffdb7d1305083cd19e848cb8aa36 Mon Sep 17 00:00:00 2001 From: Joseph Lenox Date: Tue, 31 Jul 2018 19:21:20 -0500 Subject: [PATCH 3/3] Added compile option to build gcov data --- src/CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 57e4b769f..4a62bcf5c 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -7,6 +7,7 @@ option(SLIC3R_BUILD_TESTS "Build tests for libslic3r." ON) option(SLIC3R_STATIC "Build and link Slic3r statically." ON) option(BUILD_EXTRUDE_TIN "Build and link the extrude-tin application." OFF) option(PROFILE "Build with gprof profiling output." OFF) +option(COVERAGE "Build with gcov code coverage profiling." OFF) # only on newer GCCs: -ftemplate-backtrace-limit=0 add_compile_options(-DNO_PERL -Wall -DM_PI=3.14159265358979323846 -D_GLIBCXX_USE_C99 -DHAS_BOOL -DNOGDI -DBOOST_ASIO_DISABLE_KQUEUE) @@ -49,10 +50,13 @@ elseif (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) add_compile_options(-g -O3) endif() -IF(PROFILE) +if(PROFILE) add_compile_options(-g -pg -DBUILD_PROFILE) endif(PROFILE) +if(COVERAGE) + add_compile_options(-g -ftest-coverage) +endif(COVERAGE) set(CMAKE_INCLUDE_CURRENT_DIR ON)