diff options
Diffstat (limited to 'import-layers/meta-openembedded/meta-oe/recipes-support/fltk')
8 files changed, 171 insertions, 99 deletions
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb new file mode 100644 index 000000000..353987e0f --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb @@ -0,0 +1,16 @@ +require ${BPN}.inc + +DEPENDS = "zlib-native jpeg-native libpng-native libxext-native libxft-native" + +inherit native + +EXTRA_OECMAKE += " \ + -DOPTION_BUILD_SHARED_LIBS=OFF \ + -DOPTION_USE_THREADS=OFF \ + -DOPTION_USE_XDBE=OFF \ + -DOPTION_USE_XFT=OFF \ + -DOPTION_BUILD_EXAMPLES=OFF \ + -DOPTION_USE_XINERAMA=OFF \ + -DOPTION_USE_XFIXES=OFF \ + -DOPTION_USE_XCURSOR=OFF \ +" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb new file mode 100644 index 000000000..542fd661e --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb @@ -0,0 +1,34 @@ +require ${BPN}.inc + +DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft ${BPN}-native" + +inherit binconfig lib_package gtk-icon-cache mime + +EXTRA_OECMAKE = " \ + -DOPTION_BUILD_SHARED_LIBS=ON \ + -DOPTION_USE_THREADS=ON \ + -DOPTION_USE_XDBE=ON \ + -DOPTION_USE_XFT=ON \ + -DFLTK_CONFIG_PATH=${libdir}/cmake \ +" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" + +PACKAGECONFIG[examples] = "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF," +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 +} + +python populate_packages_prepend () { + if (d.getVar('DEBIAN_NAMES')): + d.setVar('PKG_${BPN}', 'libfltk${PV}') +} + +LEAD_SONAME = "libfltk.so" + +FILES_${PN} += "${datadir}/mime" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc new file mode 100644 index 000000000..dbe700af0 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc @@ -0,0 +1,21 @@ +SUMMARY = "FLTK is a cross-platform C++ GUI toolkit" +HOMEPAGE = "http://www.fltk.org" +SECTION = "libs" +LICENSE = "LGPLv2 & FLTK" +LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca" + +SRC_URI = " \ + http://fltk.org/pub/fltk/1.3.4/${BP}-source.tar.gz \ + 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" + +inherit cmake pkgconfig + +TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch new file mode 100644 index 000000000..e6e68a0cb --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch @@ -0,0 +1,39 @@ +From e76a062338063615c069fedc5a143cc38c34d9b2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> +Date: Tue, 28 Feb 2017 01:00:21 +0100 +Subject: [PATCH] Fl_Preferences.cxx: do not use dlopen in case glibc's headers + are missing +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx: In static member function ‘static int Fl_Plugin_Manager::load(const char*)’: +| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:27: error: ‘RTLD_LAZY’ was not declared in this scope +| dl = dlopen(filename, RTLD_LAZY); +| ^~~~~~~~~ +| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:36: error: ‘dlopen’ was not declared in this scope +| dl = dlopen(filename, RTLD_LAZY); +| ^ +| src/CMakeFiles/fltk.dir/build.make:1217: recipe for target 'src/CMakeFiles/fltk.dir/Fl_Preferences.cxx.o' failed + +Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> +--- + src/Fl_Preferences.cxx | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Fl_Preferences.cxx b/src/Fl_Preferences.cxx +index 1233bb1..7857b9b 100644 +--- a/src/Fl_Preferences.cxx ++++ b/src/Fl_Preferences.cxx +@@ -1737,7 +1737,7 @@ int Fl_Plugin_Manager::load(const char *filename) { + HMODULE dl = LoadLibrary(filename); + #else + void * dl = NULL; +-# if HAVE_DLSYM ++# if HAVE_DLSYM && HAVE_DLFCN_H + dl = dlopen(filename, RTLD_LAZY); + # endif + #endif +-- +2.9.3 + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch new file mode 100644 index 000000000..cca977c66 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch @@ -0,0 +1,31 @@ +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 +Subject: [PATCH] always build fluid and export pointers +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@googlemail.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 +--- a/CMake/export.cmake ++++ b/CMake/export.cmake +@@ -21,7 +21,7 @@ + # final config and export + ####################################################################### + # Set the fluid executable path +-if(CMAKE_CROSSCOMPILING) ++if(FALSE) + find_file(FLUID_PATH + NAMES fluid fluid.exe + PATHS ENV PATH +-- +2.9.3 + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch deleted file mode 100644 index 014184d53..000000000 --- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 14c22398f8370e33a798360ed0dad513af8f1470 Mon Sep 17 00:00:00 2001 -From: AlbrechtS <AlbrechtS@ea41ed52-d2ee-0310-a9c1-e6b18d33e121> -Date: Sun, 15 Mar 2015 19:32:33 +0000 -Subject: [PATCH] Fix 'boolean' issue with jpeg-9 library compatibility (STR - #2920). - -According to comments in STR #2920 and my own tests this is also -compatible with older jpeg libraries (at least jpeg-8). - -Upstream-Status: Backport - ---- - src/Fl_JPEG_Image.cxx | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/Fl_JPEG_Image.cxx b/src/Fl_JPEG_Image.cxx -index 47120a7..6cebe88 100644 ---- a/src/Fl_JPEG_Image.cxx -+++ b/src/Fl_JPEG_Image.cxx -@@ -155,7 +155,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *filename) // I - File to load - - jpeg_create_decompress(&dinfo); - jpeg_stdio_src(&dinfo, fp); -- jpeg_read_header(&dinfo, 1); -+ jpeg_read_header(&dinfo, TRUE); - - dinfo.quantize_colors = (boolean)FALSE; - dinfo.out_color_space = JCS_RGB; -@@ -337,7 +337,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *name, const unsigned char *data) - - jpeg_create_decompress(&dinfo); - jpeg_mem_src(&dinfo, data); -- jpeg_read_header(&dinfo, 1); -+ jpeg_read_header(&dinfo, TRUE); - - dinfo.quantize_colors = (boolean)FALSE; - dinfo.out_color_space = JCS_RGB; --- -1.7.9.5 - diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch index 4d13ffc5d..2a9915bea 100644 --- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch +++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch @@ -1,20 +1,40 @@ ---- a/configure.in.orig 2015-11-26 14:30:17.893426966 +0800 -+++ b/configure.in 2015-11-26 14:33:00.285424099 +0800 -@@ -969,12 +969,12 @@ case $host_os_gui in - AC_ARG_ENABLE(xft, [ --enable-xft turn on Xft support [[default=yes]]]) +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) +- 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" +- 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_LIB(fontconfig, FcPatternCreate) AC_CHECK_HEADER(X11/Xft/Xft.h, +-- +2.7.4 + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb deleted file mode 100644 index 117ecc366..000000000 --- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb +++ /dev/null @@ -1,49 +0,0 @@ -SUMMARY = "FLTK is a cross-platform C++ GUI toolkit" -HOMEPAGE = "http://www.fltk.org" -SECTION = "libs" -LICENSE = "LGPLv2 & FLTK" -LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca" - -DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft" - -SRC_URI = "http://fltk.org/pub/fltk/${PV}/${BP}-source.tar.gz \ - file://disable_test.patch \ - file://fltk-no-freetype-config.patch \ - file://fix-boolean-issue-with-jpeg9.patch \ -" - -SRC_URI[md5sum] = "9ccdb0d19dc104b87179bd9fd10822e3" -SRC_URI[sha256sum] = "f8398d98d7221d40e77bc7b19e761adaf2f1ef8bb0c30eceb7beb4f2273d0d97" - -inherit autotools-brokensep binconfig pkgconfig lib_package - -TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2" - -EXTRA_OECONF = "--enable-shared \ - --enable-threads \ - --enable-xdbe \ - --enable-xft \ -" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}" - -PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl" -PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama" -PACKAGECONFIG[xfixes] = "--enable-xfixes,--disable-xfixes,libxfixes" -PACKAGECONFIG[xcursor] = "--enable-xcursor,--disable-xcursor,libxcursor" - -do_configure() { - oe_runconf -} - -do_install_append_class-target() { - sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config -} - -python populate_packages_prepend () { - if (d.getVar('DEBIAN_NAMES', 1)): - d.setVar('PKG_${BPN}', 'libfltk${PV}') -} - -LEAD_SONAME = "libfltk.so" - |