mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
fbida: build with meson
Add meason features options for the PACKAGECONFIG choices. Remove patches that target the Autotools/gnumake style build. Signed-off-by: Wolfgang Meyer <Wolfgang.Meyer@gossenmetrawatt.com> Signed-off-by: Roland Hieber <rhi@pengutronix.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
b0c8cb29a1
commit
2f863abae7
|
|
@ -12,58 +12,27 @@ DEPENDS = "virtual/libiconv jpeg fontconfig freetype libexif libdrm pixman udev
|
|||
|
||||
PV = "2.14+git${SRCPV}"
|
||||
SRC_URI = "git://github.com/kraxel/fbida;protocol=https;branch=master \
|
||||
file://0001-Avoid-using-host-path.patch \
|
||||
file://fix-preprocessor.patch \
|
||||
file://support-jpeg-turbo.patch \
|
||||
file://fbida-gcc10.patch \
|
||||
file://0001-meson.build-install-fbgs-shell-script.patch \
|
||||
file://0002-meson.build-add-features-options-for-png-gif-tiff-we.patch \
|
||||
"
|
||||
SRCREV = "ac9005bf0bbf50f14dc1b368be5084c8e0510a5d"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit pkgconfig features_check
|
||||
inherit meson pkgconfig features_check
|
||||
|
||||
# Depends on libepoxy
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
|
||||
EXTRA_OEMAKE = "STRIP= 'srcdir=${S}' -f ${S}/GNUmakefile"
|
||||
|
||||
PACKAGECONFIG ??= "gif png"
|
||||
PACKAGECONFIG[gif] = ",,giflib"
|
||||
PACKAGECONFIG[png] = ",,libpng"
|
||||
PACKAGECONFIG[tiff] = ",,tiff"
|
||||
PACKAGECONFIG[motif] = ",,libx11 libxext libxpm libxt openmotif"
|
||||
PACKAGECONFIG[webp] = ",,libwebp"
|
||||
PACKAGECONFIG[gif] = "-Dgif=enabled,-Dgif=disabled,giflib"
|
||||
PACKAGECONFIG[png] = "-Dpng=enabled,-Dpng=disabled,libpng"
|
||||
PACKAGECONFIG[tiff] = "-Dtiff=enabled,-Dtiff=disabled,tiff"
|
||||
PACKAGECONFIG[motif] = "-Dmotif=enabled,-Dmotif=disabled,libx11 libxext libxpm libxt openmotif"
|
||||
PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
|
||||
|
||||
CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
|
||||
|
||||
do_compile() {
|
||||
sed -i -e 's# fbgs# \$(srcdir)/fbgs#; s#-Ijpeg#-I\$(srcdir)/jpeg#; s# jpeg/# \$(srcdir)/jpeg/#' ${S}/GNUmakefile
|
||||
sed -i -e 's:/sbin/ldconfig:echo x:' ${S}/mk/Autoconf.mk
|
||||
sed -i -e 's: cpp: ${CPP}:' ${S}/GNUmakefile
|
||||
|
||||
# Be sure to respect preferences (force to "no")
|
||||
# Also avoid issues when ${BUILD_ARCH} == ${HOST_ARCH}
|
||||
if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'gif', d)}" ]; then
|
||||
sed -i -e '/^HAVE_LIBGIF/s/:=.*$/:= no/' ${S}/GNUmakefile
|
||||
fi
|
||||
if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'png', d)}" ]; then
|
||||
sed -i -e '/^HAVE_LIBPNG/s/:=.*$/:= no/' ${S}/GNUmakefile
|
||||
fi
|
||||
if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'tiff', d)}" ]; then
|
||||
sed -i -e '/^HAVE_LIBTIFF/s/:=.*$/:= no/' ${S}/GNUmakefile
|
||||
fi
|
||||
if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'motif', d)}" ]; then
|
||||
sed -i -e '/^HAVE_MOTIF/s/:=.*$/:= no/' ${S}/GNUmakefile
|
||||
fi
|
||||
if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'webp', d)}" ]; then
|
||||
sed -i -e '/^HAVE_LIBWEBP/s/:=.*$/:= no/' ${S}/GNUmakefile
|
||||
fi
|
||||
|
||||
oe_runmake
|
||||
}
|
||||
|
||||
do_install() {
|
||||
oe_runmake 'DESTDIR=${D}' install
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} = "ttf-dejavu-sans-mono"
|
||||
|
|
|
|||
|
|
@ -1,34 +0,0 @@
|
|||
From 8d8fa9f22d9f6a95523bac63ac3af724faf5ff92 Mon Sep 17 00:00:00 2001
|
||||
From: Marek Vasut <marex@denx.de>
|
||||
Date: Fri, 7 Apr 2017 23:26:09 +0200
|
||||
Subject: [PATCH] Avoid using host-path
|
||||
|
||||
Remove the explicit reference to /usr/local/* , this is completely
|
||||
bogus and causes trouble during cross-compilation.
|
||||
|
||||
Signed-off-by: Marek Vasut <marex@denx.de>
|
||||
Upstream-Status: Inappropriate [upstream requires this]
|
||||
---
|
||||
mk/Variables.mk | 6 ------
|
||||
1 file changed, 6 deletions(-)
|
||||
|
||||
diff --git a/mk/Variables.mk b/mk/Variables.mk
|
||||
index 99f787c..3ffd87a 100644
|
||||
--- a/mk/Variables.mk
|
||||
+++ b/mk/Variables.mk
|
||||
@@ -42,12 +42,6 @@ CFLAGS += -Wall -Wmissing-prototypes -Wstrict-prototypes \
|
||||
-Wpointer-arith -Wunused
|
||||
CXXFLAGS += -Wall -Wpointer-arith -Wunused
|
||||
|
||||
-# add /usr/local to the search path if something is in there ...
|
||||
-ifneq ($(wildcard /usr/local/include/*.h),)
|
||||
- CFLAGS += -I/usr/local/include
|
||||
- LDFLAGS += -L/usr/local/$(LIB)
|
||||
-endif
|
||||
-
|
||||
# fixup include path for $(srcdir) != "."
|
||||
ifneq ($(srcdir),.)
|
||||
CFLAGS += -I. -I$(srcdir)
|
||||
--
|
||||
2.11.0
|
||||
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
From f9c455e81ad4d870c8ae20b9af8598139231ad26 Mon Sep 17 00:00:00 2001
|
||||
From: "Meyer, Wolfgang" <Wolfgang.Meyer@gossenmetrawatt.com>
|
||||
Date: Fri, 9 Sep 2022 09:32:22 +0200
|
||||
Subject: [PATCH] meson.build: install fbgs shell script
|
||||
|
||||
---
|
||||
meson.build | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index cbed982..2129896 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -124,6 +124,9 @@ executable('fbpdf',
|
||||
sources : fbpdf_srcs,
|
||||
dependencies : fbpdf_deps,
|
||||
install : true)
|
||||
+install_data('fbgs',
|
||||
+ install_dir : get_option('bindir'),
|
||||
+ install_mode : 'rwxr--r--')
|
||||
|
||||
# build kbdtest
|
||||
executable('kbdtest',
|
||||
--
|
||||
2.37.3
|
||||
|
||||
|
|
@ -0,0 +1,123 @@
|
|||
From fa60c06cadd6acd8abede91e75254e7250a087a3 Mon Sep 17 00:00:00 2001
|
||||
From: "Meyer, Wolfgang" <Wolfgang.Meyer@gossenmetrawatt.com>
|
||||
Date: Fri, 16 Sep 2022 13:40:25 +0200
|
||||
Subject: [PATCH] meson.build: add features options for png, gif, tiff, webp,
|
||||
and motif
|
||||
|
||||
---
|
||||
meson.build | 41 +++++++++++++++++++++++++++--------------
|
||||
meson_options.txt | 5 +++++
|
||||
selections.c | 4 ++++
|
||||
3 files changed, 36 insertions(+), 14 deletions(-)
|
||||
create mode 100644 meson_options.txt
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index cbed982..e66ee48 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -21,9 +21,9 @@ drm_dep = dependency('libdrm')
|
||||
gbm_dep = dependency('gbm')
|
||||
epoxy_dep = dependency('epoxy')
|
||||
exif_dep = dependency('libexif')
|
||||
-png_dep = dependency('libpng')
|
||||
-tiff_dep = dependency('libtiff-4')
|
||||
-webp_dep = dependency('libwebp', required : false)
|
||||
+png_dep = dependency('libpng', required: get_option('png'))
|
||||
+tiff_dep = dependency('libtiff-4', required: get_option('tiff'))
|
||||
+webp_dep = dependency('libwebp', required : get_option('webp'))
|
||||
udev_dep = dependency('libudev')
|
||||
input_dep = dependency('libinput')
|
||||
|
||||
@@ -32,20 +32,20 @@ cc = meson.get_compiler('c')
|
||||
jpeg_dep = cc.find_library('jpeg')
|
||||
math_dep = cc.find_library('m', required : false)
|
||||
pcd_dep = cc.find_library('pcd', required : false)
|
||||
-gif_dep = cc.find_library('gif', required : false)
|
||||
+gif_dep = cc.find_library('gif', required: get_option('gif'))
|
||||
|
||||
# motif + x11 libs
|
||||
-motif_dep = cc.find_library('Xm', required : false)
|
||||
-xpm_dep = cc.find_library('Xpm', required : false)
|
||||
-xt_dep = cc.find_library('Xt', required : false)
|
||||
-xext_dep = cc.find_library('Xext', required : false)
|
||||
-x11_dep = cc.find_library('X11', required : false)
|
||||
+motif_dep = cc.find_library('Xm', required : get_option('motif'))
|
||||
+xpm_dep = cc.find_library('Xpm', required : get_option('motif'))
|
||||
+xt_dep = cc.find_library('Xt', required : get_option('motif'))
|
||||
+xext_dep = cc.find_library('Xext', required : get_option('motif'))
|
||||
+x11_dep = cc.find_library('X11', required : get_option('motif'))
|
||||
|
||||
# image formats
|
||||
read_srcs = [ 'readers.c', 'rd/read-ppm.c', 'rd/read-bmp.c',
|
||||
- 'rd/read-jpeg.c', 'rd/read-png.c', 'rd/read-tiff.c' ]
|
||||
+ 'rd/read-jpeg.c' ]
|
||||
write_srcs = [ 'writers.c', 'wr/write-ppm.c', 'wr/write-ps.c',
|
||||
- 'wr/write-jpeg.c', 'wr/write-png.c', 'wr/write-tiff.c' ]
|
||||
+ 'wr/write-jpeg.c' ]
|
||||
image_deps = [ jpeg_dep, png_dep, tiff_dep,
|
||||
pcd_dep, gif_dep, webp_dep ]
|
||||
|
||||
@@ -53,11 +53,21 @@ if pcd_dep.found()
|
||||
read_srcs += 'rd/read-pcd.c'
|
||||
config.set('HAVE_LIBPCD', true)
|
||||
endif
|
||||
-if gif_dep.found()
|
||||
+if get_option('png').enabled()
|
||||
+ read_srcs += 'rd/read-png.c'
|
||||
+ write_srcs += 'wr/write-png.c'
|
||||
+ config.set('HAVE_LIBPNG', true)
|
||||
+endif
|
||||
+if get_option('tiff').enabled()
|
||||
+ read_srcs += 'rd/read-tiff.c'
|
||||
+ write_srcs += 'wr/write-tiff.c'
|
||||
+ config.set('HAVE_LIBTIFF', true)
|
||||
+endif
|
||||
+if get_option('gif').enabled()
|
||||
read_srcs += 'rd/read-gif.c'
|
||||
config.set('HAVE_LIBGIF', true)
|
||||
endif
|
||||
-if webp_dep.found()
|
||||
+if get_option('webp').enabled()
|
||||
read_srcs += 'rd/read-webp.c'
|
||||
config.set('HAVE_LIBWEBP', true)
|
||||
endif
|
||||
@@ -153,7 +166,7 @@ ida_srcs = [ 'ida.c', 'man.c', 'hex.c', 'x11.c', 'viewer.c',
|
||||
ida_deps = [ pixman_dep, exif_dep, image_deps, math_dep,
|
||||
motif_dep, xpm_dep, xt_dep, xext_dep, x11_dep ]
|
||||
|
||||
-if motif_dep.found()
|
||||
+if get_option('motif').enabled()
|
||||
executable('ida',
|
||||
sources : ida_srcs,
|
||||
dependencies : ida_deps,
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
new file mode 100644
|
||||
index 0000000..ce37188
|
||||
--- /dev/null
|
||||
+++ b/meson_options.txt
|
||||
@@ -0,0 +1,5 @@
|
||||
+option('gif', type: 'feature', value : 'enabled')
|
||||
+option('png', type: 'feature', value : 'enabled')
|
||||
+option('tiff', type: 'feature', value : 'enabled')
|
||||
+option('webp', type: 'feature', value : 'disabled')
|
||||
+option('motif', type: 'feature', value : 'disabled')
|
||||
diff --git a/selections.c b/selections.c
|
||||
index 7b16264..ccdc686 100644
|
||||
--- a/selections.c
|
||||
+++ b/selections.c
|
||||
@@ -609,8 +609,12 @@ void ipc_init()
|
||||
#ifdef HAVE_LIBGIF
|
||||
targets[ntargets++] = MIME_IMAGE_GIF;
|
||||
#endif
|
||||
+#ifdef HAVE_LIBPNG
|
||||
targets[ntargets++] = MIME_IMAGE_PNG;
|
||||
+#endif
|
||||
+#ifdef HAVE_LIBTIFF
|
||||
targets[ntargets++] = MIME_IMAGE_TIFF;
|
||||
+#endif
|
||||
targets[ntargets++] = XA_PIXMAP;
|
||||
targets[ntargets++] = XA_STRING;
|
||||
|
||||
--
|
||||
2.37.3
|
||||
|
||||
Loading…
Reference in New Issue
Block a user