aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/fltk
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-support/fltk')
-rw-r--r--meta-oe/recipes-support/fltk/fltk-native.bb6
-rw-r--r--meta-oe/recipes-support/fltk/fltk.bb20
-rw-r--r--meta-oe/recipes-support/fltk/fltk.inc10
-rw-r--r--meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch2
-rw-r--r--meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch24
-rw-r--r--meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch41
-rw-r--r--meta-oe/recipes-support/fltk/fltk/0003-fluid-CMakeLists.txt-Do-not-export-fluid-target.patch42
-rw-r--r--meta-oe/recipes-support/fltk/fltk/disable_test.patch2
-rw-r--r--meta-oe/recipes-support/fltk/fltk/fltk-native-link-libdl.patch44
-rw-r--r--meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch40
10 files changed, 121 insertions, 110 deletions
diff --git a/meta-oe/recipes-support/fltk/fltk-native.bb b/meta-oe/recipes-support/fltk/fltk-native.bb
index 2636287e3a..3e8e2cdf77 100644
--- a/meta-oe/recipes-support/fltk/fltk-native.bb
+++ b/meta-oe/recipes-support/fltk/fltk-native.bb
@@ -2,6 +2,8 @@ require ${BPN}.inc
DEPENDS = "zlib-native jpeg-native libpng-native libxext-native libxft-native"
+SRC_URI += "file://fltk-native-link-libdl.patch"
+
inherit native
EXTRA_OECMAKE += " \
@@ -9,13 +11,13 @@ EXTRA_OECMAKE += " \
-DOPTION_USE_THREADS=OFF \
-DOPTION_USE_XDBE=OFF \
-DOPTION_USE_XFT=OFF \
- -DOPTION_BUILD_EXAMPLES=OFF \
+ -DFLTK_BUILD_TEST=OFF \
-DOPTION_USE_XINERAMA=OFF \
-DOPTION_USE_XFIXES=OFF \
-DOPTION_USE_XCURSOR=OFF \
"
-do_install_append() {
+do_install:append() {
# make sure native fltk-config is not used accidentaly
rm -f ${D}${bindir}/fltk-config
}
diff --git a/meta-oe/recipes-support/fltk/fltk.bb b/meta-oe/recipes-support/fltk/fltk.bb
index ec9e04bed6..82007c4cf4 100644
--- a/meta-oe/recipes-support/fltk/fltk.bb
+++ b/meta-oe/recipes-support/fltk/fltk.bb
@@ -2,14 +2,15 @@ require ${BPN}.inc
DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft"
-inherit distro_features_check binconfig lib_package gtk-icon-cache mime
+inherit features_check binconfig lib_package gtk-icon-cache mime mime-xdg
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI += "file://0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch"
+SRC_URI += "file://0003-fluid-CMakeLists.txt-Do-not-export-fluid-target.patch"
EXTRA_OECMAKE = " \
-DOPTION_BUILD_SHARED_LIBS=ON \
-DOPTION_USE_THREADS=ON \
+ -DFLTK_BUILD_TEST=OFF \
-DOPTION_USE_XDBE=ON \
-DOPTION_USE_XFT=ON \
-DFLTK_CONFIG_PATH=${libdir}/cmake \
@@ -17,30 +18,31 @@ EXTRA_OECMAKE = " \
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
-PACKAGECONFIG[examples] = "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,"
PACKAGECONFIG[cairo] = "-DOPTION_CAIRO=ON,-DOPTION_CAIRO=OFF,cairo"
PACKAGECONFIG[opengl] = "-DOPTION_USE_GL=ON,-DOPTION_USE_GL=OFF,virtual/libgl"
PACKAGECONFIG[xinerama] = "-DOPTION_USE_XINERAMA=ON,-DOPTION_USE_XINERAMA=OFF,libxinerama"
PACKAGECONFIG[xfixes] = "-DOPTION_USE_XFIXES=ON,-DOPTION_USE_XFIXES=OFF,libxfixes"
PACKAGECONFIG[xcursor] = "-DOPTION_USE_XCURSOR=ON,-DOPTION_USE_XCURSOR=OFF,libxcursor"
-do_install_append() {
- sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config
+do_install:append() {
+ sed -i -e 's,${TMPDIR},,g' ${D}${bindir}/fltk-config
+ sed -i -e 's,${TMPDIR},,g' ${D}${datadir}/fltk/UseFLTK.cmake
+ sed -i -e 's,${TMPDIR},,g' ${D}${datadir}/fltk/FLTK-Targets.cmake
}
-python populate_packages_prepend () {
+python populate_packages:prepend () {
if (d.getVar('DEBIAN_NAMES')):
- d.setVar('PKG_${BPN}', 'libfltk${PV}')
+ d.setVar('PKG:${BPN}', 'libfltk${PV}')
}
LEAD_SONAME = "libfltk.so"
# .desktop / icons / mime only necessary for fluid app
-FILES_${PN}-bin += " \
+FILES:${PN}-bin += " \
${datadir}/applications \
${datadir}/icons \
${datadir}/mime \
"
# cmake files
-FILES_${PN}-dev += "${datadir}/fltk"
+FILES:${PN}-dev += "${datadir}/fltk"
diff --git a/meta-oe/recipes-support/fltk/fltk.inc b/meta-oe/recipes-support/fltk/fltk.inc
index dbe700af01..b1bc83578f 100644
--- a/meta-oe/recipes-support/fltk/fltk.inc
+++ b/meta-oe/recipes-support/fltk/fltk.inc
@@ -1,20 +1,18 @@
SUMMARY = "FLTK is a cross-platform C++ GUI toolkit"
HOMEPAGE = "http://www.fltk.org"
SECTION = "libs"
-LICENSE = "LGPLv2 & FLTK"
+LICENSE = "LGPL-2.0-only & FLTK"
LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
SRC_URI = " \
- http://fltk.org/pub/fltk/1.3.4/${BP}-source.tar.gz \
+ http://fltk.org/pub/fltk/${PV}/${BP}-source.tar.bz2 \
file://disable_test.patch \
- file://fltk-no-freetype-config.patch \
file://0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch \
file://0002-always-build-fluid-and-export-pointers.patch \
"
-PV = "1.3.4-1"
-SRC_URI[md5sum] = "d7fcd27ab928648e1a1366dd2e273970"
-SRC_URI[sha256sum] = "7fb2c8882433ce694e6900c94fda505e8f4ed3fa9c7e597007098a33b85c53f4"
+PV = "1.3.8"
+SRC_URI[sha256sum] = "1d9832409fc08c908c64ab40ad9fd8b0e8af5d203651eb9690b810f41e2f412d"
inherit cmake pkgconfig
diff --git a/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch b/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
index e6e68a0cb8..d1cbb35479 100644
--- a/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
+++ b/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
@@ -18,6 +18,8 @@ Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
+Upstream-Status: Pending
+
src/Fl_Preferences.cxx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch b/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
index cca977c66d..0d91aab3a1 100644
--- a/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
+++ b/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
@@ -1,6 +1,6 @@
From 16010cb1a69ea2326d8102b7f1e34b65aca4b278 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Tue, 28 Feb 2017 01:20:42 +0100
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sat, 22 May 2021 12:33:15 +0200
Subject: [PATCH] always build fluid and export pointers
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -8,24 +8,24 @@ Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [embedded specific]
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
CMake/export.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMake/export.cmake b/CMake/export.cmake
-index 968186a..95e04eb 100644
+index 6e8bc5d..71b6f6c 100644
--- a/CMake/export.cmake
+++ b/CMake/export.cmake
-@@ -21,7 +21,7 @@
- # final config and export
+@@ -20,7 +20,7 @@
#######################################################################
+
# Set the fluid executable path
--if(CMAKE_CROSSCOMPILING)
-+if(FALSE)
- find_file(FLUID_PATH
- NAMES fluid fluid.exe
- PATHS ENV PATH
+-if (CMAKE_CROSSCOMPILING)
++if (FALSE)
+ find_file(FLUID_PATH
+ NAMES fluid fluid.exe
+ PATHS ENV PATH
--
-2.9.3
+2.31.1
diff --git a/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch b/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch
deleted file mode 100644
index 1f2f8aecf7..0000000000
--- a/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From bc38fb41044503c9debf5710910c51dd29674b6a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Fri, 15 Dec 2017 22:14:01 +0100
-Subject: [PATCH] CMake build: Force shared libs with unsuffixed names
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-For windows build sake CMake complains when a project wants to build shared and
-static libraries with same name. This caused the authors of fltk to generate
-libraries with names suffixed by '_SHARED' when building fltk with cmake -
-autotools builds do not suffix.
-
-Reasons to build shared libs with correct names:
-
-* Shared libraries are the preferred choice for embedded devices
-* There are projects (e.g yoshimi) expecting shared libraries with unsuffixed
- names - as created by autotools build. These projects link against static
- libraries by accident causing unusable binaries.
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- CMake/macros.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMake/macros.cmake b/CMake/macros.cmake
-index 4def62d..ab675f0 100644
---- a/CMake/macros.cmake
-+++ b/CMake/macros.cmake
-@@ -49,7 +49,7 @@ macro(FL_ADD_LIBRARY LIBNAME LIBTYPE LIBFILES)
- PROPERTIES
- VERSION ${FLTK_VERSION_FULL}
- SOVERSION ${FLTK_VERSION_MAJOR}.${FLTK_VERSION_MINOR}
-- PREFIX "lib" # for MSVC static/shared coexistence
-+ OUTPUT_NAME ${LIBNAME} CLEAN_DIRECT_OUTPUT 1
- )
- endif (${LIBTYPE} STREQUAL "SHARED")
-
---
-2.9.5
-
diff --git a/meta-oe/recipes-support/fltk/fltk/0003-fluid-CMakeLists.txt-Do-not-export-fluid-target.patch b/meta-oe/recipes-support/fltk/fltk/0003-fluid-CMakeLists.txt-Do-not-export-fluid-target.patch
new file mode 100644
index 0000000000..72bb48a32c
--- /dev/null
+++ b/meta-oe/recipes-support/fltk/fltk/0003-fluid-CMakeLists.txt-Do-not-export-fluid-target.patch
@@ -0,0 +1,42 @@
+From b6985abcb03fb09685da4044963e8f085035b208 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Thu, 19 Aug 2021 08:06:45 +0200
+Subject: [PATCH] fluid/CMakeLists.txt: Do not export fluid target
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It does not work for us: The executable 'fluid' is not installed in
+receipe-sysroot. So fltk cmake config contains an invalid reference.
+Consumers of fltk using cmake will fail during configure for this invalid
+reference with something like:
+
+| CMake Error at <...>/recipe-sysroot/usr/share/fltk/FLTK-Targets.cmake:129 (message):
+| The imported target "fluid" references the file
+|
+| "<...>/recipe-sysroot/usr/bin/fluid"
+|
+| but this file does not exist.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ fluid/CMakeLists.txt | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/fluid/CMakeLists.txt b/fluid/CMakeLists.txt
+index 472c84c..f971121 100644
+--- a/fluid/CMakeLists.txt
++++ b/fluid/CMakeLists.txt
+@@ -86,7 +86,6 @@ if (APPLE AND (NOT OPTION_APPLE_X11))
+ install (TARGETS fluid DESTINATION ${FLTK_BINDIR})
+ else()
+ install (TARGETS fluid
+- EXPORT FLTK-Targets
+ RUNTIME DESTINATION ${FLTK_BINDIR}
+ LIBRARY DESTINATION ${FLTK_LIBDIR}
+ ARCHIVE DESTINATION ${FLTK_LIBDIR}
+--
+2.31.1
+
diff --git a/meta-oe/recipes-support/fltk/fltk/disable_test.patch b/meta-oe/recipes-support/fltk/fltk/disable_test.patch
index 1f5fd25e04..fe8be5a652 100644
--- a/meta-oe/recipes-support/fltk/fltk/disable_test.patch
+++ b/meta-oe/recipes-support/fltk/fltk/disable_test.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Pending
+
--- a/Makefile.orig 2015-11-26 15:35:31.485357862 +0800
+++ b/Makefile 2015-11-26 15:35:37.037357764 +0800
@@ -18,7 +18,7 @@
diff --git a/meta-oe/recipes-support/fltk/fltk/fltk-native-link-libdl.patch b/meta-oe/recipes-support/fltk/fltk/fltk-native-link-libdl.patch
new file mode 100644
index 0000000000..e140ce2166
--- /dev/null
+++ b/meta-oe/recipes-support/fltk/fltk/fltk-native-link-libdl.patch
@@ -0,0 +1,44 @@
+Upstream-Status: Inappropriate [cross build specific]
+
+It fails to build fltk-native on Ubuntu 20.04 with glibc 2.31:
+
+| /path_to/tmp/hosttools/ld: lib/libfltk.a(Fl_Native_File_Chooser.cxx.o): in function `fl_dlopen(char const*, char const*)':
+| Fl_Native_File_Chooser.cxx:(.text+0x61a): undefined reference to `dlopen'
+| /path_to/tmp/hosttools/ld: lib/libfltk.a(Fl_Native_File_Chooser.cxx.o): in function `Fl_GTK_File_Chooser::probe_for_GTK_libs()':
+| Fl_Native_File_Chooser.cxx:(.text+0xf92): undefined reference to `dlerror'
+
+The original fix in fltk-native recipe does not work any more because '-ldl'
+appears before lib/libfltk.a and causes dlopen() unresolved. The reason why it
+doesn't fail on other hosts is that the functions dlopen(), dlerror() etc. have
+been moved to libc.so since glibc 2.34 via the commits in glibc:
+
+0c1c3a771e dlfcn: Move dlopen into libc
+add8d7ea01 dlfcn: Move dlvsym into libc
+6dfc0207eb dlfcn: Move dlinfo into libc
+492560a32e dlfcn: Move dladdr1 into libc
+6a1ed32789 dlfcn: Move dlmopen into libc
+77f876c0e3 dlfcn: Move dlsym into libc
+602252b553 dlfcn: Move dladdr into libc
+d8cce17d2a dlfcn: Move dlclose into libc
+
+Append 'dl' to fltk link items explictly to fix the error.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+
+---
+ src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index d153b1c..0fe5c11 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -306,7 +306,7 @@ endif (USE_XFT)
+ #######################################################################
+
+ FL_ADD_LIBRARY (fltk STATIC "${STATIC_FILES}")
+-target_link_libraries (fltk ${OPTIONAL_LIBS})
++target_link_libraries (fltk ${OPTIONAL_LIBS} dl)
+
+ #######################################################################
+
diff --git a/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch b/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
deleted file mode 100644
index 2a9915bea7..0000000000
--- a/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 699420d306cadbb5285942e09f4383d84b01985d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Fri, 13 Jan 2017 13:21:23 +0100
-Subject: [PATCH] replace freetype-config by pkg-config
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- configure.ac | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index f0efd48..3af5ecb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1006,12 +1006,12 @@ case $host_os_gui in
-
- xft_found=no
- if test x$enable_xft != xno; then
-- AC_PATH_PROG(FTCONFIG, freetype-config)
-+ AC_PATH_PROG(PKGCONFIG,pkg-config)
-
-- if test "x$FTCONFIG" != x; then
-- CPPFLAGS="`$FTCONFIG --cflags` $CPPFLAGS"
-- CFLAGS="`$FTCONFIG --cflags` $CFLAGS"
-- CXXFLAGS="`$FTCONFIG --cflags` $CXXFLAGS"
-+ if test "x$PKGCONFIG" != x; then
-+ CPPFLAGS="`$PKGCONFIG --cflags xft` $CPPFLAGS"
-+ CFLAGS="`$PKGCONFIG --cflags xft` $CFLAGS"
-+ CXXFLAGS="`$PKGCONFIG --cflags xft` $CXXFLAGS"
-
- AC_CHECK_LIB(fontconfig, FcPatternCreate)
- AC_CHECK_HEADER(X11/Xft/Xft.h,
---
-2.7.4
-