added my Recipes

This commit is contained in:
2024-07-11 14:16:35 +02:00
parent 38bc4f53ac
commit 09b621d929
7118 changed files with 525762 additions and 3 deletions

View File

@@ -0,0 +1,36 @@
SUMMARY = "Encoding files for Poppler"
DESCRIPTION = "Encoding files for use with poppler that enable poppler to \
correctly render CJK and Cyrrilic."
HOMEPAGE = "https://poppler.freedesktop.org/"
LICENSE = "BSD-3-Clause & GPL-2.0-only & GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=96287d49ec274d9c3222b5f966c132fd \
file://COPYING.adobe;md5=a790726a74164c30b5de1ef93fd69e99 \
file://COPYING.gpl2;md5=751419260aa954499f7abaabaa882bbe \
"
inherit allarch
INHIBIT_DEFAULT_DEPS = "1"
CMAP_RESOURCES_BASE = "https://github.com/adobe-type-tools/cmap-resources/raw/0561ebca035813ed04c3485bca636a0aa7abdc1d/cmapresources_identity-0/CMap"
SRC_URI = "http://poppler.freedesktop.org/${BP}.tar.gz \
${CMAP_RESOURCES_BASE}/Identity-H;name=idh \
${CMAP_RESOURCES_BASE}/Identity-V;name=idv"
SRC_URI[sha256sum] = "c835b640a40ce357e1b83666aabd95edffa24ddddd49b8daff63adb851cdab74"
SRC_URI[idh.md5sum] = "009c93cf0141ab7bd6acb7eea14306cc"
SRC_URI[idh.sha256sum] = "ae702c203a82ea124e9b96590f821db6fbf8754e2c4547a9dba0e82f94739e95"
SRC_URI[idv.md5sum] = "2f32a45d43d001c26eeac6b878855fbf"
SRC_URI[idv.sha256sum] = "89a85daf7031e93c883e76b9168a226dfd585bf5506e9e1956772163f15cb082"
do_compile() {
}
do_install() {
oe_runmake install DESTDIR=${D} prefix=${prefix} datadir=${datadir}
install -d ${D}${datadir}/poppler/cMap
install -m644 ${WORKDIR}/Identity-* ${D}${datadir}/poppler/cMap/
}
FILES:${PN} += "${datadir}"

View File

@@ -0,0 +1,55 @@
From b6fc6c36d359a50503138cd87d7147faf6dff893 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 our build flags
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
cmake/modules/PopplerMacros.cmake | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
index 2aed028..3c30f3f 100644
--- a/cmake/modules/PopplerMacros.cmake
+++ b/cmake/modules/PopplerMacros.cmake
@@ -117,13 +117,13 @@ if(CMAKE_COMPILER_IS_GNUCXX)
set(DEFAULT_COMPILE_WARNINGS "${_warn}")
set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
- set(CMAKE_CXX_FLAGS "-fno-exceptions -fno-check-new -fno-common -fno-operator-names -D_DEFAULT_SOURCE")
+ set(CMAKE_CXX_FLAGS "-fno-exceptions -fno-check-new -fno-common -fno-operator-names -D_DEFAULT_SOURCE ${_save_cxxflags}")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline")
set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
- 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")
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
@@ -161,14 +161,14 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(DEFAULT_COMPILE_WARNINGS "${_warn}")
set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
- 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")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
# clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline")
set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
- 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")
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
# clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
--
2.25.1

View File

@@ -0,0 +1,192 @@
From 51a2a1e4d8ca4040a6a7eac398cb704da35f39e5 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 21 Jan 2023 03:09:08 -0800
Subject: [PATCH] cmake: Do not use -isystem
isystem dirs are searched before the regular system dirs
this exposes an interesting include ordering problem when using
clang + libc++, when including C++ headers like <cstdlib>
cstdlib includes stdlib.h and in case of libc++, this should be coming
from libc++ as well, which is then eventually including system stdlib.h
libc++ has added a check for checking this order recently, which means
if cstlib ends up including system stdlib.h before libc++ provided
stdlib.h it errors out
/mnt/b/yoe/master/build/tmp/work/riscv64-yoe-linux/thrift/0.17.0-r0/recipe-sysroot/usr/include/c++/v1/cstdlib:90:5: error: <cstdlib> tried including <stdlib.h> but didn't find libc++'s <stdlib.h> header. This usually means that your header search paths are not configured properly. The header search paths should contain the C++ Standard Library headers before any C Standard Library, and you are probably using compiler flags that make that not be the case.
^
The reason is that include_directories with SYSTEM property adds the
directory via -system and some of these directories point to sysroot
e.g. OPENSSL_INCLUDE_DIR which ends up adding -isystem
<sysroot>/usr/include and causes the system stdlib.h to included before
libc++ stdlib.h
A fix is to use -idirafter which preserved the effects of system headers
but instead of prepending, it will append to system headers and the
issue is addressed
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
CMakeLists.txt | 4 ++--
glib/CMakeLists.txt | 4 ++--
qt5/src/CMakeLists.txt | 4 ++--
qt6/src/CMakeLists.txt | 4 ++--
test/CMakeLists.txt | 6 +++---
utils/CMakeLists.txt | 10 +++++-----
6 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4768ac8..cdc014d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -603,10 +603,10 @@ add_library(poppler ${poppler_SRCS})
if (OpenJPEG_FOUND)
# check if we can remove this when we depend on newer openjpeg versions, 2.5 seems fixed
# target openjp2 may lack interface include directories
- target_include_directories(poppler SYSTEM PRIVATE ${OPENJPEG_INCLUDE_DIRS})
+ target_include_directories(poppler PRIVATE ${OPENJPEG_INCLUDE_DIRS})
endif()
if(USE_CMS)
- target_include_directories(poppler SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(poppler PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
generate_export_header(poppler BASE_NAME poppler-private EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/poppler_private_export.h")
set_target_properties(poppler PROPERTIES VERSION 126.0.0 SOVERSION 126)
diff --git a/glib/CMakeLists.txt b/glib/CMakeLists.txt
index 52e8687..08ab39a 100644
--- a/glib/CMakeLists.txt
+++ b/glib/CMakeLists.txt
@@ -4,7 +4,7 @@ include_directories(
)
include_directories(
- SYSTEM
+
${GLIB2_INCLUDE_DIRS}
${CAIRO_INCLUDE_DIRS}
)
@@ -96,7 +96,7 @@ if(MINGW AND BUILD_SHARED_LIBS)
set_target_properties(poppler-glib PROPERTIES SUFFIX "-${POPPLER_GLIB_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}")
endif()
target_link_libraries(poppler-glib poppler PkgConfig::GLIB2 ${CAIRO_LIBRARIES} Freetype::Freetype)
-target_include_directories(poppler-glib SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS})
+target_include_directories(poppler-glib PRIVATE ${CAIRO_INCLUDE_DIRS})
install(TARGETS poppler-glib RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(FILES
diff --git a/qt5/src/CMakeLists.txt b/qt5/src/CMakeLists.txt
index 5db3a6c..f242d29 100644
--- a/qt5/src/CMakeLists.txt
+++ b/qt5/src/CMakeLists.txt
@@ -45,11 +45,11 @@ if(MINGW AND BUILD_SHARED_LIBS)
endif()
target_link_libraries(poppler-qt5 poppler Qt5::Core Qt5::Gui Qt5::Xml Freetype::Freetype)
if (ENABLE_NSS3)
- target_include_directories(poppler-qt5 SYSTEM PRIVATE ${NSS3_INCLUDE_DIRS})
+ target_include_directories(poppler-qt5 PRIVATE ${NSS3_INCLUDE_DIRS})
endif()
if(USE_CMS)
target_link_libraries(poppler-qt5 poppler ${LCMS2_LIBRARIES})
- target_include_directories(poppler-qt5 SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(poppler-qt5 PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
install(TARGETS poppler-qt5 RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/qt6/src/CMakeLists.txt b/qt6/src/CMakeLists.txt
index cd91975..6c42e12 100644
--- a/qt6/src/CMakeLists.txt
+++ b/qt6/src/CMakeLists.txt
@@ -45,11 +45,11 @@ if(MINGW AND BUILD_SHARED_LIBS)
endif()
target_link_libraries(poppler-qt6 poppler Qt6::Core Qt6::Gui Freetype::Freetype)
if (ENABLE_NSS3)
- target_include_directories(poppler-qt6 SYSTEM PRIVATE ${NSS3_INCLUDE_DIRS})
+ target_include_directories(poppler-qt6 PRIVATE ${NSS3_INCLUDE_DIRS})
endif()
if(USE_CMS)
target_link_libraries(poppler-qt6 poppler ${LCMS2_LIBRARIES})
- target_include_directories(poppler-qt6 SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(poppler-qt6 PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
install(TARGETS poppler-qt6 RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index afa1352..9bd3b9a 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -23,7 +23,7 @@ if (GTK_FOUND)
)
poppler_add_test(gtk-test BUILD_GTK_TESTS ${gtk_splash_test_SRCS})
target_link_libraries(gtk-test ${CAIRO_LIBRARIES} poppler-glib PkgConfig::GTK3)
- target_include_directories(gtk-test SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS})
+ target_include_directories(gtk-test PRIVATE ${CAIRO_INCLUDE_DIRS})
if (HAVE_CAIRO)
@@ -35,7 +35,7 @@ if (GTK_FOUND)
)
poppler_add_test(pdf-inspector BUILD_GTK_TESTS ${pdf_inspector_SRCS})
target_link_libraries(pdf-inspector ${CAIRO_LIBRARIES} Freetype::Freetype ${common_libs} PkgConfig::GTK3 poppler)
- target_include_directories(pdf-inspector SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS})
+ target_include_directories(pdf-inspector PRIVATE ${CAIRO_INCLUDE_DIRS})
target_compile_definitions(pdf-inspector PRIVATE -DSRC_DIR="${CMAKE_CURRENT_SOURCE_DIR}")
endif ()
@@ -59,7 +59,7 @@ if (HAVE_CAIRO)
)
add_executable(cairo-thread-test ${cairo_thread_test_SRCS})
target_link_libraries(cairo-thread-test ${CAIRO_LIBRARIES} Freetype::Freetype Threads::Threads poppler)
- target_include_directories(cairo-thread-test SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS})
+ target_include_directories(cairo-thread-test PRIVATE ${CAIRO_INCLUDE_DIRS})
endif ()
endif ()
diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt
index 1c3ebcb..bc1840a 100644
--- a/utils/CMakeLists.txt
+++ b/utils/CMakeLists.txt
@@ -16,7 +16,7 @@ add_executable(pdftoppm ${pdftoppm_SOURCES})
target_link_libraries(pdftoppm ${common_libs})
if(LCMS2_FOUND)
target_link_libraries(pdftoppm ${LCMS2_LIBRARIES})
- target_include_directories(pdftoppm SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(pdftoppm PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
install(TARGETS pdftoppm DESTINATION bin)
install(FILES pdftoppm.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
@@ -37,10 +37,10 @@ if (HAVE_CAIRO)
add_definitions(${CAIRO_CFLAGS})
add_executable(pdftocairo ${pdftocairo_SOURCES})
target_link_libraries(pdftocairo ${CAIRO_LIBRARIES} Freetype::Freetype ${common_libs})
- target_include_directories(pdftocairo SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS})
+ target_include_directories(pdftocairo PRIVATE ${CAIRO_INCLUDE_DIRS})
if(LCMS2_FOUND)
target_link_libraries(pdftocairo ${LCMS2_LIBRARIES})
- target_include_directories(pdftocairo SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(pdftocairo PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
install(TARGETS pdftocairo DESTINATION bin)
install(FILES pdftocairo.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
@@ -99,7 +99,7 @@ if (ENABLE_NSS3)
pdfsig.cc
)
add_executable(pdfsig ${pdfsig_SOURCES})
- target_include_directories(pdfsig SYSTEM PRIVATE ${NSS3_INCLUDE_DIRS})
+ target_include_directories(pdfsig PRIVATE ${NSS3_INCLUDE_DIRS})
target_link_libraries(pdfsig ${common_libs})
install(TARGETS pdfsig DESTINATION bin)
install(FILES pdfsig.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
@@ -114,7 +114,7 @@ add_executable(pdftops ${pdftops_SOURCES})
target_link_libraries(pdftops ${common_libs})
if(LCMS2_FOUND)
target_link_libraries(pdftops ${LCMS2_LIBRARIES})
- target_include_directories(pdftops SYSTEM PRIVATE ${LCMS2_INCLUDE_DIR})
+ target_include_directories(pdftops PRIVATE ${LCMS2_INCLUDE_DIR})
endif()
install(TARGETS pdftops DESTINATION bin)
install(FILES pdftops.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
--
2.39.1

View File

@@ -0,0 +1,34 @@
From 2ac679158062b14729f82f513fc7cafbb6f4f7a6 Mon Sep 17 00:00:00 2001
From: Randy MacLeod <Randy.MacLeod@windriver.com>
Date: Fri, 26 Jul 2019 14:26:54 -0400
Subject: [PATCH 3/3] Minic GNU basename() API for non-glibc library e.g. musl
Upstream-Status: Pending
Rework for poppler 0.90.1
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
goo/gbasename.cc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/goo/gbasename.cc b/goo/gbasename.cc
index 69236d8..3858415 100644
--- a/goo/gbasename.cc
+++ b/goo/gbasename.cc
@@ -46,6 +46,10 @@
#include <cstdlib>
#include <cstring>
+#if !defined(__GLIBC__)
+#define basename(src) (strrchr(src,'/') ? strrchr(src,'/')+1 : src)
+#endif
+
std::string gbasename(const char *filename)
{
#ifdef _MSC_VER
--
2.21.3

View File

@@ -0,0 +1,56 @@
SUMMARY = "Poppler is a PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE = "https://poppler.freedesktop.org/"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI = "http://poppler.freedesktop.org/${BP}.tar.xz \
file://0001-Do-not-overwrite-all-our-build-flags.patch \
file://basename-include.patch \
file://0001-cmake-Do-not-use-isystem.patch \
"
SRC_URI[sha256sum] = "b04148bf849c1965ada7eff6be4685130e3a18a84e0cce73bf9bc472ec32f2b4"
DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
inherit cmake pkgconfig gobject-introspection
PACKAGECONFIG ??= "jpeg openjpeg png tiff nss splash"
PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON -DENABLE_DCTDECODER=libjpeg,-DWITH_JPEG=OFF -DENABLE_DCTDECODER=none,jpeg"
PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng"
PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff"
PACKAGECONFIG[curl] = "-DENABLE_LIBCURL=ON,-DENABLE_LIBCURL=OFF,curl"
PACKAGECONFIG[openjpeg] = "-DENABLE_LIBOPENJPEG=openjpeg2,-DENABLE_LIBOPENJPEG=none,openjpeg"
PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON,-DENABLE_QT5=OFF,qtbase qttools-native"
PACKAGECONFIG[nss] = "-DWITH_NSS3=ON,-DWITH_NSS3=OFF,nss"
PACKAGECONFIG[splash] = "-DENABLE_SPLASH=ON -DENABLE_BOOST=ON,-DENABLE_SPLASH=OFF -DENABLE_BOOST=OFF,boost"
# surprise - did not expect this to work :)
inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)}
SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
EXTRA_OECMAKE += " \
-DENABLE_CMS=lcms2 \
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
-DBUILD_GTK_TESTS=OFF \
-DENABLE_ZLIB=ON \
-DRUN_GPERF_IF_PRESENT=OFF \
-DCMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES:PATH='${STAGING_INCDIR}' \
${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_GOBJECT_INTROSPECTION=ON', '-DENABLE_GOBJECT_INTROSPECTION=OFF', d)} \
"
EXTRA_OECMAKE:append:class-native = " -DENABLE_CPP=OFF"
do_configure:append() {
# poppler macro uses pkg-config to check for g-ir runtimes. Something
# makes them point to /usr/bin. Align them to sysroot - that's where the
# gir-wrappers are:
sed -i 's: ${bindir}/g-ir: ${STAGING_BINDIR}/g-ir:' ${B}/build.ninja
}
PACKAGES =+ "libpoppler libpoppler-glib"
FILES:libpoppler = "${libdir}/libpoppler.so.*"
FILES:libpoppler-glib = "${libdir}/libpoppler-glib.so.*"
RDEPENDS:libpoppler = "poppler-data"
BBCLASSEXTEND = "native"