]> git.seodisparate.com - SimpleArchiver/commitdiff
Update cmake conf: omit flags for cross compiling
authorStephen Seo <seo.disparate@gmail.com>
Wed, 15 Jan 2025 11:01:42 +0000 (20:01 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Wed, 15 Jan 2025 11:15:15 +0000 (20:15 +0900)
CMakeLists.txt

index 5601cc37aab8dcd96b8f3d0da2f073acb4392301..0f74c6af3b7f41826ec23e7b8cdec98d1260d6f5 100644 (file)
@@ -34,7 +34,6 @@ target_compile_options(simplearchiver PUBLIC
     -Werror=format-security
     -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3
     -D_GLIBCXX_ASSERTIONS
-    -fstrict-flex-arrays=3
     -fstack-clash-protection -fstack-protector-strong
     -Wl,-z,nodlopen -Wl,-z,noexecstack
     -Wl,-z,relro -Wl,-z,now
@@ -47,7 +46,6 @@ target_link_options(simplearchiver PUBLIC
     -Werror=format-security
     -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3
     -D_GLIBCXX_ASSERTIONS
-    -fstrict-flex-arrays=3
     -fstack-clash-protection -fstack-protector-strong
     -Wl,-z,nodlopen -Wl,-z,noexecstack
     -Wl,-z,relro -Wl,-z,now
@@ -55,6 +53,15 @@ target_link_options(simplearchiver PUBLIC
     -fPIE -pie
 )
 
+if(NOT DEFINED DISABLE_FLAGS_FOR_COMPAT)
+    target_compile_options(simplearchiver PUBLIC
+        -fstrict-flex-arrays=3
+    )
+    target_link_options(simplearchiver PUBLIC
+        -fstrict-flex-arrays=3
+    )
+endif()
+
 # Inhibit format-string-related warning in src/archiver.c .
 set_source_files_properties(src/archiver.c
     PROPERTIES
@@ -64,12 +71,20 @@ set_source_files_properties(src/archiver.c
 if(CMAKE_BUILD_TYPE STREQUAL "Release")
     target_compile_options(simplearchiver PUBLIC
         -fno-delete-null-pointer-checks -fno-strict-overflow
-        -fno-strict-aliasing -ftrivial-auto-var-init=zero
+        -fno-strict-aliasing
     )
     target_link_options(simplearchiver PUBLIC
         -fno-delete-null-pointer-checks -fno-strict-overflow
-        -fno-strict-aliasing -ftrivial-auto-var-init=zero
+        -fno-strict-aliasing
     )
+    if(NOT DEFINED DISABLE_FLAGS_FOR_COMPAT)
+        target_compile_options(simplearchiver PUBLIC
+            -ftrivial-auto-var-init=zero
+        )
+        target_link_options(simplearchiver PUBLIC
+            -ftrivial-auto-var-init=zero
+        )
+    endif()
 endif()
 
 add_executable(test_datastructures