* [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
@ 2019-07-04 11:39 Kei Kebreau
2019-07-05 23:26 ` Marius Bakke
0 siblings, 1 reply; 6+ messages in thread
From: Kei Kebreau @ 2019-07-04 11:39 UTC (permalink / raw)
To: 36495; +Cc: Kei Kebreau
The patch for glibc 2.28 and earlier replaces the same content, but the context
in the patch is different enough to fail to merge.
* gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
* gnu/packages/patches/glibc-locales-2.29.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 1 +
gnu/packages/base.scm | 10 +++++-
gnu/packages/patches/glibc-locales-2.29.patch | 32 +++++++++++++++++++
3 files changed, 42 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/glibc-locales-2.29.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index bac1a92741..84c6190bd1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -867,6 +867,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-hurd-magic-pid.patch \
%D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \
+ %D%/packages/patches/glibc-locales-2.29.patch \
%D%/packages/patches/glibc-o-largefile.patch \
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index f26145cb0b..d6df023f26 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -999,7 +999,15 @@ with the Linux kernel.")
(inherit glibc)
(name "glibc-locales")
(source (origin (inherit (package-source glibc))
- (patches (cons (search-patch "glibc-locales.patch")
+ ;; The patch for glibc 2.28 and earlier replaces the same
+ ;; content, but the context in the patch is different
+ ;; enough to fail to merge.
+ (patches (cons (search-patch
+ (if (< 2.29
+ (string->number
+ (package-version glibc)))
+ "glibc-locales.patch"
+ "glibc-locales-2.29.patch"))
(origin-patches (package-source glibc))))))
(synopsis "All the locales supported by the GNU C Library")
(description
diff --git a/gnu/packages/patches/glibc-locales-2.29.patch b/gnu/packages/patches/glibc-locales-2.29.patch
new file mode 100644
index 0000000000..9329a09063
--- /dev/null
+++ b/gnu/packages/patches/glibc-locales-2.29.patch
@@ -0,0 +1,32 @@
+This patch allows us to use glibc's build system to build locales
+in a package separate from glibc.
+
+ 1. Use 'localedef' from $PATH since we are not rebuilding it.
+ 2. Use '--no-archive' to avoid building the big locale archive, and
+ because the already-built 'localedef' would want to write it
+ to '/run/current-system/locale', which is not possible.
+ 3. Pass $(inst_complocaledir)/$$locale to install files in the right
+ place, and because otherwise, 'localedef' fails with:
+ "cannot write output files to `(null)'".
+
+diff -ru glibc-2.29-old/localedata/Makefile glibc-2.29-new/localedata/Makefile
+--- glibc-2.29-old/localedata/Makefile 2019-01-31 11:45:36.000000000 -0500
++++ glibc-2.29-new/localedata/Makefile 2019-07-03 22:48:35.662015071 -0400
+@@ -385,7 +385,7 @@
+
+ # Sometimes the whole collection of locale files should be installed.
+ LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
+-$(rtld-prefix) $(common-objpfx)locale/localedef
++ localedef --no-archive
+ install-locales: install-locale-archive
+
+ # Create and install the locale-archive file.
+@@ -414,7 +414,7 @@
+ input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
+ $(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \
+ -i locales/$$input -f charmaps/$$charset \
+- $(addprefix --prefix=,$(install_root)) $$locale \
++ $(addprefix --prefix=,$(install_root)) $(inst_complocaledir)/$$locale \
+ && echo ' done';
+ endef
+
--
2.22.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
2019-07-04 11:39 [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29 Kei Kebreau
@ 2019-07-05 23:26 ` Marius Bakke
2019-07-07 4:37 ` Kei Kebreau
0 siblings, 1 reply; 6+ messages in thread
From: Marius Bakke @ 2019-07-05 23:26 UTC (permalink / raw)
To: Kei Kebreau, 36495
[-- Attachment #1: Type: text/plain, Size: 1685 bytes --]
Kei Kebreau <kkebreau@posteo.net> writes:
> The patch for glibc 2.28 and earlier replaces the same content, but the context
> in the patch is different enough to fail to merge.
Whoops, thanks for addressing this!
> * gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
> * gnu/packages/patches/glibc-locales-2.29.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
[...]
> diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
> index f26145cb0b..d6df023f26 100644
> --- a/gnu/packages/base.scm
> +++ b/gnu/packages/base.scm
> @@ -999,7 +999,15 @@ with the Linux kernel.")
> (inherit glibc)
> (name "glibc-locales")
> (source (origin (inherit (package-source glibc))
> - (patches (cons (search-patch "glibc-locales.patch")
> + ;; The patch for glibc 2.28 and earlier replaces the same
> + ;; content, but the context in the patch is different
> + ;; enough to fail to merge.
> + (patches (cons (search-patch
> + (if (< 2.29
> + (string->number
> + (package-version glibc)))
> + "glibc-locales.patch"
> + "glibc-locales-2.29.patch"))
Please use 'version>=?' here, as this will fail for e.g. glibc 2.3.
I have a slight preference for renaming the previous patch to
'glibc-locales-2.28.patch', so that 'glibc-locales.patch' refers to the
newest libc. Less surprises for the end user when trying newer
versions. :-)
Apart from that LGTM, thanks!
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
2019-07-05 23:26 ` Marius Bakke
@ 2019-07-07 4:37 ` Kei Kebreau
2019-07-08 16:56 ` Marius Bakke
0 siblings, 1 reply; 6+ messages in thread
From: Kei Kebreau @ 2019-07-07 4:37 UTC (permalink / raw)
To: Marius Bakke; +Cc: 36495
[-- Attachment #1: Type: text/plain, Size: 1987 bytes --]
Marius Bakke <mbakke@fastmail.com> writes:
> Kei Kebreau <kkebreau@posteo.net> writes:
>
>> The patch for glibc 2.28 and earlier replaces the same content, but the context
>> in the patch is different enough to fail to merge.
>
> Whoops, thanks for addressing this!
>
>> * gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
>> * gnu/packages/patches/glibc-locales-2.29.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Add it.
>
> [...]
>
>> diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
>> index f26145cb0b..d6df023f26 100644
>> --- a/gnu/packages/base.scm
>> +++ b/gnu/packages/base.scm
>> @@ -999,7 +999,15 @@ with the Linux kernel.")
>> (inherit glibc)
>> (name "glibc-locales")
>> (source (origin (inherit (package-source glibc))
>> - (patches (cons (search-patch "glibc-locales.patch")
>> + ;; The patch for glibc 2.28 and earlier replaces the same
>> + ;; content, but the context in the patch is different
>> + ;; enough to fail to merge.
>> + (patches (cons (search-patch
>> + (if (< 2.29
>> + (string->number
>> + (package-version glibc)))
>> + "glibc-locales.patch"
>> + "glibc-locales-2.29.patch"))
>
> Please use 'version>=?' here, as this will fail for e.g. glibc 2.3.
>
> I have a slight preference for renaming the previous patch to
> 'glibc-locales-2.28.patch', so that 'glibc-locales.patch' refers to the
> newest libc. Less surprises for the end user when trying newer
> versions. :-)
>
> Apart from that LGTM, thanks!
I just finished building my system with this patch and the almost-finished
GNOME updates, and lots of weird stuff goes on. I'll investigate and push
this patch when it works properly.
Thanks for the review!
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
2019-07-07 4:37 ` Kei Kebreau
@ 2019-07-08 16:56 ` Marius Bakke
2019-07-08 20:37 ` Kei Kebreau
2019-07-09 16:26 ` bug#36495: " Kei Kebreau
0 siblings, 2 replies; 6+ messages in thread
From: Marius Bakke @ 2019-07-08 16:56 UTC (permalink / raw)
To: Kei Kebreau; +Cc: 36495
[-- Attachment #1: Type: text/plain, Size: 2278 bytes --]
Kei Kebreau <kkebreau@posteo.net> writes:
> Marius Bakke <mbakke@fastmail.com> writes:
>
>> Kei Kebreau <kkebreau@posteo.net> writes:
>>
>>> The patch for glibc 2.28 and earlier replaces the same content, but the context
>>> in the patch is different enough to fail to merge.
>>
>> Whoops, thanks for addressing this!
>>
>>> * gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
>>> * gnu/packages/patches/glibc-locales-2.29.patch: New file.
>>> * gnu/local.mk (dist_patch_DATA): Add it.
>>
>> [...]
>>
>>> diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
>>> index f26145cb0b..d6df023f26 100644
>>> --- a/gnu/packages/base.scm
>>> +++ b/gnu/packages/base.scm
>>> @@ -999,7 +999,15 @@ with the Linux kernel.")
>>> (inherit glibc)
>>> (name "glibc-locales")
>>> (source (origin (inherit (package-source glibc))
>>> - (patches (cons (search-patch "glibc-locales.patch")
>>> + ;; The patch for glibc 2.28 and earlier replaces the same
>>> + ;; content, but the context in the patch is different
>>> + ;; enough to fail to merge.
>>> + (patches (cons (search-patch
>>> + (if (< 2.29
>>> + (string->number
>>> + (package-version glibc)))
>>> + "glibc-locales.patch"
>>> + "glibc-locales-2.29.patch"))
>>
>> Please use 'version>=?' here, as this will fail for e.g. glibc 2.3.
>>
>> I have a slight preference for renaming the previous patch to
>> 'glibc-locales-2.28.patch', so that 'glibc-locales.patch' refers to the
>> newest libc. Less surprises for the end user when trying newer
>> versions. :-)
>>
>> Apart from that LGTM, thanks!
>
> I just finished building my system with this patch and the almost-finished
> GNOME updates, and lots of weird stuff goes on. I'll investigate and push
> this patch when it works properly.
The weird stuff is unrelated to this patch, no? :-)
FWIW the current core-updates "works for me", but I haven't gotten
around to trying GNOME on it yet (there are some important packages
failing still -- help wanted!).
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
2019-07-08 16:56 ` Marius Bakke
@ 2019-07-08 20:37 ` Kei Kebreau
2019-07-09 16:26 ` bug#36495: " Kei Kebreau
1 sibling, 0 replies; 6+ messages in thread
From: Kei Kebreau @ 2019-07-08 20:37 UTC (permalink / raw)
To: Marius Bakke; +Cc: 36495
[-- Attachment #1: Type: text/plain, Size: 753 bytes --]
Marius Bakke <mbakke@fastmail.com> writes:
> Kei Kebreau <kkebreau@posteo.net> writes:
>
>> I just finished building my system with this patch and the almost-finished
>> GNOME updates, and lots of weird stuff goes on. I'll investigate and push
>> this patch when it works properly.
>
> The weird stuff is unrelated to this patch, no? :-)
>
> FWIW the current core-updates "works for me", but I haven't gotten
> around to trying GNOME on it yet (there are some important packages
> failing still -- help wanted!).
I can get you the exact error messages as soon as my GNOME +
core-updates build finishes, but they seem to be similar to the messages
one gets when running Guix on a foriegn distro without installing
glibc-locales or glibc-utf8-locales.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#36495: [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29.
2019-07-08 16:56 ` Marius Bakke
2019-07-08 20:37 ` Kei Kebreau
@ 2019-07-09 16:26 ` Kei Kebreau
1 sibling, 0 replies; 6+ messages in thread
From: Kei Kebreau @ 2019-07-09 16:26 UTC (permalink / raw)
To: Marius Bakke; +Cc: 36495-done
[-- Attachment #1: Type: text/plain, Size: 2392 bytes --]
Marius Bakke <mbakke@fastmail.com> writes:
> Kei Kebreau <kkebreau@posteo.net> writes:
>
>> Marius Bakke <mbakke@fastmail.com> writes:
>>
>>> Kei Kebreau <kkebreau@posteo.net> writes:
>>>
>>>> The patch for glibc 2.28 and earlier replaces the same content,
>>>> but the context
>>>> in the patch is different enough to fail to merge.
>>>
>>> Whoops, thanks for addressing this!
>>>
>>>> * gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
>>>> * gnu/packages/patches/glibc-locales-2.29.patch: New file.
>>>> * gnu/local.mk (dist_patch_DATA): Add it.
>>>
>>> [...]
>>>
>>>> diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
>>>> index f26145cb0b..d6df023f26 100644
>>>> --- a/gnu/packages/base.scm
>>>> +++ b/gnu/packages/base.scm
>>>> @@ -999,7 +999,15 @@ with the Linux kernel.")
>>>> (inherit glibc)
>>>> (name "glibc-locales")
>>>> (source (origin (inherit (package-source glibc))
>>>> - (patches (cons (search-patch "glibc-locales.patch")
>>>> + ;; The patch for glibc 2.28 and earlier replaces the same
>>>> + ;; content, but the context in the patch is different
>>>> + ;; enough to fail to merge.
>>>> + (patches (cons (search-patch
>>>> + (if (< 2.29
>>>> + (string->number
>>>> + (package-version glibc)))
>>>> + "glibc-locales.patch"
>>>> + "glibc-locales-2.29.patch"))
>>>
>>> Please use 'version>=?' here, as this will fail for e.g. glibc 2.3.
>>>
>>> I have a slight preference for renaming the previous patch to
>>> 'glibc-locales-2.28.patch', so that 'glibc-locales.patch' refers to the
>>> newest libc. Less surprises for the end user when trying newer
>>> versions. :-)
>>>
>>> Apart from that LGTM, thanks!
>>
>> I just finished building my system with this patch and the almost-finished
>> GNOME updates, and lots of weird stuff goes on. I'll investigate and push
>> this patch when it works properly.
>
> The weird stuff is unrelated to this patch, no? :-)
>
> FWIW the current core-updates "works for me", but I haven't gotten
> around to trying GNOME on it yet (there are some important packages
> failing still -- help wanted!).
Pushed to core-updates!
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-07-09 16:27 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-04 11:39 [bug#36495] [PATCH] gnu: make-glibc-locales: Add patch to fix glibc-locales build for glibc 2.29 Kei Kebreau
2019-07-05 23:26 ` Marius Bakke
2019-07-07 4:37 ` Kei Kebreau
2019-07-08 16:56 ` Marius Bakke
2019-07-08 20:37 ` Kei Kebreau
2019-07-09 16:26 ` bug#36495: " Kei Kebreau
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).