public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Gyorgy Sarvari <skandigraun@gmail.com>
To: randy.macleod@windriver.com, openembedded-core@lists.openembedded.org
Cc: alex.kanavin@gmail.com, Liezhi.Yang@windriver.com,
	peter.kjellerstedt@axis.com, ross.burton@arm.com
Subject: Re: [OE-core] [PATCH v4] gawk: disable persistent memory allocator due to licensing
Date: Tue, 7 Oct 2025 21:56:21 +0200	[thread overview]
Message-ID: <424cb94c-6693-417a-add4-14aadb60d231@gmail.com> (raw)
In-Reply-To: <20251007190923.315257-1-Randy.MacLeod@windriver.com>

On 10/7/25 21:09, Randy MacLeod via lists.openembedded.org wrote:
> From: Randy MacLeod <Randy.MacLeod@windriver.com>
>
> In gawk-5.2, a feature that allows gawk to preserve memory between runs:
>    https://www.gnu.org/software/gawk/manual/html_node/Persistent-Memory.html
> was added. The files that implement this, support/pma.[ch], are licensed
> under the AGPL3 which some entities perfer to avoid. Force people to knowingly
> opt into using this feature and license using:
>    PACKAGECONFIG:append:pn-gawk = " pma-if-64bit"
> where pma is an abbreviation for persistent memory allocator and the
> "-if-64bit" suffix is a indicator to users that the feature only works
> for 64 bit targets. Also add AGPL to LICENSE and LICENSE:${PN}, when using pma.
>
> Correct the license to be AGPL-3.0-or-later. There hasn't been a change in
> the license terms, at least for main.c, haven't changed significantly in
> the last 15 years:
>
> License-Update: Reflects conditional AGPL use and more as described above.
>
> Testing requires a non-root account and following the example in the link above:
>   $ truncate -s <size> data.pma
>   $ chmod 0600 data.pma
>   $ GAWK_PERSIST_FILE=data.pma gawk 'BEGIN { print ++i }'
>   1
>   $ GAWK_PERSIST_FILE=data.pma gawk 'BEGIN { print ++i }'
>   2
>   $ GAWK_PERSIST_FILE=data.pma gawk 'BEGIN { print ++i }'
>   3
>
> This works on qemu[x86-|arm|riscv]64 but not on qemu[arm|x86] where the
> --enable-pma is ignored because there is a requirement and build-time test
> for 8 byte void pointers in m4/pma.m4:
>   if test "$SKIP_PERSIST_MALLOC" = no && test $ac_cv_sizeof_void_p -eq 8
>
> Finally, remove an old comment about GPLv2, GPLv3 versions of gawk
> since this is no longer important as the GPLv2 version is not maintained.
>
> Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
> ---
>  meta/recipes-extended/gawk/gawk_5.3.2.bb | 15 +++++++++++----
>  1 file changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/meta/recipes-extended/gawk/gawk_5.3.2.bb b/meta/recipes-extended/gawk/gawk_5.3.2.bb
> index 833fe78bf9..ffaef93e8a 100644
> --- a/meta/recipes-extended/gawk/gawk_5.3.2.bb
> +++ b/meta/recipes-extended/gawk/gawk_5.3.2.bb
> @@ -6,14 +6,21 @@ HOMEPAGE = "https://www.gnu.org/software/gawk/"
>  BUGTRACKER  = "bug-gawk@gnu.org"
>  SECTION = "console/utils"
>  
> -# gawk <= 3.1.5: GPL-2.0-only
> -# gawk >= 3.1.6: GPL-3.0-only
> -LICENSE = "GPL-3.0-only"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
> +LICENSE = "GPL-3.0-or-later & AGPL-3.0-or-later"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
> +                    file://support/pma.c;md5=bb0026ee5e8b950e67d670dd2d60cc93;beginline=8;endline=19 \
> +                    file://support/pma.h;md5=bb0026ee5e8b950e67d670dd2d60cc93;beginline=8;endline=19"
> +
> +LICENSE:${PN} = "GPL-3.0-or-later"
> +LICENSE${PN}:append = " ${@bb.utils.contains('PACKAGECONFIG', 'pma-if-64bit', ' & AGPL-3.0-or-later', '', d)}"

Typo: missing colon between LICENSE and ${PN}

>  
>  PACKAGECONFIG ??= "readline mpfr"
>  PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
>  PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
> +# pma: persistent memory allocator:
> +# Disabled by default due to AGPL license.
> +# Note that PMA works only for 64-bit targets and is automatically disabled at configure time otherwise.
> +PACKAGECONFIG[pma-if-64bit] = "--enable-pma,--disable-pma, "
>  
>  SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
>             file://run-ptest \
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#224551): https://lists.openembedded.org/g/openembedded-core/message/224551
> Mute This Topic: https://lists.openembedded.org/mt/115642245/6084445
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [skandigraun@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>



  reply	other threads:[~2025-10-07 19:56 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-07 19:09 [PATCH v4] gawk: disable persistent memory allocator due to licensing Randy.MacLeod
2025-10-07 19:56 ` Gyorgy Sarvari [this message]
2025-10-07 20:08   ` [OE-core] " Randy MacLeod

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=424cb94c-6693-417a-add4-14aadb60d231@gmail.com \
    --to=skandigraun@gmail.com \
    --cc=Liezhi.Yang@windriver.com \
    --cc=alex.kanavin@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=peter.kjellerstedt@axis.com \
    --cc=randy.macleod@windriver.com \
    --cc=ross.burton@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox