From 3c9edaf2996426c439d87232a263edf2f228b361 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 17 Mar 2018 20:52:10 +0100
Subject: [PATCH] Do not overwrite all build flags when running cmake
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* fixes openembedded builds. They failed with strage error messages:
  | -- Looking for pthread.h
  | -- Looking for pthread.h - not found
  | -- Could NOT find Threads (missing: Threads_FOUND)
  | -- Check if the system is big endian
  | -- Searching 16 bit integer
  | -- Looking for sys/types.h
  | -- Looking for sys/types.h - not found
  | -- Looking for stdint.h
  | -- Looking for stdint.h - not found
  | -- Looking for stddef.h
  | -- Looking for stddef.h - not found
  | -- Check size of unsigned short
  | -- Check size of unsigned short - failed
  | -- Check size of unsigned int
  | -- Check size of unsigned int - failed
  | -- Check size of unsigned long
  | -- Check size of unsigned long - failed
  | CMake Error at /home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/poppler/0.62.0-r0/recipe-sysroot-native/usr/share/cmake-3.10/Modules/TestBigEndian.cmake:49 (message):
  |   no suitable type found
  | Call Stack (most recent call first):
  |   CMakeLists.txt:21 (test_big_endian)
* Looked into Fedora's build spec. It seems they have similar problems but
  they work around [1].

[1] https://src.fedoraproject.org/cgit/rpms/poppler.git/tree/poppler.spec#n150

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
 cmake/modules/PopplerMacros.cmake | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
index 51cca111..07184bcd 100644
--- a/cmake/modules/PopplerMacros.cmake
+++ b/cmake/modules/PopplerMacros.cmake
@@ -125,14 +125,14 @@ if(CMAKE_COMPILER_IS_GNUCXX)
   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                "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE ${_save_cxxflags}")
   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                  "-std=c99 -D_DEFAULT_SOURCE ${_save_cflags}")
   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}")
-- 
2.14.3

