diff options
| author | Romain Naour <romain.naour@gmail.com> | 2021-05-06 01:05:44 +0200 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2021-05-05 17:41:38 -0700 |
| commit | e17e159d93999b231b96aa7c73e94376b68bb52a (patch) | |
| tree | 6012b83346ef43e901d343d2f2629da52b6cf816 | |
| parent | 44664a2d66ea848d927164685c283f0ea8d3d12f (diff) | |
| download | meta-openembedded-e17e159d93999b231b96aa7c73e94376b68bb52a.tar.gz | |
poke: add recipe for version 1.2
Backport a patch to disable tcl/tk dependencies when gui support
is disabled.
Add a local patch to workaround a path poisoning issue. Issue
reported upstream.
Add another local patch when HELP2MAN is missing.
See:
http://www.jemarch.net/poke-1.0-relnotes.html
http://www.jemarch.net/poke-1.1-relnotes.html
http://www.jemarch.net/poke-1.2-relnotes.html
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
4 files changed, 153 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch b/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch new file mode 100644 index 0000000000..3bd041a0e7 --- /dev/null +++ b/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch | |||
| @@ -0,0 +1,43 @@ | |||
| 1 | From cef3fc90f02ef4fc49515745194bac3d81a2265b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Jose E. Marchesi" <jose.marchesi@oracle.com> | ||
| 3 | Date: Fri, 30 Apr 2021 13:17:05 +0200 | ||
| 4 | Subject: [PATCH] build: do not check for Tcl/Tk if --disable-gui is specified | ||
| 5 | |||
| 6 | 2021-04-30 Jose E. Marchesi <jemarch@gnu.org> | ||
| 7 | |||
| 8 | * configure.ac: Do not check for tcl/tk if --disable-gui is | ||
| 9 | specified at configure time. | ||
| 10 | |||
| 11 | (cherry picked from commit 280a5e154287e43c0a40d9530a9cc658a7367a9c) | ||
| 12 | [Romain: remove Changelog entry] | ||
| 13 | Signed-off-by: Romain Naour <romain.naour@gmail.com> | ||
| 14 | --- | ||
| 15 | configure.ac | 9 ++++++--- | ||
| 16 | 1 file changed, 6 insertions(+), 3 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/configure.ac b/configure.ac | ||
| 19 | index c7205513..c2f0760a 100644 | ||
| 20 | --- a/configure.ac | ||
| 21 | +++ b/configure.ac | ||
| 22 | @@ -214,12 +214,15 @@ fi | ||
| 23 | dnl The GUI is optional, and depends on the availability of Tcl and | ||
| 24 | dnl Tk. | ||
| 25 | |||
| 26 | -POKE_TCLTK | ||
| 27 | - | ||
| 28 | AC_ARG_ENABLE([gui], | ||
| 29 | AS_HELP_STRING([--enable-gui], | ||
| 30 | [Enable the GUI (default is YES)]), | ||
| 31 | - [gui_enabled=$enableval], [gui_enabled=$has_tcltk]) | ||
| 32 | + [gui_enabled=$enableval], [gui_enabled=yes]) | ||
| 33 | + | ||
| 34 | +if test "x$gui_enabled" = "xyes"; then | ||
| 35 | + POKE_TCLTK | ||
| 36 | + gui_enabled=$has_tcltk | ||
| 37 | +fi | ||
| 38 | |||
| 39 | AM_CONDITIONAL([GUI], [test "x$gui_enabled" = "xyes"]) | ||
| 40 | |||
| 41 | -- | ||
| 42 | 2.30.2 | ||
| 43 | |||
diff --git a/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch b/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch new file mode 100644 index 0000000000..fa55f817ff --- /dev/null +++ b/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | From c37419e459bd5863534719fa50755174d0912e6d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Romain Naour <romain.naour@gmail.com> | ||
| 3 | Date: Fri, 30 Apr 2021 14:32:21 +0200 | ||
| 4 | Subject: [PATCH] jitter: jitter-config.in: avoit host poisoning while | ||
| 5 | cross-compiling | ||
| 6 | |||
| 7 | When jitter is bundled into another project (poke), jitter-config --cppflags | ||
| 8 | return an unsafe path "-I /usr/include". | ||
| 9 | |||
| 10 | In the context of Buildroot, such configuration script woulf be "fixed" | ||
| 11 | after installation. But jitter-config is not installed by poke since it's | ||
| 12 | build as static library and liked to poke. | ||
| 13 | |||
| 14 | For now, patch jitter-config.in instead of jitter-config.in.m4sh since | ||
| 15 | there is an issue while converting the M4sh m4sh script ( .in.m4sh ) | ||
| 16 | into a portable shell script ( .in ) ready to be processed by aclocal | ||
| 17 | for @-substitutions. | ||
| 18 | |||
| 19 | [1] https://git.buildroot.net/buildroot/tree/package/pkg-generic.mk?h=2021.02.1#n291 | ||
| 20 | |||
| 21 | Signed-off-by: Romain Naour <romain.naour@gmail.com> | ||
| 22 | --- | ||
| 23 | jitter/bin/jitter-config.in | 6 +----- | ||
| 24 | 1 file changed, 1 insertion(+), 5 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/jitter/bin/jitter-config.in b/jitter/bin/jitter-config.in | ||
| 27 | index 5e124f0..af0ac9d 100644 | ||
| 28 | --- a/jitter/bin/jitter-config.in | ||
| 29 | +++ b/jitter/bin/jitter-config.in | ||
| 30 | @@ -998,11 +998,7 @@ while test "$#" != "0"; do | ||
| 31 | append_to_output cflags;; | ||
| 32 | --cppflags) | ||
| 33 | no_option_argument | ||
| 34 | - append_to_output cppflags | ||
| 35 | - # Append a -I argument. This is defined separately from the rest, | ||
| 36 | - # as the installation prefix can be decided very late, at Jitter | ||
| 37 | - # installation time. | ||
| 38 | - output="$output -I $includedir";; | ||
| 39 | + append_to_output cppflags;; | ||
| 40 | --ldadd) | ||
| 41 | no_option_argument | ||
| 42 | append_to_output ldadd;; | ||
| 43 | -- | ||
| 44 | 2.30.2 | ||
| 45 | |||
diff --git a/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch b/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch new file mode 100644 index 0000000000..f217c917f1 --- /dev/null +++ b/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | From 8ba76a5a7ce311f67890199c5595bc1f626495ad Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Romain Naour <romain.naour@gmail.com> | ||
| 3 | Date: Fri, 30 Apr 2021 15:43:59 +0200 | ||
| 4 | Subject: [PATCH] configure.ac: HELP2MAN replace ':' by 'true' when | ||
| 5 | cross-compiling | ||
| 6 | |||
| 7 | Avoid: | ||
| 8 | /usr/bin/make ./../poke/poke | ||
| 9 | ../run \ | ||
| 10 | : -p poke --name="The GNU extensible binary editor" \ | ||
| 11 | ./../poke/poke -o ./poke.1 | ||
| 12 | ../run: line 51: exec: :: not found | ||
| 13 | |||
| 14 | Signed-off-by: Romain Naour <romain.naour@gmail.com> | ||
| 15 | --- | ||
| 16 | configure.ac | 2 +- | ||
| 17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/configure.ac b/configure.ac | ||
| 20 | index c2f0760a..93769ef9 100644 | ||
| 21 | --- a/configure.ac | ||
| 22 | +++ b/configure.ac | ||
| 23 | @@ -74,7 +74,7 @@ gl_LIBTEXTSTYLE_OPTIONAL([0.20.5]) | ||
| 24 | if test $cross_compiling = no; then | ||
| 25 | AM_MISSING_PROG(HELP2MAN, help2man) | ||
| 26 | else | ||
| 27 | - HELP2MAN=: | ||
| 28 | + HELP2MAN=true | ||
| 29 | fi | ||
| 30 | |||
| 31 | dnl recfix is part of the GNU recutils suite, and is used in cfg.mk to | ||
| 32 | -- | ||
| 33 | 2.30.2 | ||
| 34 | |||
diff --git a/meta-oe/recipes-devtools/poke/poke_1.2.bb b/meta-oe/recipes-devtools/poke/poke_1.2.bb new file mode 100644 index 0000000000..dcb547ff87 --- /dev/null +++ b/meta-oe/recipes-devtools/poke/poke_1.2.bb | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | SUMMARY = "GNU poke is an extensible editor for structured binary data" | ||
| 2 | HOMEPAGE = "https://pokology.org" | ||
| 3 | DESCRIPTION = "GNU poke is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them." | ||
| 4 | SECTION = "console/utils" | ||
| 5 | LICENSE = "GPL-3.0+" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 7 | |||
| 8 | SRC_URI = "${GNU_MIRROR}/poke/poke-${PV}.tar.gz \ | ||
| 9 | file://0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch \ | ||
| 10 | file://0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch \ | ||
| 11 | file://0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch \ | ||
| 12 | " | ||
| 13 | |||
| 14 | DEPENDS = "flex-native bison-native bdwgc readline" | ||
| 15 | |||
| 16 | SRC_URI[sha256sum] = "f61cf8da5b64c01a1359373725aad1ca257f35c1c9269e4d50dd0664183ddf62" | ||
| 17 | |||
| 18 | # poke does not support using out-of-tree builds | ||
| 19 | inherit autotools-brokensep gettext pkgconfig | ||
| 20 | |||
| 21 | # The automatic m4 path detection gets confused, so force the right value from | ||
| 22 | # the poke bootstrap script. | ||
| 23 | acpaths = "-I ./m4" | ||
| 24 | |||
| 25 | EXTRA_OECONF = "--disable-gui \ | ||
| 26 | --disable-libnbd \ | ||
| 27 | --disable-mi \ | ||
| 28 | --with-libreadline-prefix=${STAGING_INCDIR} \ | ||
| 29 | " | ||
| 30 | |||
| 31 | FILES_${PN} += "${datadir}/emacs/site-lisp" | ||
