From ae714d69ff40c4177f14b9c72a49e1d6dfeac295 Mon Sep 17 00:00:00 2001 From: TheAssassin Date: Wed, 1 Dec 2021 04:56:44 +0100 Subject: [PATCH] Support system-provided CImg only from now on --- .gitmodules | 3 -- cmake/Modules/FindCImg.cmake | 56 +++++++++--------------------------- lib/CImg | 1 - 3 files changed, 13 insertions(+), 47 deletions(-) delete mode 160000 lib/CImg diff --git a/.gitmodules b/.gitmodules index 8451342..baacf7e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,9 +4,6 @@ [submodule "lib/boost-exception"] path = lib/boost-exception url = https://github.com/boostorg/exception.git -[submodule "lib/CImg"] - path = lib/CImg - url = https://github.com/dtschump/CImg.git [submodule "lib/linuxdeploy-desktopfile"] path = lib/linuxdeploy-desktopfile url = https://github.com/linuxdeploy/linuxdeploy-desktopfile diff --git a/cmake/Modules/FindCImg.cmake b/cmake/Modules/FindCImg.cmake index 5da6927..ca4192b 100644 --- a/cmake/Modules/FindCImg.cmake +++ b/cmake/Modules/FindCImg.cmake @@ -3,61 +3,31 @@ cmake_minimum_required(VERSION 3.6) find_package(PkgConfig) pkg_check_modules(libpng REQUIRED IMPORTED_TARGET libpng) +pkg_check_modules(libjpeg REQUIRED IMPORTED_TARGET libjpeg) -# build custom static version of libjpeg for static builds -if(STATIC_BUILD) - include(ExternalProject) +message(STATUS "Searching for CImg") - if($ENV{ARCH} MATCHES "i[356]86") - set(configure_command_prefix env CFLAGS=-m32 CXXFLAGS=-m32) - endif() +find_path(CIMG_H_DIR + NAMES CImg.h + HINTS ${CMAKE_INSTALL_PREFIX} + PATH_SUFFIXES include include/linux +) - ExternalProject_Add(libjpeg_static_extproj - URL https://www.ijg.org/files/jpegsrc.v9d.tar.gz - URL_HASH SHA256=6c434a3be59f8f62425b2e3c077e785c9ce30ee5874ea1c270e843f273ba71ee - BUILD_IN_SOURCE ON - EXCLUDE_FROM_ALL ON - CONFIGURE_COMMAND ${configure_command_prefix} ./configure --prefix=/usr - INSTALL_COMMAND "" - ) - - ExternalProject_Get_property(libjpeg_static_extproj SOURCE_DIR) - add_library(libjpeg_static INTERFACE IMPORTED) - set_property(TARGET libjpeg_static PROPERTY INTERFACE_LINK_LIBRARIES ${SOURCE_DIR}/.libs/libjpeg.a) - add_dependencies(libjpeg_static libjpeg_static_extproj) - - set(JPEG_LIBRARIES libjpeg_static) -else() - find_package(JPEG REQUIRED) -endif() - -if(NOT USE_SYSTEM_CIMG) - message(STATUS "Using bundled CImg library") - - set(CIMG_H_DIR "${PROJECT_SOURCE_DIR}/lib/CImg/") -else() - message(STATUS "Searching for CImg") - - find_path(CIMG_H_DIR - NAMES CImg.h - HINTS ${CMAKE_INSTALL_PREFIX} - PATH_SUFFIXES include include/linux - ) - - if(NOT CIMG_H_DIR) - message(FATAL_ERROR "CImg.h not found") - endif() +if(NOT CIMG_H_DIR) + message(FATAL_ERROR "CImg.h not found") endif() set(PNG_INCLUDE_DIR ${libpng_INCLUDE_DIRS}) +set(PNG_INCLUDE_DIR ${libjpeg_INCLUDE_DIRS}) + if(NOT STATIC_BUILD) set(PNG_LIBRARY ${libpng_LIBRARIES}) + set(JPEG_LIBRARIES ${libjpeg_LIBRARIES}) else() set(PNG_LIBRARY ${libpng_STATIC_LIBRARIES}) + set(JPEG_LIBRARIES ${libjpeg_STATIC_LIBRARIES}) endif() -#message(FATAL_ERROR "${PNG_LIBRARY}") - add_library(CImg INTERFACE) set_property(TARGET CImg PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CIMG_H_DIR};${PNG_INCLUDE_DIR};${JPEG_INCLUDE_DIR}") set_property(TARGET CImg PROPERTY INTERFACE_LINK_LIBRARIES "${PNG_LIBRARY};${JPEG_LIBRARIES}") diff --git a/lib/CImg b/lib/CImg deleted file mode 160000 index 631cb96..0000000 --- a/lib/CImg +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 631cb961206c9a8c14c0ec1f1b447f76dc5e88ff