diff mbox series

[meta-oe] emacs: upgrade 29.1 -> 30.2

Message ID 20251005184547.1851183-1-skandigraun@gmail.com
State Accepted
Headers show
Series [meta-oe] emacs: upgrade 29.1 -> 30.2 | expand

Commit Message

Gyorgy Sarvari Oct. 5, 2025, 6:45 p.m. UTC
Added a new patch to avoid unexporting some environment variables that are set
by the recipe explicitly, to avoid the following build error:

| Loading env...
| 'bootstrap-emacs' -batch --no-site-file --no-site-lisp -batch -l ja-dic-cnv \
|   -f batch-skkdic-convert -dir "../../sources/emacs-29.2/leim/../lisp/leim/ja-dic" --no-reduction "../../sources/emacs-29.2/leim/SKK-DIC/SKK-JISYO.L"
<...>
| Error: <RECIP_SYSROOT_NATIVE>/usr/share/emacs/29.2/etc/charsets: No such file or directory

Changelogs:
29.2 - 29.4: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.29
30.1 - 30.2: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.30

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
 .../emacs/{emacs_29.1.bb => emacs_30.2.bb}    |  3 ++-
 ...oid-running-host-binaries-for-sanity.patch |  7 ++++---
 .../files/leim_dont-unexport-EMACSDATA.patch  | 19 +++++++++++++++++++
 ...acs-native-tools-for-cross-compiling.patch | 19 +++++++------------
 4 files changed, 32 insertions(+), 16 deletions(-)
 rename meta-oe/recipes-support/emacs/{emacs_29.1.bb => emacs_30.2.bb} (99%)
 create mode 100644 meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch

Comments

Khem Raj Oct. 8, 2025, 12:33 a.m. UTC | #1
I am seeing some fetching issues on Autobuilders -
https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/3761119/raw_inline
Is there a mirror we need ?

On Sun, Oct 5, 2025 at 11:45 AM Gyorgy Sarvari via
lists.openembedded.org <skandigraun=gmail.com@lists.openembedded.org>
wrote:
>
> Added a new patch to avoid unexporting some environment variables that are set
> by the recipe explicitly, to avoid the following build error:
>
> | Loading env...
> | 'bootstrap-emacs' -batch --no-site-file --no-site-lisp -batch -l ja-dic-cnv \
> |   -f batch-skkdic-convert -dir "../../sources/emacs-29.2/leim/../lisp/leim/ja-dic" --no-reduction "../../sources/emacs-29.2/leim/SKK-DIC/SKK-JISYO.L"
> <...>
> | Error: <RECIP_SYSROOT_NATIVE>/usr/share/emacs/29.2/etc/charsets: No such file or directory
>
> Changelogs:
> 29.2 - 29.4: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.29
> 30.1 - 30.2: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.30
>
> Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
> ---
>  .../emacs/{emacs_29.1.bb => emacs_30.2.bb}    |  3 ++-
>  ...oid-running-host-binaries-for-sanity.patch |  7 ++++---
>  .../files/leim_dont-unexport-EMACSDATA.patch  | 19 +++++++++++++++++++
>  ...acs-native-tools-for-cross-compiling.patch | 19 +++++++------------
>  4 files changed, 32 insertions(+), 16 deletions(-)
>  rename meta-oe/recipes-support/emacs/{emacs_29.1.bb => emacs_30.2.bb} (99%)
>  create mode 100644 meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
>
> diff --git a/meta-oe/recipes-support/emacs/emacs_29.1.bb b/meta-oe/recipes-support/emacs/emacs_30.2.bb
> similarity index 99%
> rename from meta-oe/recipes-support/emacs/emacs_29.1.bb
> rename to meta-oe/recipes-support/emacs/emacs_30.2.bb
> index 5cbe4551c0..6f9b8a485c 100644
> --- a/meta-oe/recipes-support/emacs/emacs_29.1.bb
> +++ b/meta-oe/recipes-support/emacs/emacs_30.2.bb
> @@ -9,9 +9,10 @@ SRC_URI = "https://ftp.gnu.org/pub/gnu/emacs/emacs-${PV}.tar.xz \
>  SRC_URI:append:class-target = " \
>      file://use-emacs-native-tools-for-cross-compiling.patch \
>      file://avoid-running-host-binaries-for-sanity.patch \
> +    file://leim_dont-unexport-EMACSDATA.patch \
>  "
>
> -SRC_URI[sha256sum] = "d2f881a5cc231e2f5a03e86f4584b0438f83edd7598a09d24a21bd8d003e2e01"
> +SRC_URI[sha256sum] = "b3f36f18a6dd2715713370166257de2fae01f9d38cfe878ced9b1e6ded5befd9"
>
>  CVE_STATUS[CVE-2007-6109] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
>
> diff --git a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
> index 719ee4bce9..bd23358f2a 100644
> --- a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
> +++ b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
> @@ -12,14 +12,14 @@ Index: emacs-29.1/Makefile.in
>  ===================================================================
>  --- emacs-29.1.orig/Makefile.in
>  +++ emacs-29.1/Makefile.in
> -@@ -416,19 +416,10 @@ advice-on-failure:
> +@@ -420,19 +420,11 @@
>         @exit ${exit-status}
>
>   sanity-check:
>  -      @[ -f .no-advice-on-failure ] && exit 0; true
> --      @v=$$(src/emacs${EXEEXT} --batch --eval \
> +-      @v=`src/emacs${EXEEXT} --batch -Q --eval \
>  -        '(progn (defun f (n) (if (= 0 n) 1 (* n (f (- n 1))))) (princ (f 10)))' \
> --        2> /dev/null); \
> +-        2> /dev/null`; \
>  -      [ "X$$v" = "X3628800" ] && exit 0; \
>  -      echo >&2 '***'; \
>  -      echo >&2 '*** '"\"make ${make-target}\" succeeded, but Emacs is not functional."; \
> @@ -33,6 +33,7 @@ Index: emacs-29.1/Makefile.in
>  +# this is not going to work since it was (probably) built for a different architecture.
>  +# Avoid calling target binaries from the host and simply assume our build artifacts work.
>  +      exit 0
> ++
>
>   .PHONY: all ${SUBDIR} blessmail epaths-force epaths-force-w32 epaths-force-ns-self-contained etc-emacsver
>
> diff --git a/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
> new file mode 100644
> index 0000000000..81dd2bde40
> --- /dev/null
> +++ b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
> @@ -0,0 +1,19 @@
> +Upstream unexports some environment variables to avoid contamination,
> +however OE sets these variables specifically to help the build in the
> +recipe, and they should not be unexported.
> +
> +Upstream-Status: Inappropriate [oe-specific]
> +
> +Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
> +
> +--- ./leim/Makefile.in.orig    2025-10-05 20:22:56.062508393 +0200
> ++++ ./leim/Makefile.in 2025-10-05 20:23:05.581046818 +0200
> +@@ -42,7 +42,7 @@
> + -include ${top_builddir}/src/verbose.mk
> +
> + # Prevent any settings in the user environment causing problems.
> +-unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
> ++# unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
> +
> + # Which Emacs to use to convert TIT files to Emacs Lisp files,
> + # and generate the file leim-list.el.
> diff --git a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
> index df5e4bd258..a1b6ea6ddf 100644
> --- a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
> +++ b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
> @@ -18,12 +18,7 @@ Index: emacs-29.1/src/Makefile.in
>  ===================================================================
>  --- emacs-29.1.orig/src/Makefile.in
>  +++ emacs-29.1/src/Makefile.in
> -@@ -1,3 +1,4 @@
> -+
> - ### @configure_input@
> -
> - # Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2023 Free Software
> -@@ -508,7 +509,7 @@ ifeq ($(CHECK_STRUCTS),true)
> +@@ -542,7 +542,7 @@ ifeq ($(CHECK_STRUCTS),true)
>   pdumper.o: dmpstruct.h
>   endif
>   dmpstruct.h: $(srcdir)/dmpstruct.awk
> @@ -32,17 +27,17 @@ Index: emacs-29.1/src/Makefile.in
>         $(AM_V_GEN)POSIXLY_CORRECT=1 awk -f $(srcdir)/dmpstruct.awk \
>                 $(dmpstruct_headers) > $@
>
> -@@ -610,8 +611,7 @@ SYSTEM_TYPE = @SYSTEM_TYPE@
> +@@ -651,8 +651,7 @@
>   ## Strictly speaking, emacs does not depend directly on all of $lisp,
>   ## since not all pieces are used on all platforms.  But DOC depends
>   ## on all of $lisp, and emacs depends on DOC, so it is ok to use $lisp here.
>  -emacs$(EXEEXT): temacs$(EXEEXT) \
> --                lisp.mk $(etc)/DOC $(lisp) \
> -+emacs$(EXEEXT): lisp.mk $(etc)/DOC $(lisp) \
> +-                $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
> ++emacs$(EXEEXT): $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
>                   $(lispsource)/international/charprop.el ${charsets}
>   ifeq ($(SYSTEM_TYPE),cygwin)
>         find ${top_builddir} -name '*.eln' | rebase -v -O -T -
> -@@ -654,7 +654,7 @@ endif
> +@@ -695,7 +695,7 @@ endif
>   $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(doc_obj)
>         $(AM_V_GEN)$(MKDIR_P) $(etc)
>         $(AM_V_at)rm -f $(etc)/DOC
> @@ -51,7 +46,7 @@ Index: emacs-29.1/src/Makefile.in
>           $(SOME_MACHINE_OBJECTS) $(doc_obj) > $(etc)/DOC
>
>   $(libsrc)/make-docfile$(EXEEXT) $(libsrc)/make-fingerprint$(EXEEXT): \
> -@@ -671,7 +671,7 @@ buildobj.h: Makefile
> +@@ -712,7 +712,7 @@ buildobj.h: Makefile
>   GLOBAL_SOURCES = $(base_obj:.o=.c) $(NS_OBJC_OBJ:.o=.m)
>
>   gl-stamp: $(libsrc)/make-docfile$(EXEEXT) $(GLOBAL_SOURCES)
> @@ -60,7 +55,7 @@ Index: emacs-29.1/src/Makefile.in
>         $(AM_V_at)$(top_srcdir)/build-aux/move-if-change globals.tmp globals.h
>         $(AM_V_at)echo timestamp > $@
>
> -@@ -685,7 +685,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
> +@@ -726,7 +726,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
>         $(MAKE) -C $(dir $@) all
>
>   ifeq ($(HAVE_PDUMPER),yes)
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#120256): https://lists.openembedded.org/g/openembedded-devel/message/120256
> Mute This Topic: https://lists.openembedded.org/mt/115605456/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Gyorgy Sarvari Oct. 8, 2025, 7:48 a.m. UTC | #2
On 10/8/25 02:33, Khem Raj wrote:
> I am seeing some fetching issues on Autobuilders -
> https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/3761119/raw_inline
> Is there a mirror we need ?

Yeah, their main server seems to be quite strained in the past few
weeks. Thanks for fixing it.

> On Sun, Oct 5, 2025 at 11:45 AM Gyorgy Sarvari via
> lists.openembedded.org <skandigraun=gmail.com@lists.openembedded.org>
> wrote:
>> Added a new patch to avoid unexporting some environment variables that are set
>> by the recipe explicitly, to avoid the following build error:
>>
>> | Loading env...
>> | 'bootstrap-emacs' -batch --no-site-file --no-site-lisp -batch -l ja-dic-cnv \
>> |   -f batch-skkdic-convert -dir "../../sources/emacs-29.2/leim/../lisp/leim/ja-dic" --no-reduction "../../sources/emacs-29.2/leim/SKK-DIC/SKK-JISYO.L"
>> <...>
>> | Error: <RECIP_SYSROOT_NATIVE>/usr/share/emacs/29.2/etc/charsets: No such file or directory
>>
>> Changelogs:
>> 29.2 - 29.4: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.29
>> 30.1 - 30.2: https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.30
>>
>> Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
>> ---
>>  .../emacs/{emacs_29.1.bb => emacs_30.2.bb}    |  3 ++-
>>  ...oid-running-host-binaries-for-sanity.patch |  7 ++++---
>>  .../files/leim_dont-unexport-EMACSDATA.patch  | 19 +++++++++++++++++++
>>  ...acs-native-tools-for-cross-compiling.patch | 19 +++++++------------
>>  4 files changed, 32 insertions(+), 16 deletions(-)
>>  rename meta-oe/recipes-support/emacs/{emacs_29.1.bb => emacs_30.2.bb} (99%)
>>  create mode 100644 meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
>>
>> diff --git a/meta-oe/recipes-support/emacs/emacs_29.1.bb b/meta-oe/recipes-support/emacs/emacs_30.2.bb
>> similarity index 99%
>> rename from meta-oe/recipes-support/emacs/emacs_29.1.bb
>> rename to meta-oe/recipes-support/emacs/emacs_30.2.bb
>> index 5cbe4551c0..6f9b8a485c 100644
>> --- a/meta-oe/recipes-support/emacs/emacs_29.1.bb
>> +++ b/meta-oe/recipes-support/emacs/emacs_30.2.bb
>> @@ -9,9 +9,10 @@ SRC_URI = "https://ftp.gnu.org/pub/gnu/emacs/emacs-${PV}.tar.xz \
>>  SRC_URI:append:class-target = " \
>>      file://use-emacs-native-tools-for-cross-compiling.patch \
>>      file://avoid-running-host-binaries-for-sanity.patch \
>> +    file://leim_dont-unexport-EMACSDATA.patch \
>>  "
>>
>> -SRC_URI[sha256sum] = "d2f881a5cc231e2f5a03e86f4584b0438f83edd7598a09d24a21bd8d003e2e01"
>> +SRC_URI[sha256sum] = "b3f36f18a6dd2715713370166257de2fae01f9d38cfe878ced9b1e6ded5befd9"
>>
>>  CVE_STATUS[CVE-2007-6109] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
>>
>> diff --git a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
>> index 719ee4bce9..bd23358f2a 100644
>> --- a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
>> +++ b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
>> @@ -12,14 +12,14 @@ Index: emacs-29.1/Makefile.in
>>  ===================================================================
>>  --- emacs-29.1.orig/Makefile.in
>>  +++ emacs-29.1/Makefile.in
>> -@@ -416,19 +416,10 @@ advice-on-failure:
>> +@@ -420,19 +420,11 @@
>>         @exit ${exit-status}
>>
>>   sanity-check:
>>  -      @[ -f .no-advice-on-failure ] && exit 0; true
>> --      @v=$$(src/emacs${EXEEXT} --batch --eval \
>> +-      @v=`src/emacs${EXEEXT} --batch -Q --eval \
>>  -        '(progn (defun f (n) (if (= 0 n) 1 (* n (f (- n 1))))) (princ (f 10)))' \
>> --        2> /dev/null); \
>> +-        2> /dev/null`; \
>>  -      [ "X$$v" = "X3628800" ] && exit 0; \
>>  -      echo >&2 '***'; \
>>  -      echo >&2 '*** '"\"make ${make-target}\" succeeded, but Emacs is not functional."; \
>> @@ -33,6 +33,7 @@ Index: emacs-29.1/Makefile.in
>>  +# this is not going to work since it was (probably) built for a different architecture.
>>  +# Avoid calling target binaries from the host and simply assume our build artifacts work.
>>  +      exit 0
>> ++
>>
>>   .PHONY: all ${SUBDIR} blessmail epaths-force epaths-force-w32 epaths-force-ns-self-contained etc-emacsver
>>
>> diff --git a/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
>> new file mode 100644
>> index 0000000000..81dd2bde40
>> --- /dev/null
>> +++ b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
>> @@ -0,0 +1,19 @@
>> +Upstream unexports some environment variables to avoid contamination,
>> +however OE sets these variables specifically to help the build in the
>> +recipe, and they should not be unexported.
>> +
>> +Upstream-Status: Inappropriate [oe-specific]
>> +
>> +Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
>> +
>> +--- ./leim/Makefile.in.orig    2025-10-05 20:22:56.062508393 +0200
>> ++++ ./leim/Makefile.in 2025-10-05 20:23:05.581046818 +0200
>> +@@ -42,7 +42,7 @@
>> + -include ${top_builddir}/src/verbose.mk
>> +
>> + # Prevent any settings in the user environment causing problems.
>> +-unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
>> ++# unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
>> +
>> + # Which Emacs to use to convert TIT files to Emacs Lisp files,
>> + # and generate the file leim-list.el.
>> diff --git a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
>> index df5e4bd258..a1b6ea6ddf 100644
>> --- a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
>> +++ b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
>> @@ -18,12 +18,7 @@ Index: emacs-29.1/src/Makefile.in
>>  ===================================================================
>>  --- emacs-29.1.orig/src/Makefile.in
>>  +++ emacs-29.1/src/Makefile.in
>> -@@ -1,3 +1,4 @@
>> -+
>> - ### @configure_input@
>> -
>> - # Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2023 Free Software
>> -@@ -508,7 +509,7 @@ ifeq ($(CHECK_STRUCTS),true)
>> +@@ -542,7 +542,7 @@ ifeq ($(CHECK_STRUCTS),true)
>>   pdumper.o: dmpstruct.h
>>   endif
>>   dmpstruct.h: $(srcdir)/dmpstruct.awk
>> @@ -32,17 +27,17 @@ Index: emacs-29.1/src/Makefile.in
>>         $(AM_V_GEN)POSIXLY_CORRECT=1 awk -f $(srcdir)/dmpstruct.awk \
>>                 $(dmpstruct_headers) > $@
>>
>> -@@ -610,8 +611,7 @@ SYSTEM_TYPE = @SYSTEM_TYPE@
>> +@@ -651,8 +651,7 @@
>>   ## Strictly speaking, emacs does not depend directly on all of $lisp,
>>   ## since not all pieces are used on all platforms.  But DOC depends
>>   ## on all of $lisp, and emacs depends on DOC, so it is ok to use $lisp here.
>>  -emacs$(EXEEXT): temacs$(EXEEXT) \
>> --                lisp.mk $(etc)/DOC $(lisp) \
>> -+emacs$(EXEEXT): lisp.mk $(etc)/DOC $(lisp) \
>> +-                $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
>> ++emacs$(EXEEXT): $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
>>                   $(lispsource)/international/charprop.el ${charsets}
>>   ifeq ($(SYSTEM_TYPE),cygwin)
>>         find ${top_builddir} -name '*.eln' | rebase -v -O -T -
>> -@@ -654,7 +654,7 @@ endif
>> +@@ -695,7 +695,7 @@ endif
>>   $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(doc_obj)
>>         $(AM_V_GEN)$(MKDIR_P) $(etc)
>>         $(AM_V_at)rm -f $(etc)/DOC
>> @@ -51,7 +46,7 @@ Index: emacs-29.1/src/Makefile.in
>>           $(SOME_MACHINE_OBJECTS) $(doc_obj) > $(etc)/DOC
>>
>>   $(libsrc)/make-docfile$(EXEEXT) $(libsrc)/make-fingerprint$(EXEEXT): \
>> -@@ -671,7 +671,7 @@ buildobj.h: Makefile
>> +@@ -712,7 +712,7 @@ buildobj.h: Makefile
>>   GLOBAL_SOURCES = $(base_obj:.o=.c) $(NS_OBJC_OBJ:.o=.m)
>>
>>   gl-stamp: $(libsrc)/make-docfile$(EXEEXT) $(GLOBAL_SOURCES)
>> @@ -60,7 +55,7 @@ Index: emacs-29.1/src/Makefile.in
>>         $(AM_V_at)$(top_srcdir)/build-aux/move-if-change globals.tmp globals.h
>>         $(AM_V_at)echo timestamp > $@
>>
>> -@@ -685,7 +685,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
>> +@@ -726,7 +726,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
>>         $(MAKE) -C $(dir $@) all
>>
>>   ifeq ($(HAVE_PDUMPER),yes)
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#120256): https://lists.openembedded.org/g/openembedded-devel/message/120256
>> Mute This Topic: https://lists.openembedded.org/mt/115605456/1997914
>> Group Owner: openembedded-devel+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/emacs/emacs_29.1.bb b/meta-oe/recipes-support/emacs/emacs_30.2.bb
similarity index 99%
rename from meta-oe/recipes-support/emacs/emacs_29.1.bb
rename to meta-oe/recipes-support/emacs/emacs_30.2.bb
index 5cbe4551c0..6f9b8a485c 100644
--- a/meta-oe/recipes-support/emacs/emacs_29.1.bb
+++ b/meta-oe/recipes-support/emacs/emacs_30.2.bb
@@ -9,9 +9,10 @@  SRC_URI = "https://ftp.gnu.org/pub/gnu/emacs/emacs-${PV}.tar.xz \
 SRC_URI:append:class-target = " \
     file://use-emacs-native-tools-for-cross-compiling.patch \
     file://avoid-running-host-binaries-for-sanity.patch \
+    file://leim_dont-unexport-EMACSDATA.patch \
 "
 
-SRC_URI[sha256sum] = "d2f881a5cc231e2f5a03e86f4584b0438f83edd7598a09d24a21bd8d003e2e01"
+SRC_URI[sha256sum] = "b3f36f18a6dd2715713370166257de2fae01f9d38cfe878ced9b1e6ded5befd9"
 
 CVE_STATUS[CVE-2007-6109] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
 
diff --git a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
index 719ee4bce9..bd23358f2a 100644
--- a/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
+++ b/meta-oe/recipes-support/emacs/files/avoid-running-host-binaries-for-sanity.patch
@@ -12,14 +12,14 @@  Index: emacs-29.1/Makefile.in
 ===================================================================
 --- emacs-29.1.orig/Makefile.in
 +++ emacs-29.1/Makefile.in
-@@ -416,19 +416,10 @@ advice-on-failure:
+@@ -420,19 +420,11 @@
  	@exit ${exit-status}
  
  sanity-check:
 -	@[ -f .no-advice-on-failure ] && exit 0; true
--	@v=$$(src/emacs${EXEEXT} --batch --eval \
+-	@v=`src/emacs${EXEEXT} --batch -Q --eval \
 -	  '(progn (defun f (n) (if (= 0 n) 1 (* n (f (- n 1))))) (princ (f 10)))' \
--	  2> /dev/null); \
+-	  2> /dev/null`; \
 -	[ "X$$v" = "X3628800" ] && exit 0; \
 -	echo >&2 '***'; \
 -	echo >&2 '*** '"\"make ${make-target}\" succeeded, but Emacs is not functional."; \
@@ -33,6 +33,7 @@  Index: emacs-29.1/Makefile.in
 +# this is not going to work since it was (probably) built for a different architecture.
 +# Avoid calling target binaries from the host and simply assume our build artifacts work.
 +	exit 0
++
  
  .PHONY: all ${SUBDIR} blessmail epaths-force epaths-force-w32 epaths-force-ns-self-contained etc-emacsver
  
diff --git a/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
new file mode 100644
index 0000000000..81dd2bde40
--- /dev/null
+++ b/meta-oe/recipes-support/emacs/files/leim_dont-unexport-EMACSDATA.patch
@@ -0,0 +1,19 @@ 
+Upstream unexports some environment variables to avoid contamination,
+however OE sets these variables specifically to help the build in the
+recipe, and they should not be unexported.
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
+
+--- ./leim/Makefile.in.orig	2025-10-05 20:22:56.062508393 +0200
++++ ./leim/Makefile.in	2025-10-05 20:23:05.581046818 +0200
+@@ -42,7 +42,7 @@
+ -include ${top_builddir}/src/verbose.mk
+ 
+ # Prevent any settings in the user environment causing problems.
+-unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
++# unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
+ 
+ # Which Emacs to use to convert TIT files to Emacs Lisp files,
+ # and generate the file leim-list.el.
diff --git a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
index df5e4bd258..a1b6ea6ddf 100644
--- a/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
+++ b/meta-oe/recipes-support/emacs/files/use-emacs-native-tools-for-cross-compiling.patch
@@ -18,12 +18,7 @@  Index: emacs-29.1/src/Makefile.in
 ===================================================================
 --- emacs-29.1.orig/src/Makefile.in
 +++ emacs-29.1/src/Makefile.in
-@@ -1,3 +1,4 @@
-+
- ### @configure_input@
- 
- # Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2023 Free Software
-@@ -508,7 +509,7 @@ ifeq ($(CHECK_STRUCTS),true)
+@@ -542,7 +542,7 @@ ifeq ($(CHECK_STRUCTS),true)
  pdumper.o: dmpstruct.h
  endif
  dmpstruct.h: $(srcdir)/dmpstruct.awk
@@ -32,17 +27,17 @@  Index: emacs-29.1/src/Makefile.in
  	$(AM_V_GEN)POSIXLY_CORRECT=1 awk -f $(srcdir)/dmpstruct.awk \
  		$(dmpstruct_headers) > $@
  
-@@ -610,8 +611,7 @@ SYSTEM_TYPE = @SYSTEM_TYPE@
+@@ -651,8 +651,7 @@
  ## Strictly speaking, emacs does not depend directly on all of $lisp,
  ## since not all pieces are used on all platforms.  But DOC depends
  ## on all of $lisp, and emacs depends on DOC, so it is ok to use $lisp here.
 -emacs$(EXEEXT): temacs$(EXEEXT) \
--                lisp.mk $(etc)/DOC $(lisp) \
-+emacs$(EXEEXT): lisp.mk $(etc)/DOC $(lisp) \
+-                $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
++emacs$(EXEEXT): $(abs_top_builddir)/src/lisp.mk $(etc)/DOC $(lisp) \
                  $(lispsource)/international/charprop.el ${charsets}
  ifeq ($(SYSTEM_TYPE),cygwin)
  	find ${top_builddir} -name '*.eln' | rebase -v -O -T -
-@@ -654,7 +654,7 @@ endif
+@@ -695,7 +695,7 @@ endif
  $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(doc_obj)
  	$(AM_V_GEN)$(MKDIR_P) $(etc)
  	$(AM_V_at)rm -f $(etc)/DOC
@@ -51,7 +46,7 @@  Index: emacs-29.1/src/Makefile.in
  	  $(SOME_MACHINE_OBJECTS) $(doc_obj) > $(etc)/DOC
  
  $(libsrc)/make-docfile$(EXEEXT) $(libsrc)/make-fingerprint$(EXEEXT): \
-@@ -671,7 +671,7 @@ buildobj.h: Makefile
+@@ -712,7 +712,7 @@ buildobj.h: Makefile
  GLOBAL_SOURCES = $(base_obj:.o=.c) $(NS_OBJC_OBJ:.o=.m)
  
  gl-stamp: $(libsrc)/make-docfile$(EXEEXT) $(GLOBAL_SOURCES)
@@ -60,7 +55,7 @@  Index: emacs-29.1/src/Makefile.in
  	$(AM_V_at)$(top_srcdir)/build-aux/move-if-change globals.tmp globals.h
  	$(AM_V_at)echo timestamp > $@
  
-@@ -685,7 +685,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
+@@ -726,7 +726,7 @@ $(LIBEGNU_ARCHIVE): $(config_h)
  	$(MAKE) -C $(dir $@) all
  
  ifeq ($(HAVE_PDUMPER),yes)