Merge branch 'master' into ubuntu

This commit is contained in:
2023-04-11 12:37:44 +02:00
5 changed files with 63 additions and 33 deletions
+37 -12
View File
@@ -1,6 +1,8 @@
cmake_minimum_required(VERSION 3.14) cmake_minimum_required(VERSION 3.14)
project(libXISF VERSION 0.2.1 LANGUAGES CXX C) project(libXISF VERSION 0.2.3 LANGUAGES CXX C)
include(CMakeDependentOption)
set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
@@ -9,15 +11,31 @@ set(CMAKE_C_VISIBILITY_PRESET hidden)
set(CMAKE_CXX_VISIBILITY_PRESET hidden) set(CMAKE_CXX_VISIBILITY_PRESET hidden)
option(BUILD_SHARED_LIBS "Build using shared libraries" ON) option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
option(USE_BUNDLED_LIBS "Use bundled LZ4 PugiXML and Zlib" ON) option(USE_BUNDLED_LIBS "Use bundled LZ4 PugiXML and Zlib. You can still exclude some" ON)
cmake_dependent_option(USE_BUNDLED_LZ4 "Use bundled LZ4" ON "USE_BUNDLED_LIBS" OFF)
cmake_dependent_option(USE_BUNDLED_PUGIXML "Use bundled PugiXML" ON "USE_BUNDLED_LIBS" OFF)
cmake_dependent_option(USE_BUNDLED_ZLIB "Use bundled Zlib" ON "USE_BUNDLED_LIBS" OFF)
if(USE_BUNDLED_LIBS) find_package(PkgConfig REQUIRED)
set(THIRD_PARTY_SRC
if(USE_BUNDLED_LZ4)
list(APPEND THIRD_PARTY_SRC
lz4/lz4.c lz4/lz4.c
lz4/lz4.h lz4/lz4.h
lz4/lz4hc.c lz4/lz4hc.c
lz4/lz4hc.h lz4/lz4hc.h)
pugixml/pugixml.cpp list(APPEND THIRD_PARTY_INCLUDE lz4)
else(USE_BUNDLED_LZ4)
pkg_check_modules(LZ4 liblz4 IMPORTED_TARGET REQUIRED)
endif(USE_BUNDLED_LZ4)
if(USE_BUNDLED_PUGIXML)
list(APPEND THIRD_PARTY_SRC pugixml/pugixml.cpp)
list(APPEND THIRD_PARTY_INCLUDE pugixml)
else(USE_BUNDLED_PUGIXML)
pkg_check_modules(PUGIXML pugixml IMPORTED_TARGET REQUIRED)
endif(USE_BUNDLED_PUGIXML)
if(USE_BUNDLED_ZLIB)
list(APPEND THIRD_PARTY_SRC
zlib/adler32.c zlib/adler32.c
zlib/compress.c zlib/compress.c
zlib/crc32.c zlib/crc32.c
@@ -36,12 +54,10 @@ set(THIRD_PARTY_SRC
set(ZLIB_PC ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc) set(ZLIB_PC ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zlib/zlib.pc.cmakein ${ZLIB_PC} @ONLY) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zlib/zlib.pc.cmakein ${ZLIB_PC} @ONLY)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zlib/zconf.h.cmakein ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zlib/zconf.h.cmakein ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY)
else(USE_BUNDLED_LIBS) list(APPEND THIRD_PARTY_INCLUDE zlib)
find_package(PkgConfig REQUIRED) else(USE_BUNDLED_ZLIB)
pkg_check_modules(LZ4 liblz4 IMPORTED_TARGET REQUIRED)
pkg_check_modules(PUGIXML pugixml IMPORTED_TARGET REQUIRED)
pkg_check_modules(ZLIB zlib IMPORTED_TARGET REQUIRED) pkg_check_modules(ZLIB zlib IMPORTED_TARGET REQUIRED)
endif(USE_BUNDLED_LIBS) endif(USE_BUNDLED_ZLIB)
add_library(XISF add_library(XISF
bytearray.cpp bytearray.cpp
@@ -54,7 +70,16 @@ add_library(XISF
) )
if(USE_BUNDLED_LIBS) if(USE_BUNDLED_LIBS)
target_include_directories(XISF PRIVATE lz4 pugixml zlib) target_include_directories(XISF PRIVATE ${THIRD_PARTY_INCLUDE})
if(NOT USE_BUNDLED_LZ4)
target_link_libraries(XISF PUBLIC PkgConfig::LZ4)
endif(NOT USE_BUNDLED_LZ4)
if(NOT USE_BUNDLED_PUGIXML)
target_link_libraries(XISF PUBLIC PkgConfig::PUGIXML)
endif(NOT USE_BUNDLED_PUGIXML)
if(NOT USE_BUNDLED_ZLIB)
target_link_libraries(XISF PUBLIC PkgConfig::ZLIB)
endif(NOT USE_BUNDLED_ZLIB)
else(USE_BUNDLED_LIBS) else(USE_BUNDLED_LIBS)
target_link_libraries(XISF PUBLIC PkgConfig::LZ4 PkgConfig::PUGIXML PkgConfig::ZLIB) target_link_libraries(XISF PUBLIC PkgConfig::LZ4 PkgConfig::PUGIXML PkgConfig::ZLIB)
endif(USE_BUNDLED_LIBS) endif(USE_BUNDLED_LIBS)
+7 -1
View File
@@ -1,4 +1,10 @@
libxisf (0.2.0-ubuntu2) UNRELEASED; urgency=medium libxisf (0.2.3-ubuntu1) focal; urgency=medium
* Fix Color filter array
-- Dušan Poizl <nou@nouspiro.space> Tue, 11 Apr 2023 12:39:41 +0200
libxisf (0.2.0-ubuntu2) focal; urgency=medium
* Fix lintian errors * Fix lintian errors
Vendored Executable → Regular
View File
-1
View File
@@ -1 +0,0 @@
3.0 (quilt)
+1 -1
View File
@@ -912,7 +912,7 @@ void XISFWriterPrivate::writeImageElement(pugi::xml_node &node, const Image &ima
if(image._cfa.width && image._cfa.height) if(image._cfa.width && image._cfa.height)
{ {
pugi::xml_node cfa_node = node.append_child("ColorFilterArray"); pugi::xml_node cfa_node = image_node.append_child("ColorFilterArray");
cfa_node.append_attribute("pattern").set_value(image._cfa.pattern.c_str()); cfa_node.append_attribute("pattern").set_value(image._cfa.pattern.c_str());
cfa_node.append_attribute("width").set_value(image._cfa.width); cfa_node.append_attribute("width").set_value(image._cfa.width);
cfa_node.append_attribute("height").set_value(image._cfa.height); cfa_node.append_attribute("height").set_value(image._cfa.height);