[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#968412: photoflow FTBFS: incompatible compiler options



Source: photoflow
Version: 0.2.8+git20200114-1
Severity: important
Tags: ftbfs patch

photoflow fails to build from source on !x86, because it passes
x86-specific compiler options. These should only be present on x86.
Please consider applying the attached patch to make it build elsewhere.

Helmut
--- photoflow-0.2.8+git20200114.orig/src/CMakeLists.txt
+++ photoflow-0.2.8+git20200114/src/CMakeLists.txt
@@ -1,12 +1,26 @@
+SET(GMIC_FLAGS "-Dgmic_build -Dcimg_use_vt100 -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -fpermissive")
 IF(MINGW)
-  SET(GMIC_FLAGS "-std=gnu++14 -march=nocona -mno-sse3 -mtune=generic -Dgmic_build -Dcimg_use_vt100 -Dgmic_is_parallel -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -fno-ipa-sra -fpermissive")
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -std=gnu++14 -Dgmic_is_parallel -fno-ipa-sra")
 ELSEIF(APPLE)
   #SET(GMIC_FLAGS "-DPF_DISABLE_GMIC -std=c++11 -Wno-error=c++11-narrowing -Dgmic_build -W  -Dcimg_use_vt100 -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -Dcimg_use_fftw3_singlethread -fpermissive")
-  SET(GMIC_FLAGS "-march=nocona -mno-sse3 -mtune=generic -Dgmic_build -Dcimg_use_vt100 -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -Dcimg_use_fftw3_singlethread -fpermissive")
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -Dcimg_use_fftw3_singlethread")
   #SET(GMIC_FLAGS "-Wno-error=c++11-narrowing -Dgmic_build -Dcimg_use_vt100 -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -Dcimg_use_fftw3_singlethread -fpermissive")
 ELSE(MINGW)
-  SET(GMIC_FLAGS "-std=gnu++14 -march=nocona -mno-sse3 -mtune=generic -Wno-error=narrowing -Dgmic_build -Dcimg_use_vt100 -Dgmic_is_parallel -Dcimg_use_fftw3 -Dcimg_use_tiff -Dcimg_use_zlib -Dcimg_display=0 -fno-ipa-sra -fpermissive")
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -std=gnu++14 -Wno-error=narrowing -Dgmic_is_parallel -fno-ipa-sra")
 ENDIF(MINGW)
+include(CheckCCompilerFlag)
+check_c_compiler_flag(-no-sse3 HAVE_NO_SSE3)
+IF(HAVE_NO_SSE3)
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -no-sse3")
+ENDIF()
+check_c_compiler_flag(-march=nocona HAVE_MARCH_NOCONA)
+IF(HAVE_MARCH_NOCONA)
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -march=nocona")
+ENDIF()
+check_c_compiler_flag(-mtune=generic HAVE_MTUNE_GENERIC)
+IF(HAVE_MTUNE_GENERIC)
+  SET(GMIC_FLAGS "${GMIC_FLAGS} -mtune=generic")
+ENDIF()
 
 set(COMPILE_FLAGS " ${GMIC_FLAGS} -I${CMAKE_SOURCE_DIR}/src/dt -DLIBRAW_NODLL -DINSTALL_PREFIX='\"${INSTALL_PREFIX}\"' ")
 IF(APPLE)

Reply to: