kimgio generator: Make kexiv2 dependency optional

getting keviv2 to build on Android is hard (TM)
remotes/origin/work/aacid/android_ci_and_default_is_mobile_ui
Albert Astals Cid 4 years ago
parent a157ded61d
commit c962c6caf6
  1. 4
      generators/CMakeLists.txt
  2. 9
      generators/kimgio/CMakeLists.txt
  3. 4
      generators/kimgio/generator_kimgio.cpp

@ -109,9 +109,7 @@ if(LIBSPECTRE_FOUND)
add_subdirectory(spectre)
endif(LIBSPECTRE_FOUND)
if(KF5KExiv2_FOUND)
add_subdirectory( kimgio )
endif()
add_subdirectory( kimgio )
if(CHM_FOUND AND KF5KHtml_FOUND AND LIBZIP_FOUND)
add_subdirectory( chm )

@ -4,9 +4,14 @@ add_definitions(-DTRANSLATION_DOMAIN="okular_kimgio")
########### next target ###############
okular_add_generator(okularGenerator_kimgio generator_kimgio.cpp)
target_link_libraries(okularGenerator_kimgio okularcore KF5::KExiv2 KF5::I18n)
target_link_libraries(okularGenerator_kimgio okularcore KF5::I18n)
if(BUILD_TESTING AND BUILD_DESKTOP)
if(KF5KExiv2_FOUND)
target_compile_definitions(okularGenerator_kimgio PRIVATE -DWITH_KEXIV=1)
target_link_libraries(okularGenerator_kimgio KF5::KExiv2)
endif()
if(BUILD_TESTING AND BUILD_DESKTOP AND KF5KExiv2_FOUND)
add_definitions( -DKDESRCDIR="${CMAKE_CURRENT_SOURCE_DIR}/" )
set( kimgiotest_SRCS tests/kimgiotest.cpp ${CMAKE_SOURCE_DIR}/part/pagepainter.cpp ${CMAKE_SOURCE_DIR}/part/guiutils.cpp ${CMAKE_SOURCE_DIR}/part/debug_ui.cpp )
ecm_add_test(${kimgiotest_SRCS} TEST_NAME "kimgiotest" LINK_LIBRARIES okularcore okularpart Qt5::Svg Qt5::Test)

@ -25,7 +25,9 @@
#include <QAction>
#include <QIcon>
#ifdef WITH_KEXIV
#include <kexiv2/kexiv2.h>
#endif
#include <core/page.h>
@ -81,11 +83,13 @@ bool KIMGIOGenerator::loadDocumentInternal(const QByteArray &fileData, const QSt
auto mime = db.mimeTypeForFileNameAndData(fileName, fileData);
docInfo.set(Okular::DocumentInfo::MimeType, mime.name());
#ifdef WITH_KEXIV
// Apply transformations dictated by Exif metadata
KExiv2Iface::KExiv2 exifMetadata;
if (exifMetadata.loadFromData(fileData)) {
exifMetadata.rotateExifQImage(m_img, exifMetadata.getImageOrientation());
}
#endif
pagesVector.resize(1);

Loading…
Cancel
Save