[PATCH] gnu: emacs: Fix emacs native compilation on most recent emacsen.

  • Done
  • quality assurance status badge
Details
3 participants
  • Andrew Tropin
  • Liliana Marie Prikler
  • Nicolas Graves
Owner
unassigned
Submitted by
Nicolas Graves
Severity
normal
N
N
Nicolas Graves wrote on 27 Sep 2023 03:37
(address . guix-patches@gnu.org)(address . ngraves@ngraves.fr)
3d99a6a63e38a5ba24b75e6fd40130474881eaa3.1695778662.git.ngraves@ngraves.fr
* gnu/packages/emacs.scm (emacs-no-x):
[arguments](phases): Adapt phase patch-compilation-driver.
---
gnu/packages/emacs.scm | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

Toggle diff (177 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 72b2c7795e..884b9b7f27 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -317,7 +317,7 @@ (define-public emacs-no-x
(add-after 'unpack 'patch-compilation-driver
(lambda _
(substitute* "lisp/emacs-lisp/comp.el"
- (("\\(defcustom native-comp-driver-options nil")
+ (("\\(defcustom native-comp-driver-options.*")
(format
#f "(defcustom native-comp-driver-options '(~@{~s~^ ~})"
(string-append
@@ -327,7 +327,12 @@ (define-public emacs-no-x
(string-append
"-B" #$(this-package-input "libgccjit") "/lib/")
(string-append
- "-B" #$(this-package-input "libgccjit") "/lib/gcc/"))))))))))
+ "-B" #$(this-package-input "libgccjit") "/lib/gcc/")))
+ ;; Most recent version of emacs include a non-nil
+ ;; native-comp-driver-options. The next substitution
+ ;; erases such lines.
+ ((".*'\\(\"-Wl,-.*")
+ ""))))))))
(inputs
(modify-inputs (package-inputs emacs-minimal)
(prepend gnutls

base-commit: 06dc36ffb7cde821a4762b299d1c95b3788ba110
prerequisite-patch-id: eb618ab7b10483d917c308a38792af98baa517e2
prerequisite-patch-id: c12968d02d99c253f858586a86b16fa32d41f1c1
prerequisite-patch-id: 09d995d48139f8e61183d5634cda13a01cdb50f7
prerequisite-patch-id: 86baa45ec2aad977c8c8135f7613aa391155de6d
prerequisite-patch-id: 3425fbbff6a603d60b4e143ea2141aabf4ddc92c
prerequisite-patch-id: c373c01aab5dcba3503a97d51c62a595147a041c
prerequisite-patch-id: cda857c790b88c681c4e713c5f71e40291970daf
prerequisite-patch-id: 8e234d0f4d93d2aad499eec8842be3d28da98707
prerequisite-patch-id: 5f664cb2fd995a53765c5ffc19a708ac795cc0c4
prerequisite-patch-id: ed447cba9cf9b7e1a1b47aa27acb14f8f2da0a8e
prerequisite-patch-id: 9f80c5bbbfb8cd3347951c4d57634e93ffa79924
prerequisite-patch-id: 1aaa9f0d466e2d6837f75844df48a98beb70ff24
prerequisite-patch-id: 34502820d8c0355b3ed2638c457084edeaba029d
prerequisite-patch-id: a96258da9e78cfb9ac9893cdcdeb38b69b75f134
prerequisite-patch-id: 4a2da4ee89dbbdb2244845149ce6da967ddd5268
prerequisite-patch-id: 9f9c4205781d1f0e2bb7af2d21875de08ee3ecd5
prerequisite-patch-id: 9697db9b50cab8f7974c32383e0a9a786ecbd8f9
prerequisite-patch-id: ebbd089a3313232347273c723d3deb1bf8c9bf81
prerequisite-patch-id: e93360d66936b9efd70a6ffd41f6ecda177ad7b8
prerequisite-patch-id: 19d76f45db1c59bd9ccd2e4e1125ffd698e9d6ce
prerequisite-patch-id: 929b39ded7ad095e9f768f7d484bbd3b7a486a3c
prerequisite-patch-id: 5e1262f77d55c91eadca113223faa84935bffd60
prerequisite-patch-id: bc9dc59d8dcf640755419ddf84e3f9da106dea81
prerequisite-patch-id: ad370d41983418fa704215aa3458f97c75d5d128
prerequisite-patch-id: f179c922613390d249a365625c2ee545a908029d
prerequisite-patch-id: 03b0aaa382ddda0819ddb62479cd1885c930ddea
prerequisite-patch-id: 83b8b3a072520705dcba4b67712a29553bea1548
prerequisite-patch-id: 9308fa06526d9bacdbcdd347cc225f6f3f87811a
prerequisite-patch-id: a017243a1a4b406caed9cec048d194cdc33d1a25
prerequisite-patch-id: e8d5b2e787904b0dd1a650d7a0012b91a430cb03
prerequisite-patch-id: 1cc872245864ace22db43cf2d268a87190b333b6
prerequisite-patch-id: c277dcca77f3acde51bdffe932b9250e454086ad
prerequisite-patch-id: ea926073e68d5af7f6c76a6333520cc5f42c9789
prerequisite-patch-id: 10008b9b34ccc8f87f2fcd8391075fe57244ac72
prerequisite-patch-id: 443d7e3eb85f36848c2120979f9f1d3a78f8bf38
prerequisite-patch-id: 6414c2d65c1806942d7f834e9300a8ecf8fd743f
prerequisite-patch-id: 8c6dec06b716c39ca7fada0f2872078612917779
prerequisite-patch-id: 62e28252e9b7ab11edb03609b68369feb499f883
prerequisite-patch-id: 84c9361c4c6d7662cfb3235cc4a6640a53e00622
prerequisite-patch-id: 0f27045bc50089a9a88da7818448a50cd28dd295
prerequisite-patch-id: 500413da3a81e75c5fbca62a21d9457d7b1ad8a8
prerequisite-patch-id: 6f48169f4d69da277bcdecb8f40d2f608941d9f9
prerequisite-patch-id: fc8b43573cc6b90033769de63ca235b16159190d
prerequisite-patch-id: ae749fc3fa0ab1768841ffb4633847b5b2233881
prerequisite-patch-id: 46b8490d2b338229a2f3c5e39427275cf46982ba
prerequisite-patch-id: b1bb7dfb35069a2b30f5b2714bc19a249be3e1b5
prerequisite-patch-id: 94848222eb08beb53530ba6ce626e9d8bcffecd4
prerequisite-patch-id: f8181365677e68d8628013c7636e9ff56214ac9e
prerequisite-patch-id: aebc0f8156c409599cc7aced4b708bb5ea08a2b2
prerequisite-patch-id: 4ce416249f6d3176a51d7e4cbbd2c6bf2982bab6
prerequisite-patch-id: 5e14463dcc090e497bb1d29c1b4c822b43d5fdca
prerequisite-patch-id: 89306b41386cb29db7c147e8c4468a3b4d8d292d
prerequisite-patch-id: 29e414b1ede9108047ff224e1e24a3adb2c44c52
prerequisite-patch-id: 7e15edfd04cd291f54284d13dcdbebcfb456b752
prerequisite-patch-id: b8c18091929e58b49847ab510d3d75a8a934cad0
prerequisite-patch-id: 7a607a1659b22afb0c21dec3d8eb1e2ed51e47a9
prerequisite-patch-id: 89fbd04f11e5bef5703ba7ea4c2064d5ba63c4d4
prerequisite-patch-id: b421048677352ea536dd93a61d6de987fb95d60b
prerequisite-patch-id: 25a03298bdfd6a691bb8cf68690009f8e46447e0
prerequisite-patch-id: 3924163576eafdac47ac06de311ac317730e6631
prerequisite-patch-id: 69b1d81677b507242f556c3e2fcf5290aeca445c
prerequisite-patch-id: a378fa79002001da51ae91eb026769eddb8a593b
prerequisite-patch-id: 86bb35c89ec3cc1b6ec47f238c84a154d5e9a1aa
prerequisite-patch-id: f8d0709d94ed99b1530bad1908ca27b1b56ea84e
prerequisite-patch-id: dcb65983aa914b8f1d1a8fbdfba34714ddb7f6fa
prerequisite-patch-id: 89752146a063d0706885819e244b4179196538b8
prerequisite-patch-id: 1f9e7627d0b23302159cdab3d939fcec52f7ca70
prerequisite-patch-id: f706bfa95ba0e5e72c206537ed207feb95daa888
prerequisite-patch-id: 9b60c519b0df65eeacd5779808e0d75b011ebf7f
prerequisite-patch-id: cd6cd74eca502ebce581c223cd0d2ac4278912e8
prerequisite-patch-id: b86e08404ef83877dfa3b76a80a12b02c61b1326
prerequisite-patch-id: 9417f8d92995cf417bb3c4afa0786b05a756d48a
prerequisite-patch-id: 59dda13243375b013396981a4f9e17abd694d734
prerequisite-patch-id: 89be058d0605cb8278d5d3384bb44911b188dd90
prerequisite-patch-id: 70c26fde2fde34c031a95ef74a3321710dc4961e
prerequisite-patch-id: 38a27cdf8cbe03fdf5f9bafa5ba53f3ba644a5ad
prerequisite-patch-id: 40a6d2e51dff2531c40a38087a8aea1be7108792
prerequisite-patch-id: 024d1bba9bcd449d2b8196b2f1a64a197cafaed8
prerequisite-patch-id: e83d54aa767ebab267530fca74d60366160a5253
prerequisite-patch-id: c34734661161c27224316dc519609db5c6d87a1e
prerequisite-patch-id: a58d739146fe46f6c7f203e5d2e0f114bd3f7834
prerequisite-patch-id: 1ff8499f5ec69b737d77053e6809ec3a0b599ebc
prerequisite-patch-id: 498e5608bca9b5ebcb3592a556e75f5dcc2b7076
prerequisite-patch-id: df6dfdea7c3d9db4649d857ce55fbeb99d4febca
prerequisite-patch-id: 453b66b1faaaebaa1666954185de327298aa0578
prerequisite-patch-id: f98da1de781c203a53cae73c5bb707240d21cb0a
prerequisite-patch-id: 14b1718dbc4fb9cd94e1094a4d44ebfcfe6ad869
prerequisite-patch-id: 3b68944fa8fb2fab0c21d6ff73f649f53dd6f551
prerequisite-patch-id: 82d1e6bcd221f982b6ab1ed0e9a90d46a39562c4
prerequisite-patch-id: c9cce20b146f955b715d15c0c384c9acc6176493
prerequisite-patch-id: c204491c1db4f5056711768265f101e881e4e415
prerequisite-patch-id: e66e13fbde027e99552fc6d80ff8d48c110a18f2
prerequisite-patch-id: 3c313f0a20730c653c8f5ec4f318e2485a8ef60f
prerequisite-patch-id: 925c466172c01c4b5976ac019961cbe240f0cddd
prerequisite-patch-id: e81e0aded80adf18c861f67624a179a15ef68906
prerequisite-patch-id: 001675f7da57d25731c7c71f6f2dcaa7409e5664
prerequisite-patch-id: d65bf6ef5f51da0acba72d332d60167b34e193e1
prerequisite-patch-id: fc7c9a5024037363319b58520480a6c4a8a5dcff
prerequisite-patch-id: 5aae8c77d028459d944021f4943558411deb0662
prerequisite-patch-id: 71fa80813ad36528e8a737249424d90827933c16
prerequisite-patch-id: 65dc75b8e1ddb45542480a8867ecd7a63ab3112e
prerequisite-patch-id: 8619aa1dec17409d9b5ecb6ed0a2cc7d1563c174
prerequisite-patch-id: 6473142746dc5b448ec9698d577f47b4da6cd1d5
prerequisite-patch-id: eb6689695d5d1b6c650de0c86a805a45b80ab88d
prerequisite-patch-id: 7d50679dad38c9f859ec231da2db78919818b40e
prerequisite-patch-id: faeb97c5f9c07754bd0bf0be59254091470978c2
prerequisite-patch-id: 56e31c3ab9ed9ff19aca25d5ffb9655c6515b692
prerequisite-patch-id: 8d7418e017eec3c6e56b55f9ff6181cc3dcc1a17
prerequisite-patch-id: 84f58e5a274c980ae6905e764d479e1c960149ca
prerequisite-patch-id: ada6a2d9427bff9dd7fd115a91300a1f7379995c
prerequisite-patch-id: 108161d5500b39b3ac55d202b5b9af817d829724
prerequisite-patch-id: c89b0fc7dadc53facc45ccf9991503430b7e7799
prerequisite-patch-id: d62e2be8f9fd6a1d9ac8dfa2cdc4db6d4a4327ac
prerequisite-patch-id: f8f4375b2b16ffae596d416607c00b374f485299
prerequisite-patch-id: 36b1a9c3e0e9f91b7172e1211231759a6cb81473
prerequisite-patch-id: 8cb6ac6a5188c817bb3a6a86920001de75bb7225
prerequisite-patch-id: 17ef87336a8c664e0109a7466c9f7d37f5901167
prerequisite-patch-id: a2c72266baec1b3eb5706d43157d93ae8db5e42d
prerequisite-patch-id: 27503579f8bdfadb95847b8dd5bf3732f5149cfb
prerequisite-patch-id: 50d6d9c6ff0734705ae384ede694b547f4973249
prerequisite-patch-id: 81cd72752ab376d459dceff93f71715e55a55846
prerequisite-patch-id: 922cec7ef3d21275f5933968f5b704e0bed64ce5
prerequisite-patch-id: 1f0903e8846cd59d0d5a3dcbf9a5a82ad4dcb5cd
prerequisite-patch-id: 69d839b9d5b794ef1b7dee9c592ed20300f8539f
prerequisite-patch-id: f2d6fb78af6e9cd0b6306fa0a1015026a2004e17
prerequisite-patch-id: 11294c3e5b0be79275a865775f62bf2140d134ba
prerequisite-patch-id: 3655fedb2a5f3bc57d4dddc3aa3301034f344dc3
prerequisite-patch-id: ab29823ecd13412b2761d2b330407ebc491aa247
prerequisite-patch-id: 8677dffcbc60d6d2a17a43f70781b4c18c86f89a
prerequisite-patch-id: 68ffb5d3fc0efcdb31e7ab76c042f04c5f9d2680
prerequisite-patch-id: 0dbd26e3f92dba06efcccbad01004f2ca4285bb8
prerequisite-patch-id: e7ac14d7f9af87536c2847db704d43e4e52987c0
prerequisite-patch-id: aeaf4c3f1428b430df56a0d7616c3b97634c6226
prerequisite-patch-id: 03c19681fbd002de23158c0caef0fc0b739de910
prerequisite-patch-id: e635ec4b8770641b17647157bc82931aeda5e507
prerequisite-patch-id: 5d9b6f06c91edb14d8c3b0dedcb7c2f9c99d6cf3
prerequisite-patch-id: 162b14a89a36bc5c182e6864ad42ccc2e9def702
prerequisite-patch-id: 37780eb0f2e03efdcc7c015c71995f535f176e70
prerequisite-patch-id: 3f2a5b60196a54119e0c479d5691d9e77331c45f
prerequisite-patch-id: fd97c209391ec87db59738b3005c5e82ecf5271d
prerequisite-patch-id: 52e992a85424307ab8e4db7e6d4bd977d5d09583
prerequisite-patch-id: 66065c1a49e7870b94cca1bfea4fdd2547ddf8e0
prerequisite-patch-id: f2bcea6969d3cc31bd38362afbae5cc75c42e0f6
prerequisite-patch-id: 8312f73895645c0d9ce42ae6c5e49f9d032fea0b
prerequisite-patch-id: b716bbc23240568060d7dee4205cf57f5e44d056
prerequisite-patch-id: 8876cf6108f053574f3e36faebb3cbc24d5e6ae0
--
2.41.0
N
N
Nicolas Graves wrote on 1 Oct 2023 22:06
[PATCH v2 2/2] gnu: emacs-next-minimal: Add patch emacs-native-comp-driver-options.
(address . 66225@debbugs.gnu.org)(name . Nicolas Graves)(address . ngraves@ngraves.fr)
cfea5134af0c5178ccedd4330dd7bdd95d59b7cd.1696190809.git.ngraves@ngraves.fr
* gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches): Add patch emacs-native-comp-driver-options.
* gnu/local.mk: Add patch emacs-native-comp-driver-options.
* gnu/packages/patches/emacs-native-comp-driver-options.patch: Add file.
---
gnu/local.mk | 1 +
gnu/packages/emacs.scm | 4 +++-
.../emacs-native-comp-driver-options.patch | 18 ++++++++++++++++++
3 files changed, 22 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/emacs-native-comp-driver-options.patch

Toggle diff (53 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index ef7888f5b5..956f846928 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1109,6 +1109,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
%D%/packages/patches/emacs-29-native-comp-driver-options.patch \
+ %D%/packages/patches/emacs-native-comp-driver-options.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
%D%/packages/patches/emacs-telega-path-placeholder.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 54581d968d..cd01285a83 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -498,7 +498,9 @@ (define-public emacs-next-minimal
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9")))))))
+ (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9"))
+ (patches
+ (search-patches "emacs-native-comp-driver-options.patch")))))))
(define* (emacs->emacs-next emacs #:optional name
#:key (version (package-version emacs-next-minimal))
diff --git a/gnu/packages/patches/emacs-native-comp-driver-options.patch b/gnu/packages/patches/emacs-native-comp-driver-options.patch
new file mode 100644
index 0000000000..e4ed5a48f1
--- /dev/null
+++ b/gnu/packages/patches/emacs-native-comp-driver-options.patch
@@ -0,0 +1,18 @@
+We substitute this anyway, so let's make it easier to substitute.
+
+--- a/lisp/emacs-lisp/comp.el
++++ b/lisp/emacs-lisp/comp.el
+@@ -203,9 +203,7 @@ and above."
+ :type '(repeat string)
+ :version "28.1")
+
+-(defcustom native-comp-driver-options
+- (cond ((eq system-type 'darwin) '("-Wl,-w"))
+- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
++(defcustom native-comp-driver-options nil
+ "Options passed verbatim to the native compiler's back-end driver.
+ Note that not all options are meaningful; typically only the options
+ affecting the assembler and linker are likely to be useful.
+--
+2.38.0
+
--
2.41.0
N
N
Nicolas Graves wrote on 1 Oct 2023 22:06
[PATCH v2 1/2] patch: emacs-native-comp-driver-options: Rename patch.
(address . 66225@debbugs.gnu.org)(name . Nicolas Graves)(address . ngraves@ngraves.fr)
d482aba9918423811fb29db4db86b4c074407119.1696190809.git.ngraves@ngraves.fr
* gnu/packages/patches/emacs-native-comp-driver-options.patch: Move from here…
* gnu/packages/patches/emacs-29-native-comp-driver-options.patch: to here…
* gnu/packages/emacs.scm (emacs-minimal)[origin](patches): Rename patch.
* gnu/local.mk: Rename patch.
---
gnu/local.mk | 2 +-
gnu/packages/emacs.scm | 2 +-
...-options.patch => emacs-29-native-comp-driver-options.patch} | 0
3 files changed, 2 insertions(+), 2 deletions(-)
rename gnu/packages/patches/{emacs-native-comp-driver-options.patch => emacs-29-native-comp-driver-options.patch} (100%)

Toggle diff (186 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 72e4fd1cc5..ef7888f5b5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1108,7 +1108,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-helpful-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
- %D%/packages/patches/emacs-native-comp-driver-options.patch \
+ %D%/packages/patches/emacs-29-native-comp-driver-options.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
%D%/packages/patches/emacs-telega-path-placeholder.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 72b2c7795e..54581d968d 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -109,7 +109,7 @@ (define-public emacs-minimal
"009f7q08vg919b90k2jrsznq73s3n224avz80dd2y7i3rjjq3y6j"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-native-comp-driver-options.patch"
+ "emacs-29-native-comp-driver-options.patch"
"emacs-pgtk-super-key-fix.patch"))
(modules '((guix build utils)))
(snippet
diff --git a/gnu/packages/patches/emacs-native-comp-driver-options.patch b/gnu/packages/patches/emacs-29-native-comp-driver-options.patch
similarity index 100%
rename from gnu/packages/patches/emacs-native-comp-driver-options.patch
rename to gnu/packages/patches/emacs-29-native-comp-driver-options.patch

base-commit: 8027ee43373638e0773fec3532c1a13d3da95b6a
prerequisite-patch-id: eb618ab7b10483d917c308a38792af98baa517e2
prerequisite-patch-id: c12968d02d99c253f858586a86b16fa32d41f1c1
prerequisite-patch-id: 09d995d48139f8e61183d5634cda13a01cdb50f7
prerequisite-patch-id: 86baa45ec2aad977c8c8135f7613aa391155de6d
prerequisite-patch-id: 3425fbbff6a603d60b4e143ea2141aabf4ddc92c
prerequisite-patch-id: c373c01aab5dcba3503a97d51c62a595147a041c
prerequisite-patch-id: 8e234d0f4d93d2aad499eec8842be3d28da98707
prerequisite-patch-id: 5f664cb2fd995a53765c5ffc19a708ac795cc0c4
prerequisite-patch-id: ed447cba9cf9b7e1a1b47aa27acb14f8f2da0a8e
prerequisite-patch-id: 9f80c5bbbfb8cd3347951c4d57634e93ffa79924
prerequisite-patch-id: 1aaa9f0d466e2d6837f75844df48a98beb70ff24
prerequisite-patch-id: 34502820d8c0355b3ed2638c457084edeaba029d
prerequisite-patch-id: a96258da9e78cfb9ac9893cdcdeb38b69b75f134
prerequisite-patch-id: 5ec00d550739652cba67dc8663fbde73ff268491
prerequisite-patch-id: d41dbe24ea20321f9d88f3cb875af42f88c53eed
prerequisite-patch-id: 9697db9b50cab8f7974c32383e0a9a786ecbd8f9
prerequisite-patch-id: ebbd089a3313232347273c723d3deb1bf8c9bf81
prerequisite-patch-id: e93360d66936b9efd70a6ffd41f6ecda177ad7b8
prerequisite-patch-id: 19d76f45db1c59bd9ccd2e4e1125ffd698e9d6ce
prerequisite-patch-id: 929b39ded7ad095e9f768f7d484bbd3b7a486a3c
prerequisite-patch-id: 5e1262f77d55c91eadca113223faa84935bffd60
prerequisite-patch-id: bc9dc59d8dcf640755419ddf84e3f9da106dea81
prerequisite-patch-id: ad370d41983418fa704215aa3458f97c75d5d128
prerequisite-patch-id: f179c922613390d249a365625c2ee545a908029d
prerequisite-patch-id: 03b0aaa382ddda0819ddb62479cd1885c930ddea
prerequisite-patch-id: 83b8b3a072520705dcba4b67712a29553bea1548
prerequisite-patch-id: 9308fa06526d9bacdbcdd347cc225f6f3f87811a
prerequisite-patch-id: a017243a1a4b406caed9cec048d194cdc33d1a25
prerequisite-patch-id: e8d5b2e787904b0dd1a650d7a0012b91a430cb03
prerequisite-patch-id: 1cc872245864ace22db43cf2d268a87190b333b6
prerequisite-patch-id: c277dcca77f3acde51bdffe932b9250e454086ad
prerequisite-patch-id: ea926073e68d5af7f6c76a6333520cc5f42c9789
prerequisite-patch-id: 10008b9b34ccc8f87f2fcd8391075fe57244ac72
prerequisite-patch-id: 443d7e3eb85f36848c2120979f9f1d3a78f8bf38
prerequisite-patch-id: 6414c2d65c1806942d7f834e9300a8ecf8fd743f
prerequisite-patch-id: 8c6dec06b716c39ca7fada0f2872078612917779
prerequisite-patch-id: 62e28252e9b7ab11edb03609b68369feb499f883
prerequisite-patch-id: 84c9361c4c6d7662cfb3235cc4a6640a53e00622
prerequisite-patch-id: 0f27045bc50089a9a88da7818448a50cd28dd295
prerequisite-patch-id: 500413da3a81e75c5fbca62a21d9457d7b1ad8a8
prerequisite-patch-id: 6f48169f4d69da277bcdecb8f40d2f608941d9f9
prerequisite-patch-id: fc8b43573cc6b90033769de63ca235b16159190d
prerequisite-patch-id: ae749fc3fa0ab1768841ffb4633847b5b2233881
prerequisite-patch-id: 46b8490d2b338229a2f3c5e39427275cf46982ba
prerequisite-patch-id: b1bb7dfb35069a2b30f5b2714bc19a249be3e1b5
prerequisite-patch-id: 94848222eb08beb53530ba6ce626e9d8bcffecd4
prerequisite-patch-id: f8181365677e68d8628013c7636e9ff56214ac9e
prerequisite-patch-id: aebc0f8156c409599cc7aced4b708bb5ea08a2b2
prerequisite-patch-id: 4ce416249f6d3176a51d7e4cbbd2c6bf2982bab6
prerequisite-patch-id: 5e14463dcc090e497bb1d29c1b4c822b43d5fdca
prerequisite-patch-id: 89306b41386cb29db7c147e8c4468a3b4d8d292d
prerequisite-patch-id: 29e414b1ede9108047ff224e1e24a3adb2c44c52
prerequisite-patch-id: 7e15edfd04cd291f54284d13dcdbebcfb456b752
prerequisite-patch-id: b8c18091929e58b49847ab510d3d75a8a934cad0
prerequisite-patch-id: 7a607a1659b22afb0c21dec3d8eb1e2ed51e47a9
prerequisite-patch-id: 89fbd04f11e5bef5703ba7ea4c2064d5ba63c4d4
prerequisite-patch-id: b421048677352ea536dd93a61d6de987fb95d60b
prerequisite-patch-id: 25a03298bdfd6a691bb8cf68690009f8e46447e0
prerequisite-patch-id: 3924163576eafdac47ac06de311ac317730e6631
prerequisite-patch-id: 69b1d81677b507242f556c3e2fcf5290aeca445c
prerequisite-patch-id: a378fa79002001da51ae91eb026769eddb8a593b
prerequisite-patch-id: 86bb35c89ec3cc1b6ec47f238c84a154d5e9a1aa
prerequisite-patch-id: f8d0709d94ed99b1530bad1908ca27b1b56ea84e
prerequisite-patch-id: dcb65983aa914b8f1d1a8fbdfba34714ddb7f6fa
prerequisite-patch-id: 89752146a063d0706885819e244b4179196538b8
prerequisite-patch-id: 1f9e7627d0b23302159cdab3d939fcec52f7ca70
prerequisite-patch-id: f706bfa95ba0e5e72c206537ed207feb95daa888
prerequisite-patch-id: 9b60c519b0df65eeacd5779808e0d75b011ebf7f
prerequisite-patch-id: cd6cd74eca502ebce581c223cd0d2ac4278912e8
prerequisite-patch-id: b86e08404ef83877dfa3b76a80a12b02c61b1326
prerequisite-patch-id: 9417f8d92995cf417bb3c4afa0786b05a756d48a
prerequisite-patch-id: 59dda13243375b013396981a4f9e17abd694d734
prerequisite-patch-id: 89be058d0605cb8278d5d3384bb44911b188dd90
prerequisite-patch-id: 70c26fde2fde34c031a95ef74a3321710dc4961e
prerequisite-patch-id: 38a27cdf8cbe03fdf5f9bafa5ba53f3ba644a5ad
prerequisite-patch-id: 40a6d2e51dff2531c40a38087a8aea1be7108792
prerequisite-patch-id: 024d1bba9bcd449d2b8196b2f1a64a197cafaed8
prerequisite-patch-id: e83d54aa767ebab267530fca74d60366160a5253
prerequisite-patch-id: c34734661161c27224316dc519609db5c6d87a1e
prerequisite-patch-id: a58d739146fe46f6c7f203e5d2e0f114bd3f7834
prerequisite-patch-id: 1ff8499f5ec69b737d77053e6809ec3a0b599ebc
prerequisite-patch-id: 498e5608bca9b5ebcb3592a556e75f5dcc2b7076
prerequisite-patch-id: df6dfdea7c3d9db4649d857ce55fbeb99d4febca
prerequisite-patch-id: 453b66b1faaaebaa1666954185de327298aa0578
prerequisite-patch-id: f98da1de781c203a53cae73c5bb707240d21cb0a
prerequisite-patch-id: 14b1718dbc4fb9cd94e1094a4d44ebfcfe6ad869
prerequisite-patch-id: 3b68944fa8fb2fab0c21d6ff73f649f53dd6f551
prerequisite-patch-id: 82d1e6bcd221f982b6ab1ed0e9a90d46a39562c4
prerequisite-patch-id: c9cce20b146f955b715d15c0c384c9acc6176493
prerequisite-patch-id: c204491c1db4f5056711768265f101e881e4e415
prerequisite-patch-id: e66e13fbde027e99552fc6d80ff8d48c110a18f2
prerequisite-patch-id: 3c313f0a20730c653c8f5ec4f318e2485a8ef60f
prerequisite-patch-id: 925c466172c01c4b5976ac019961cbe240f0cddd
prerequisite-patch-id: e81e0aded80adf18c861f67624a179a15ef68906
prerequisite-patch-id: 001675f7da57d25731c7c71f6f2dcaa7409e5664
prerequisite-patch-id: d65bf6ef5f51da0acba72d332d60167b34e193e1
prerequisite-patch-id: fc7c9a5024037363319b58520480a6c4a8a5dcff
prerequisite-patch-id: 5aae8c77d028459d944021f4943558411deb0662
prerequisite-patch-id: 71fa80813ad36528e8a737249424d90827933c16
prerequisite-patch-id: 65dc75b8e1ddb45542480a8867ecd7a63ab3112e
prerequisite-patch-id: 8619aa1dec17409d9b5ecb6ed0a2cc7d1563c174
prerequisite-patch-id: 6473142746dc5b448ec9698d577f47b4da6cd1d5
prerequisite-patch-id: eb6689695d5d1b6c650de0c86a805a45b80ab88d
prerequisite-patch-id: 7d50679dad38c9f859ec231da2db78919818b40e
prerequisite-patch-id: faeb97c5f9c07754bd0bf0be59254091470978c2
prerequisite-patch-id: 56e31c3ab9ed9ff19aca25d5ffb9655c6515b692
prerequisite-patch-id: 8d7418e017eec3c6e56b55f9ff6181cc3dcc1a17
prerequisite-patch-id: 84f58e5a274c980ae6905e764d479e1c960149ca
prerequisite-patch-id: ada6a2d9427bff9dd7fd115a91300a1f7379995c
prerequisite-patch-id: 108161d5500b39b3ac55d202b5b9af817d829724
prerequisite-patch-id: c89b0fc7dadc53facc45ccf9991503430b7e7799
prerequisite-patch-id: d62e2be8f9fd6a1d9ac8dfa2cdc4db6d4a4327ac
prerequisite-patch-id: f8f4375b2b16ffae596d416607c00b374f485299
prerequisite-patch-id: 36b1a9c3e0e9f91b7172e1211231759a6cb81473
prerequisite-patch-id: 8cb6ac6a5188c817bb3a6a86920001de75bb7225
prerequisite-patch-id: 17ef87336a8c664e0109a7466c9f7d37f5901167
prerequisite-patch-id: a2c72266baec1b3eb5706d43157d93ae8db5e42d
prerequisite-patch-id: 27503579f8bdfadb95847b8dd5bf3732f5149cfb
prerequisite-patch-id: 50d6d9c6ff0734705ae384ede694b547f4973249
prerequisite-patch-id: 81cd72752ab376d459dceff93f71715e55a55846
prerequisite-patch-id: 922cec7ef3d21275f5933968f5b704e0bed64ce5
prerequisite-patch-id: 1f0903e8846cd59d0d5a3dcbf9a5a82ad4dcb5cd
prerequisite-patch-id: 69d839b9d5b794ef1b7dee9c592ed20300f8539f
prerequisite-patch-id: f2d6fb78af6e9cd0b6306fa0a1015026a2004e17
prerequisite-patch-id: 11294c3e5b0be79275a865775f62bf2140d134ba
prerequisite-patch-id: 3655fedb2a5f3bc57d4dddc3aa3301034f344dc3
prerequisite-patch-id: ab29823ecd13412b2761d2b330407ebc491aa247
prerequisite-patch-id: 8677dffcbc60d6d2a17a43f70781b4c18c86f89a
prerequisite-patch-id: 68ffb5d3fc0efcdb31e7ab76c042f04c5f9d2680
prerequisite-patch-id: 0dbd26e3f92dba06efcccbad01004f2ca4285bb8
prerequisite-patch-id: e7ac14d7f9af87536c2847db704d43e4e52987c0
prerequisite-patch-id: aeaf4c3f1428b430df56a0d7616c3b97634c6226
prerequisite-patch-id: 03c19681fbd002de23158c0caef0fc0b739de910
prerequisite-patch-id: e635ec4b8770641b17647157bc82931aeda5e507
prerequisite-patch-id: 5d9b6f06c91edb14d8c3b0dedcb7c2f9c99d6cf3
prerequisite-patch-id: 162b14a89a36bc5c182e6864ad42ccc2e9def702
prerequisite-patch-id: 37780eb0f2e03efdcc7c015c71995f535f176e70
prerequisite-patch-id: 3f2a5b60196a54119e0c479d5691d9e77331c45f
prerequisite-patch-id: fd97c209391ec87db59738b3005c5e82ecf5271d
prerequisite-patch-id: 52e992a85424307ab8e4db7e6d4bd977d5d09583
prerequisite-patch-id: 66065c1a49e7870b94cca1bfea4fdd2547ddf8e0
prerequisite-patch-id: f2bcea6969d3cc31bd38362afbae5cc75c42e0f6
prerequisite-patch-id: 8312f73895645c0d9ce42ae6c5e49f9d032fea0b
prerequisite-patch-id: b716bbc23240568060d7dee4205cf57f5e44d056
prerequisite-patch-id: 8876cf6108f053574f3e36faebb3cbc24d5e6ae0
prerequisite-patch-id: 8e03ec0a97b8552a58c6a5188148be28fbfc8549
prerequisite-patch-id: b287559d59b9f1023b7e9b0f91ec40e0013b58cd
prerequisite-patch-id: 3b614c2eafb65d5f1ea500c30413f085dbe47424
prerequisite-patch-id: 264815414fc249a8617aa92178c098c75b8bd305
prerequisite-patch-id: 2a4154d189b9c97f59eba870f89ba2af5ea68d55
prerequisite-patch-id: 71b90d2feecaedb0cd109407e63fa454a71a6d11
prerequisite-patch-id: ff5bfa0acad3a165de612b50667269d3f36bc05e
--
2.41.0
L
L
Liliana Marie Prikler wrote on 2 Oct 2023 19:06
Re: [bug#66225] [PATCH v2 2/2] gnu: emacs-next-minimal: Add patch emacs-native-comp-driver-options.
53f9f0cfabdc31c7b9fb918bd9eb620aab7d3e54.camel@gmail.com
Am Sonntag, dem 01.10.2023 um 22:06 +0200 schrieb Nicolas Graves:
Toggle quote (6 lines)
> * gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches): Add
> patch emacs-native-comp-driver-options.
> * gnu/local.mk: Add patch emacs-native-comp-driver-options.
> * gnu/packages/patches/emacs-native-comp-driver-options.patch: Add
> file.
> ---
Perhaps we should name this file emacs-next-native-comp-driver-options?
;) Then we can do this with a 1/1 series.

Toggle quote (69 lines)
>  gnu/local.mk                                   |  1 +
>  gnu/packages/emacs.scm                         |  4 +++-
>  .../emacs-native-comp-driver-options.patch     | 18
> ++++++++++++++++++
>  3 files changed, 22 insertions(+), 1 deletion(-)
>  create mode 100644 gnu/packages/patches/emacs-native-comp-driver-
> options.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index ef7888f5b5..956f846928 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1109,6 +1109,7 @@ dist_patch_DATA
> =                                         \
>    %D%/packages/patches/emacs-highlight-stages-add-gexp.patch   \
>    %D%/packages/patches/emacs-lispy-fix-thread-last-test.patch   \
>    %D%/packages/patches/emacs-29-native-comp-driver-options.patch   \
> +  %D%/packages/patches/emacs-native-comp-driver-options.patch   \
>    %D%/packages/patches/emacs-pasp-mode-quote-file-names.patch  \
>    %D%/packages/patches/emacs-polymode-fix-lexical-variable-
> error.patch  \
>    %D%/packages/patches/emacs-telega-path-placeholder.patch     \
> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
> index 54581d968d..cd01285a83 100644
> --- a/gnu/packages/emacs.scm
> +++ b/gnu/packages/emacs.scm
> @@ -498,7 +498,9 @@ (define-public emacs-next-minimal
>               (commit commit)))
>         (file-name (git-file-name name version))
>         (sha256
> -        (base32
> "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9")))))))
> +        (base32
> "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9"))
> +       (patches
> +        (search-patches "emacs-native-comp-driver-
> options.patch")))))))
>  
>  (define* (emacs->emacs-next emacs #:optional name
>                              #:key (version (package-version emacs-
> next-minimal))
> diff --git a/gnu/packages/patches/emacs-native-comp-driver-
> options.patch b/gnu/packages/patches/emacs-native-comp-driver-
> options.patch
> new file mode 100644
> index 0000000000..e4ed5a48f1
> --- /dev/null
> +++ b/gnu/packages/patches/emacs-native-comp-driver-options.patch
> @@ -0,0 +1,18 @@
> +We substitute this anyway, so let's make it easier to substitute.
> +
> +--- a/lisp/emacs-lisp/comp.el
> ++++ b/lisp/emacs-lisp/comp.el
> +@@ -203,9 +203,7 @@ and above."
> +   :type '(repeat string)
> +   :version "28.1")
> +
> +-(defcustom native-comp-driver-options
> +-  (cond ((eq system-type 'darwin) '("-Wl,-w"))
> +-        ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
> ++(defcustom native-comp-driver-options nil
> +   "Options passed verbatim to the native compiler's back-end
> driver.
> + Note that not all options are meaningful; typically only the
> options
> + affecting the assembler and linker are likely to be useful.
> +--
> +2.38.0
> +
Otherwise LGTM.

Cheers
N
N
Nicolas Graves wrote on 2 Oct 2023 21:30
87r0mcvn3y.fsf@ngraves.fr
On 2023-10-02 19:06, Liliana Marie Prikler wrote:

Toggle quote (10 lines)
> Am Sonntag, dem 01.10.2023 um 22:06 +0200 schrieb Nicolas Graves:
>> * gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches): Add
>> patch emacs-native-comp-driver-options.
>> * gnu/local.mk: Add patch emacs-native-comp-driver-options.
>> * gnu/packages/patches/emacs-native-comp-driver-options.patch: Add
>> file.
>> ---
> Perhaps we should name this file emacs-next-native-comp-driver-options?
> ;) Then we can do this with a 1/1 series.
>
I named/renamed it like this because current emacs-next is future
straight emacs, thus when migrating, we can delete the -29 patch and
leave this one like this. But I don't really care, feel free to edit the
patches according to your preferences!

Toggle quote (4 lines)
> Otherwise LGTM.
>
> Cheers

--
Best regards,
Nicolas Graves
L
L
Liliana Marie Prikler wrote on 6 Oct 2023 17:58
[PATCH v3] gnu: emacs-next-minimal: Apply Guix patches.
(address . 66225@debbugs.gnu.org)
f1b08fdebcfbb9b7dc513118a1994148ac38042e.1696608253.git.liliana.prikler@gmail.com
* gnu/packages/patches/emacs-next-native-comp-driver-options.patch: Add file.
* gnu/packages/patches/emacs-next-exec-path.patch: Add file.
* gnu/local.mk (dist_patch_DATA): Register them here.
* gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches): Include the
same patches as emacs-minimal, save for the variants specific to emacs-next
introduced above.

Co-Authored-By: Nicolas Graves <ngraves@ngraves.fr>
Fixes: ‘emacs-next’ is almost unusable https://bugs.gnu.org/66227
---
Hi Guix,

this bug was independently discovered in two locations, so I wanted to
inform both. A fix has already been proposed, but is not yet complete.
Here's to finally cover everything we need to have an Emacs as expected
by Guix.

Feel free to bikeshed.

Happy hacking

gnu/local.mk | 2 ++
gnu/packages/emacs.scm | 7 ++++++-
.../patches/emacs-next-exec-path.patch | 18 ++++++++++++++++++
...emacs-next-native-comp-driver-options.patch | 18 ++++++++++++++++++
4 files changed, 44 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/emacs-next-exec-path.patch
create mode 100644 gnu/packages/patches/emacs-next-native-comp-driver-options.patch

Toggle diff (83 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 65d50abc71..43a528e937 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1110,6 +1110,8 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
%D%/packages/patches/emacs-native-comp-driver-options.patch \
+ %D%/packages/patches/emacs-next-exec-path.patch \
+ %D%/packages/patches/emacs-next-native-comp-driver-options.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
%D%/packages/patches/emacs-telega-path-placeholder.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 72b2c7795e..b9d9e2b891 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -498,7 +498,12 @@ (define-public emacs-next-minimal
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9")))))))
+ (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9"))
+ (patches
+ (search-patches "emacs-next-exec-path.patch"
+ "emacs-fix-scheme-indent-function.patch"
+ "emacs-next-native-comp-driver-options.patch"
+ "emacs-pgtk-super-key-fix.patch")))))))
(define* (emacs->emacs-next emacs #:optional name
#:key (version (package-version emacs-next-minimal))
diff --git a/gnu/packages/patches/emacs-next-exec-path.patch b/gnu/packages/patches/emacs-next-exec-path.patch
new file mode 100644
index 0000000000..6e33e25258
--- /dev/null
+++ b/gnu/packages/patches/emacs-next-exec-path.patch
@@ -0,0 +1,18 @@
+Do not capture the build-time value of $PATH in the 'emacs' executable
+since this can noticeably increase the size of the closure of Emacs
+with things like GCC being referenced.
+
+Index: emacs-next/lisp/loadup.el
+===================================================================
+--- emacs-next.orig/lisp/loadup.el
++++ emacs-next/lisp/loadup.el
+@@ -599,7 +599,8 @@ lost after dumping")))
+ ((equal dump-mode "dump") "emacs")
+ ((equal dump-mode "bootstrap") "emacs")
+ ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
+- (t (error "Unrecognized dump mode %s" dump-mode)))))
++ (t (error "Unrecognized dump mode %s" dump-mode))))
++ (exec-path nil))
+ (when (and (featurep 'native-compile)
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
diff --git a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
new file mode 100644
index 0000000000..e4ed5a48f1
--- /dev/null
+++ b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
@@ -0,0 +1,18 @@
+We substitute this anyway, so let's make it easier to substitute.
+
+--- a/lisp/emacs-lisp/comp.el
++++ b/lisp/emacs-lisp/comp.el
+@@ -203,9 +203,7 @@ and above."
+ :type '(repeat string)
+ :version "28.1")
+
+-(defcustom native-comp-driver-options
+- (cond ((eq system-type 'darwin) '("-Wl,-w"))
+- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
++(defcustom native-comp-driver-options nil
+ "Options passed verbatim to the native compiler's back-end driver.
+ Note that not all options are meaningful; typically only the options
+ affecting the assembler and linker are likely to be useful.
+--
+2.38.0
+

base-commit: e863274e67e2242b970845783172c9f4e49405ca
--
2.41.0
A
A
Andrew Tropin wrote on 7 Oct 2023 07:56
87r0m7ug9q.fsf@trop.in
On 2023-10-06 17:58, Liliana Marie Prikler wrote:

Toggle quote (111 lines)
> * gnu/packages/patches/emacs-next-native-comp-driver-options.patch: Add file.
> * gnu/packages/patches/emacs-next-exec-path.patch: Add file.
> * gnu/local.mk (dist_patch_DATA): Register them here.
> * gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches): Include the
> same patches as emacs-minimal, save for the variants specific to emacs-next
> introduced above.
>
> Co-Authored-By: Nicolas Graves <ngraves@ngraves.fr>
> Fixes: ‘emacs-next’ is almost unusable <https://bugs.gnu.org/66227>
> ---
> Hi Guix,
>
> this bug was independently discovered in two locations, so I wanted to
> inform both. A fix has already been proposed, but is not yet complete.
> Here's to finally cover everything we need to have an Emacs as expected
> by Guix.
>
> Feel free to bikeshed.
>
> Happy hacking
>
> gnu/local.mk | 2 ++
> gnu/packages/emacs.scm | 7 ++++++-
> .../patches/emacs-next-exec-path.patch | 18 ++++++++++++++++++
> ...emacs-next-native-comp-driver-options.patch | 18 ++++++++++++++++++
> 4 files changed, 44 insertions(+), 1 deletion(-)
> create mode 100644 gnu/packages/patches/emacs-next-exec-path.patch
> create mode 100644 gnu/packages/patches/emacs-next-native-comp-driver-options.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 65d50abc71..43a528e937 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1110,6 +1110,8 @@ dist_patch_DATA = \
> %D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
> %D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
> %D%/packages/patches/emacs-native-comp-driver-options.patch \
> + %D%/packages/patches/emacs-next-exec-path.patch \
> + %D%/packages/patches/emacs-next-native-comp-driver-options.patch \
> %D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
> %D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
> %D%/packages/patches/emacs-telega-path-placeholder.patch \
> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
> index 72b2c7795e..b9d9e2b891 100644
> --- a/gnu/packages/emacs.scm
> +++ b/gnu/packages/emacs.scm
> @@ -498,7 +498,12 @@ (define-public emacs-next-minimal
> (commit commit)))
> (file-name (git-file-name name version))
> (sha256
> - (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9")))))))
> + (base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9"))
> + (patches
> + (search-patches "emacs-next-exec-path.patch"
> + "emacs-fix-scheme-indent-function.patch"
> + "emacs-next-native-comp-driver-options.patch"
> + "emacs-pgtk-super-key-fix.patch")))))))
>
> (define* (emacs->emacs-next emacs #:optional name
> #:key (version (package-version emacs-next-minimal))
> diff --git a/gnu/packages/patches/emacs-next-exec-path.patch b/gnu/packages/patches/emacs-next-exec-path.patch
> new file mode 100644
> index 0000000000..6e33e25258
> --- /dev/null
> +++ b/gnu/packages/patches/emacs-next-exec-path.patch
> @@ -0,0 +1,18 @@
> +Do not capture the build-time value of $PATH in the 'emacs' executable
> +since this can noticeably increase the size of the closure of Emacs
> +with things like GCC being referenced.
> +
> +Index: emacs-next/lisp/loadup.el
> +===================================================================
> +--- emacs-next.orig/lisp/loadup.el
> ++++ emacs-next/lisp/loadup.el
> +@@ -599,7 +599,8 @@ lost after dumping")))
> + ((equal dump-mode "dump") "emacs")
> + ((equal dump-mode "bootstrap") "emacs")
> + ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
> +- (t (error "Unrecognized dump mode %s" dump-mode)))))
> ++ (t (error "Unrecognized dump mode %s" dump-mode))))
> ++ (exec-path nil))
> + (when (and (featurep 'native-compile)
> + (equal dump-mode "pdump"))
> + ;; Don't enable this before bootstrap is completed, as the
> diff --git a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
> new file mode 100644
> index 0000000000..e4ed5a48f1
> --- /dev/null
> +++ b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
> @@ -0,0 +1,18 @@
> +We substitute this anyway, so let's make it easier to substitute.
> +
> +--- a/lisp/emacs-lisp/comp.el
> ++++ b/lisp/emacs-lisp/comp.el
> +@@ -203,9 +203,7 @@ and above."
> + :type '(repeat string)
> + :version "28.1")
> +
> +-(defcustom native-comp-driver-options
> +- (cond ((eq system-type 'darwin) '("-Wl,-w"))
> +- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
> ++(defcustom native-comp-driver-options nil
> + "Options passed verbatim to the native compiler's back-end driver.
> + Note that not all options are meaningful; typically only the options
> + affecting the assembler and linker are likely to be useful.
> +--
> +2.38.0
> +
>
> base-commit: e863274e67e2242b970845783172c9f4e49405ca

Hi Liliana and Nicolas, the fixes looks good to me.

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmUg8yEACgkQIgjSCVjB
3rA2uRAAh258kOPjQsgHuK0WSxpuqH4scRPJ/dyY83xedblTGtMsxYaDETDfjavF
FduLIyu9HvSw+xMBAkfMcyEB8Q0mO4US2GkoN6I+k8zmESqo6Ur4NAYuoPwQU6oy
Gl8OUkaDczJxMQOUW130bcpNXPlh5YtzKJ+IPqXmXy09E8b8W5ntFO2hoiRwYGlC
oYOc1QgTrqg0rURP/qNTEejYPyukpY3+W9sfupMYuyVwxdT4p+zUUiH9vVZ6i+6s
+26XG7V37jF8EshMq5NE5J5L43Q1vyp2oGpK1JwTxuDKaGFRDphD5Lfpa0IOUqDS
MbcNfMpMWnprVsOmwmHg3QyQ94G4V2LkFU+2rJcxUF7aCHPREk4kITJ5pzYS3FlZ
f+GVwuF7oOe+odj+jgf/ri3RwAgvx8er9O3jnfcrReDLdczT9Ru+2nzy1Po+hWzs
lme+8uwrvrmHf7C+ESxfNPkMy9jmMj3rJ9/pAf1Z+scM+LzF+QWoVrgdBIz7RRxI
wZtAxfA4ncbeKFcybX/ED7vdRl/kOtFZOgLWx1d+GMmh3IoxNgaFDfE6Pie8k5DX
VNEWdwz2FgxZo1932A1902nGTYLrWGWdB4olqx6h8pvi9T8La5jMoZYvjk8SIS82
KiDQIVMMTVgiqtEzQkPgnHQYXUwfm+zSwxXZKWTHsNcPKQDRlKs=
=to+5
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 8 Oct 2023 08:55
54b44297e1c93fd461463f6893127fc8b75f01c3.camel@gmail.com
Am Samstag, dem 07.10.2023 um 09:56 +0400 schrieb Andrew Tropin:
Toggle quote (15 lines)
> On 2023-10-06 17:58, Liliana Marie Prikler wrote:
>
> > * gnu/packages/patches/emacs-next-native-comp-driver-options.patch:
> > Add file.
> > * gnu/packages/patches/emacs-next-exec-path.patch: Add file.
> > * gnu/local.mk (dist_patch_DATA): Register them here.
> > * gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches):
> > Include the same patches as emacs-minimal, save for the variants
> > specific to emacs-next introduced above.
> >
> > Co-Authored-By: Nicolas Graves <ngraves@ngraves.fr>
> > Fixes: ‘emacs-next’ is almost unusable <https://bugs.gnu.org/66227>
> > […]
>
> Hi Liliana and Nicolas, the fixes looks good to me.
Thanks for checking. I pushed it now (perhaps a bit too hasty, but
it's been a problem for some while).

Cheers
Closed
A
A
Andrew Tropin wrote on 8 Oct 2023 12:21
87jzrxv2hu.fsf@trop.in
On 2023-10-08 08:55, Liliana Marie Prikler wrote:

Toggle quote (19 lines)
> Am Samstag, dem 07.10.2023 um 09:56 +0400 schrieb Andrew Tropin:
>> On 2023-10-06 17:58, Liliana Marie Prikler wrote:
>>
>> > * gnu/packages/patches/emacs-next-native-comp-driver-options.patch:
>> > Add file.
>> > * gnu/packages/patches/emacs-next-exec-path.patch: Add file.
>> > * gnu/local.mk (dist_patch_DATA): Register them here.
>> > * gnu/packages/emacs.scm (emacs-next-minimal)[origin](patches):
>> > Include the same patches as emacs-minimal, save for the variants
>> > specific to emacs-next introduced above.
>> >
>> > Co-Authored-By: Nicolas Graves <ngraves@ngraves.fr>
>> > Fixes: ‘emacs-next’ is almost unusable <https://bugs.gnu.org/66227>
>> > […]
>>
>> Hi Liliana and Nicolas, the fixes looks good to me.
> Thanks for checking. I pushed it now (perhaps a bit too hasty, but
> it's been a problem for some while).

Cool! Thank you very much, appreciate your work!

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmUigp0ACgkQIgjSCVjB
3rAa6A/5AZYsq2jPSzzvMft2Hn0kqjDe7NtgIDPdThGEKgVQ9S8yIOY6fmLsjerj
RRCOu7wCZR+/SfHGtcZdnuvHgW+w9VTlS0EZIE9WKkGErmAiIK0nW9l4rZnpCHFV
ENfHU03oE2pm0ZqqdnQEPLWbwgXlEwq2t9wOz25nAoq8X/W3/W5CDxQJdUsPTfhB
etaFagCLFsZChaFY18oHEx7rKbLUnjv0KWnN5ZNH0jPXROK79yG48IOTZ7h50vxw
FU46rtCGLLesL/l058UDaX+ybqhzEvwaWMJLCpLoXAsBb3ypi+wk6YZOLG/ODVmz
2L1sDo2Nr+BJELmy1lzartY2oYB47TWKfS2Gqgj4PhOtvhUOgm1QEvr0wgL7sczh
i5/toGtM/pWtBFUPIQNp2lEgcQYyhrAJsGdxGEojEMbMeNGRIqM3Qrnbc67sqagu
e6UX+gK90grgI4rhfPyfTMaZVBKxPQjylsPv9mJ7ivJGll9CBUSUQ7RINu7GqPj+
NbXH9n3RbJge5vDdk94RuudXof1DSwWym3/sV0fekvGgT8mcDoPNxkA2KsZQh1SE
5yic+0PrvF1m3fr/+gcKu9XwKWPbeHt0fLNKbpS97i6ogadLm8n0mbXn9IVM99Ep
8RHIcFGxryEBwN0nRKrx4DTEW4Epv6eD5rI9qqoINQAwkmLVF7Q=
=KnW/
-----END PGP SIGNATURE-----

Closed
?