[oe] [meta-oe][PATCH] fvwm: add new recipe
akuster808
akuster808 at gmail.com
Wed Feb 28 05:33:03 UTC 2018
On 02/27/2018 09:24 AM, Sebastian Reichel wrote:
> Add recipe for a minimal built of fvwm.
>
> Signed-off-by: Sebastian Reichel <sebastian.reichel at collabora.co.uk>
> ---
> .../0001-Fix-compilation-for-disabled-gnome.patch | 67 ++++++++++++
> .../fvwm/fvwm/0002-Avoid-absolute-symlinks.patch | 26 +++++
> meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb | 112 +++++++++++++++++++++
> 3 files changed, 205 insertions(+)
> create mode 100644 meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
> create mode 100644 meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch
> create mode 100644 meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb
>
> diff --git a/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch b/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
> new file mode 100644
> index 000000000000..97d6bc1b7ab6
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
> @@ -0,0 +1,67 @@
> +From 60c17eb49121bf2aa485acd30750b2fc6c8eb61f Mon Sep 17 00:00:00 2001
> +From: Jarmo Jaakkola <jarmo.jaakkola at vincit.fi>
> +Date: Mon, 19 Jun 2017 16:41:36 +0300
> +Subject: [PATCH] Fix compilation for Helix.
> +
> +Gnome support, including GNOME_INIT_HOOK, has been removed, but it was
> +still being called.
> +
> +COMPAT_OLD_KEYSYMDEF is a check for a legacy system, which our system
> +most definitely is not. It is accomplished by trying to execute
> +a program, which does not work when cross compiling.
> +
> +The fvwm(1) man page is created from Docbook XML which is set for
> +a Windows code page that is not available when compiling. Easiest is
> +to just not create the man page as those are not needed on the monitor.
> +
> +Signed-off-by: Jarmo Jaakkola <jarmo.jaakkola at vincit.fi>
> +Signed-off-by: Riku Hämäläinen <riku.hamalainen at ge.com>
Missing Upstream-Status and signed-off-by
> +---
> + configure.ac | 20 ++++----------------
> + doc/fvwm/Makefile.am | 2 +-
> + 3 files changed, 7 insertions(+), 17 deletions(-)
> +
> +diff --git a/configure.ac b/configure.ac
> +index 48ce264..fab7b44 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -1413,23 +1413,7 @@ else
> + problem_gdkimlib=": Failed on gdk-imlib, see config.log"
> + fi
> +
> +-GNOME_INIT_HOOK
> +-
> +-# Unfortunately we have 2 gnome supports: WM hints and gnome libs.
> +-# The $with_gnomehints below refers to the first, not GNOME_INIT_HOOK.
> +-if test ! x"$enable_gnome_hints" = xno; then
> +- with_gnomehints=yes
> +- problem_gnomehints=""
> +-else
> +- with_gnomehints=no
> +- problem_gnomehints=": Explicitly disabled"
> +-fi
> +-
> + # Define some compatibility macros needed for config.h.
> +-mg_DEFINE_IF_NOT([#include <X11/keysym.h>],
> +- [defined XK_Page_Up && defined XK_Page_Down],
> +- [COMPAT_OLD_KEYSYMDEF], [$X_CFLAGS],
> +- [Old AIX systems (3.2.5) don't define some common keysyms.])
> + AH_VERBATIM([_COMPAT_OLD_KEYSYMDEF],
> + [#ifdef COMPAT_OLD_KEYSYMDEF
> + # define XK_Page_Up XK_Prior
> +diff --git a/doc/fvwm/Makefile.am b/doc/fvwm/Makefile.am
> +index cddb102..ff00149 100755
> +--- a/doc/fvwm/Makefile.am
> ++++ b/doc/fvwm/Makefile.am
> +@@ -10,7 +10,7 @@ XSL_PROFILE = $(srcdir)/../docbook-xsl/profiling/profile.xsl
> + HTML_FILES = fvwm.man.html
> + XML_FILES = @DOC_SECTIONS_XML_PATH@
> + EXTRA_DIST = @DOC_SECTIONS_XML@ $(man_MANS) sections
> +-man_MANS = fvwm.1
> ++man_MANS =
> +
> + if FVWM_BUILD_HTMLDOC
> + doc_DATA = $(HTML_FILES)
> +--
> +1.9.1
> +
> diff --git a/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch b/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch
> new file mode 100644
> index 000000000000..2a5a6a90b70c
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch
> @@ -0,0 +1,26 @@
> +From: Sebastian Reichel <sebastian.reichel at collabora.co.uk>
> +Date: Tue, 29 Auf 2017 16:08:42 +0200
> +Subject: [PATCH] Avoid absolute symlinks
> +
> +Avoid usage of absolute symlinks, which breaks yocto builds
> +with pyro branch.
Why is Pyro noted here?
Missing Upstream-Status:
> +
> +Signed-off-by: Sebastian Reichel <sebastian.reichel at collabora.co.uk>
> +
> +diff --git a/default-config/Makefile.am b/default-config/Makefile.am
> +index 5e16d095a137..5404145a742c 100644
> +--- a/default-config/Makefile.am
> ++++ b/default-config/Makefile.am
> +@@ -17,9 +17,9 @@ EXTRA_DIST = images \
> +
> + install-data-hook:
> + cp -r $(srcdir)/images $(inst_location)
> +- ln -sf $(inst_location)/FvwmScript-DateTime $(inst_location)/..
> +- ln -sf $(inst_location)/FvwmScript-ConfirmQuit $(inst_location)/..
> +- ln -sf $(inst_location)/FvwmScript-ConfirmCopyConfig $(inst_location)/..
> ++ ln -sf default-config/FvwmScript-DateTime $(inst_location)/..
> ++ ln -sf default-config/FvwmScript-ConfirmQuit $(inst_location)/..
> ++ ln -sf default-config/FvwmScript-ConfirmCopyConfig $(inst_location)/..
> +
> + uninstall-hook:
> + rm -fr $(DESTDIR)/$(configdir)
> diff --git a/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb b/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb
> new file mode 100644
> index 000000000000..822411aeff5e
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb
please take a look at https://www.openembedded.org/wiki/Styleguide
thanks,
Armin
> @@ -0,0 +1,112 @@
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=363fbcfb59124689af72c914560eaf6e"
> +
> +SRC_URI = "\
> + git://github.com/fvwmorg/fvwm.git;protocol=https \
> + file://0001-Fix-compilation-for-disabled-gnome.patch \
> + file://0002-Avoid-absolute-symlinks.patch \
> +"
> +
> +# Modify these as desired
> +PV = "2.6.7+git${SRCPV}"
> +SRCREV = "597a4e296da4f21e71a17facab297e016a3a80a8"
> +
> +S = "${WORKDIR}/git"
> +
> +# NOTE: the following prog dependencies are unknown, ignoring: imlib-config fribidi-config fontconfig-config xft-config cpp gmsgfmt
> +# NOTE: the following library dependencies are unknown, ignoring: ifelse($2 dmalloc efence xpg4 fribidi intl
> +# (this is based on recipes that have previously been built and packaged)
> +DEPENDS = "\
> + bison-native \
> + flex-native \
> + freetype-native \
> + gettext-native \
> + libxslt-native \
> +\
> + fontconfig \
> + libice \
> + libpng \
> + librsvg \
> + libsm \
> + libxau \
> + libxcb \
> + libxcursor \
> + libxdmcp \
> + libxext \
> + libxfixes \
> + libxft \
> + libxinerama \
> + libxml2 \
> + libxrender \
> + libxt \
> + virtual/libx11 \
> + xrandr \
> + zlib \
> +"
> +
> +RDEPENDS_${PN} = "\
> + xuser-account \
> +"
> +
> +inherit pythonnative gettext pkgconfig perlnative autotools
> +
> +EXTRA_OECONF = "\
> + --disable-bidi \
> + --disable-fontconfigtest \
> + --disable-freetypetest \
> + --disable-htmldoc \
> + --disable-imlibtest \
> + --disable-mandoc \
> + --disable-nls \
> + --disable-perllib \
> + --disable-rsvg \
> + --disable-shape \
> + --disable-sm \
> + --disable-xfttest \
> +\
> + --with-imlib-exec-prefix=/nonexistent \
> + --with-imlib-prefix=/nonexistent \
> +\
> + --without-ncurses-library \
> + --without-readline-library \
> + --without-rplay-library \
> + --without-stroke-library \
> + --without-termcap-library \
> + --without-xpm-library \
> +\
> + ac_cv_func_mkstemp=no \
> + has_safety_mkstemp=yes \
> +"
> +
> +# show the exact commands in the log file
> +EXTRA_OEMAKE = "\
> + V=1 \
> +"
> +
> +# the only needed packages (note: locale packages are automatically generated
> +# as well)
> +PACKAGES = "\
> + fvwm \
> + fvwm-dbg \
> +"
> +
> +# minimal set of binaries
> +FILES_${PN} = "\
> + ${bindir}/fvwm \
> + ${bindir}/fvwm-root \
> + ${datadir}/fvwm/ConfigFvwmDefaults \
> +"
> +
> +# by default a lot of stuff is installed and it's not easy to control what to
> +# install, so install everything, but skip the check
> +INSANE_SKIP_${PN} = "\
> + installed-vs-shipped \
> +"
> +
> +do_install_append() {
> + install -d -m 0755 ${D}/${sysconfdir}/xdg/fvwm
> + # You can install the config file here
> +
> + install -d -m 0755 ${D}/${datadir}/fvwm
> + touch ${D}/${datadir}/fvwm/ConfigFvwmDefaults
> +}
More information about the Openembedded-devel
mailing list