From a9f54d7c37b2b738767d757517466768a9f5a8fe Mon Sep 17 00:00:00 2001
From: Theo Anderson <telans@posteo.de>
Date: Wed, 14 Apr 2021 10:16:11 +1200
Subject: [PATCH] build: respect cflags

Signed-off-by: Theo Anderson <telans@posteo.de>
---
 cmake/modules/PopplerMacros.cmake | 77 ++-----------------------------
 1 file changed, 4 insertions(+), 73 deletions(-)

diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
index fe1182da..b77eaa3e 100644
--- a/cmake/modules/PopplerMacros.cmake
+++ b/cmake/modules/PopplerMacros.cmake
@@ -79,14 +79,11 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
   set(CMAKE_BUILD_TYPE RelWithDebInfo)
 endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
 
-if(CMAKE_COMPILER_IS_GNUCXX)
-  # set the default compile warnings
   set(_warn "-Wall -Wextra -Wpedantic")
   set(_warn "${_warn} -Wno-unused-parameter")
   set(_warn "${_warn} -Wcast-align")
   set(_warn "${_warn} -Wformat-security")
   set(_warn "${_warn} -Wframe-larger-than=65536")
-  set(_warn "${_warn} -Wlogical-op")
   set(_warn "${_warn} -Wmissing-format-attribute")
   set(_warn "${_warn} -Wnon-virtual-dtor")
   set(_warn "${_warn} -Woverloaded-virtual")
@@ -102,22 +99,8 @@ if(CMAKE_COMPILER_IS_GNUCXX)
 
   set(DEFAULT_COMPILE_WARNINGS "${_warn}")
   set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
-
-  set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
-  set(CMAKE_CXX_FLAGS                "-fno-exceptions -fno-check-new -fno-common -fno-operator-names -D_DEFAULT_SOURCE")
-  set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_DEBUG          "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_DEBUGFULL      "-g3 -fno-inline ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_PROFILE        "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cxxflags}")
-  set(_save_cflags "${CMAKE_C_FLAGS}")
-  set(CMAKE_C_FLAGS                  "-std=c99 -D_DEFAULT_SOURCE")
-  set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g ${_save_cflags}")
-  set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG ${_save_cflags}")
-  set(CMAKE_C_FLAGS_DEBUG            "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline ${_save_cflags}")
-  set(CMAKE_C_FLAGS_DEBUGFULL        "-g3 -fno-inline ${_save_cflags}")
-  set(CMAKE_C_FLAGS_PROFILE          "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cflags}")
-
+  
+if(CMAKE_COMPILER_IS_GNUCXX)
   poppler_check_link_flag("-Wl,--as-needed" GCC_HAS_AS_NEEDED)
   if(GCC_HAS_AS_NEEDED)
     set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed")
@@ -126,57 +109,5 @@ if(CMAKE_COMPILER_IS_GNUCXX)
   endif(GCC_HAS_AS_NEEDED)
 endif (CMAKE_COMPILER_IS_GNUCXX)
 
-if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
-# set the default compile warnings
-  set(_warn "-Wall -Wextra -Wpedantic")
-  set(_warn "${_warn} -Wno-unused-parameter")
-  set(_warn "${_warn} -Wcast-align")
-  set(_warn "${_warn} -Wformat-security")
-  set(_warn "${_warn} -Wframe-larger-than=65536")
-  set(_warn "${_warn} -Wmissing-format-attribute")
-  set(_warn "${_warn} -Wnon-virtual-dtor")
-  set(_warn "${_warn} -Woverloaded-virtual")
-  set(_warn "${_warn} -Wmissing-declarations")
-  set(_warn "${_warn} -Wundef")
-  set(_warn "${_warn} -Wzero-as-null-pointer-constant")
-  set(_warn "${_warn} -Wshadow")
-  set(_warn "${_warn} -Wweak-vtables")
-
-  # set extra warnings
-  set(_warnx "${_warnx} -Wconversion")
-
-  set(DEFAULT_COMPILE_WARNINGS "${_warn}")
-  set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
-
-  set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
-  set(CMAKE_CXX_FLAGS                "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE")
-  set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG ${_save_cxxflags}")
-  # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
-  set(CMAKE_CXX_FLAGS_DEBUG          "-g ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_DEBUGFULL      "-g3 -fno-inline ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_PROFILE        "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cxxflags}")
-  set(_save_cflags "${CMAKE_C_FLAGS}")
-  set(CMAKE_C_FLAGS                  "-std=c99 -D_DEFAULT_SOURCE")
-  set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g ${_save_cflags}")
-  set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG ${_save_cflags}")
-  # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
-  set(CMAKE_C_FLAGS_DEBUG            "-g ${_save_cflags}")
-  set(CMAKE_C_FLAGS_DEBUGFULL        "-g3 -fno-inline ${_save_cflags}")
-  set(CMAKE_C_FLAGS_PROFILE          "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cflags}")
-
-endif()
-
-if(CMAKE_C_COMPILER MATCHES "icc")
-  set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
-  set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_DEBUG          "-O2 -g -0b0 -noalign ${_save_cxxflags}")
-  set(CMAKE_CXX_FLAGS_DEBUGFULL      "-g -Ob0 -noalign ${_save_cxxflags}")
-  set(_save_cflags "${CMAKE_C_FLAGS}")
-  set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g ${_save_cflags}")
-  set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG ${_save_cflags}")
-  set(CMAKE_C_FLAGS_DEBUG            "-O2 -g -Ob0 -noalign ${_save_cflags}")
-  set(CMAKE_C_FLAGS_DEBUGFULL        "-g -Ob0 -noalign ${_save_cflags}")
-endif(CMAKE_C_COMPILER MATCHES "icc")
-
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Woverloaded-virtual")
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
-- 
2.31.1

