]> granicus.if.org Git - esp-idf/commitdiff
cmake: Add support for EXTRA_CFLAGS and EXTRA_CXXFLAGS
authorAnton Maklakov <anton@espressif.com>
Tue, 27 Nov 2018 14:46:50 +0000 (22:46 +0800)
committerAnton Maklakov <anton@espressif.com>
Mon, 10 Dec 2018 04:34:16 +0000 (12:34 +0800)
tools/cmake/idf_functions.cmake

index 82b00bbbac5febc77e98600184597b7a62eed1ea..e8cd828325d3d3fbbf11cb41184477e3591f7f83 100644 (file)
@@ -164,6 +164,20 @@ function(idf_set_global_compile_options)
     # go into the final binary so have no impact on size)
     list(APPEND compile_options "-ggdb")
 
+    # Use EXTRA_CFLAGS, EXTRA_CXXFLAGS and EXTRA_CPPFLAGS to add more priority options to the compiler
+    # EXTRA_CPPFLAGS is used for both C and C++
+    # Unlike environments' CFLAGS/CXXFLAGS/CPPFLAGS which work for both host and target build,
+    # these works only for target build
+    set(EXTRA_CFLAGS "$ENV{EXTRA_CFLAGS}")
+    set(EXTRA_CXXFLAGS "$ENV{EXTRA_CXXFLAGS}")
+    set(EXTRA_CPPFLAGS "$ENV{EXTRA_CPPFLAGS}")
+    spaces2list(EXTRA_CFLAGS)
+    spaces2list(EXTRA_CXXFLAGS)
+    spaces2list(EXTRA_CPPFLAGS)
+    list(APPEND c_compile_options ${EXTRA_CFLAGS})
+    list(APPEND cxx_compile_options ${EXTRA_CXXFLAGS})
+    list(APPEND compile_options ${EXTRA_CPPFLAGS})
+
     # Temporary trick to support both gcc5 and gcc8 builds
     list(APPEND compile_definitions "GCC_NOT_5_2_0=${GCC_NOT_5_2_0}")