summaryrefslogtreecommitdiff
blob: fd79759f7ed46d5d7f62bb2d434cb985a8a0b86d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
diff -purN a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt	2017-02-13 22:59:10.000000000 +0000
+++ b/CMakeLists.txt	2017-08-08 14:19:10.325817085 +0100
@@ -8,11 +8,16 @@ include(FindThreads)
 
 enable_testing()
 
-# Detect the build type from the $FLAVOR environment variable
-if ("$ENV{FLAVOR}" MATCHES "debug")
-    set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "type of build" FORCE)
-else ()
-    set(CMAKE_BUILD_TYPE "Release" CACHE STRING "type of build" FORCE)
+if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
+    # Detect the build type from the $FLAVOR environment variable
+    # Default to optimized Release builds when unspecified.
+    if ("$ENV{FLAVOR}" MATCHES "debug")
+        set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "type of build" FORCE)
+    elseif ("$ENV{FLAVOR}" MATCHES "profile")
+        set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "type of build" FORCE)
+    else ()
+        set(CMAKE_BUILD_TYPE "Release" CACHE STRING "type of build" FORCE)
+    endif ()
 endif ()
 
 if (NOT WIN32)
diff -purN a/Makefile b/Makefile
--- a/Makefile	2017-02-13 22:59:10.000000000 +0000
+++ b/Makefile	2017-08-08 14:19:16.939829578 +0100
@@ -21,6 +21,10 @@ ifdef TOOLCHAIN
     CMAKE_FLAGS += -DCMAKE_TOOLCHAIN_FILE=$(TOOLCHAIN)
 endif
 
+ifdef BUILD_TYPE
+    CMAKE_FLAGS += -DCMAKE_BUILD_TYPE=$(BUILD_TYPE)
+endif
+
 # make V=1 shortcut for VERBOSE=1
 ifdef V
     VERBOSE=1