unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3.
@ 2018-08-29 18:58 Jan Nieuwenhuizen
  2018-09-03 21:15 ` Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: Jan Nieuwenhuizen @ 2018-08-29 18:58 UTC (permalink / raw)
  To: 32579

[-- Attachment #1: Type: text/plain, Size: 435 bytes --]

Hi!

I created a mingw32 cross build for guile-2.0 some time ago, expecting
to need it real soon for "work" or for LilyPond.  Neither need
materialized until now; but it very soon.

Luckily, I found that Mike Gran did quite some work this spring on their
wip-mingw-guile-2.2 branch; so I packaged the latest snapshot.

Not sure if we want this in Guix -- but here it is.  I did a simple test
under wine and it seems to work.

janneke


[-- Attachment #2: 0001-gnu-Add-guile-mingw-2.2.3.patch --]
[-- Type: text/x-patch, Size: 3659 bytes --]

From 8dd3f24ddc6e14879210c584e6cd746f80f1e052 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Wed, 29 Aug 2018 20:50:13 +0200
Subject: [PATCH] gnu: Add guile-mingw 2.2.3.

* gnu/packages/guile.scm (guile-mingw): New variable.
---
 gnu/packages/guile.scm | 50 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 49 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index a585dd6dc..34c60b9fd 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
 ;;; Copyright © 2016 Amirouche <amirouche@hypermove.net>
-;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2016,2018 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2017 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
@@ -316,6 +316,54 @@ without requiring the source code to be rewritten.")
                (base32
                 "07p3g0v2ba2vlfbfidqzlgbhnzdx46wh2rgc5gszq1mjyx5bks6r"))))))
 
+(define-public guile-mingw
+  (package
+    (inherit guile-2.2)
+    (version "2.2.3")
+    (name "guile-mingw")
+    (source (origin
+              (inherit (package-source guile-2.2))
+              (uri (string-append "http://git.savannah.gnu.org/cgit/guile.git/snapshot/guile-6d6bc013e1f9db98334e1212295b8be0e39fbf0a.tar.gz"))
+              (sha256
+               (base32
+                "0c1j05gz5kxnxp50h1da6idxq6fiaylx9pqq7mwdiwrb569apvzp"))))
+    (native-inputs `(("autoconf" ,autoconf)
+                     ("automake" ,automake)
+                     ("gettext" ,gettext-minimal)
+                     ("libtool" ,libtool)
+                     ("flex" ,flex)
+                     ("texinfo" ,texinfo)
+                     ,@(package-native-inputs guile-2.2)))
+    (arguments
+     `(#:tests? #f
+       ,@(substitute-keyword-arguments (package-arguments guile-2.2)
+           ((#:tests? _) #f)
+           ((#:phases phases '%standard-phases)
+            `(modify-phases ,phases
+               ,@(append
+                  (if (target-mingw?)
+                      '((delete 'sacrifice-elisp-support)
+                        (add-after 'bootstrap 'sacrifice-elisp-support
+                          (lambda _
+                            ;; Cross-compiling language/elisp/boot.el fails, so
+                            ;; sacrifice it.  See
+                            ;; <https://git.savannah.gnu.org/cgit/guile.git/commit/?h=stable-2.2&id=988aa29238fca862c7e2cb55f15762a69b4c16ce>
+                            ;; for the upstream fix.
+                            (substitute* "module/Makefile.in"
+                              (("language/elisp/boot\\.el")
+                               "\n"))
+                            #t)))
+                      '())
+                  '((replace 'bootstrap
+                      (lambda _
+                        (invoke "sh" "autogen.sh")))
+                    (add-before 'bootstrap 'patch-/bin/sh
+                      (lambda _
+                        (substitute* "build-aux/git-version-gen"
+                          (("#!/bin/sh") (string-append "#!" (which "sh"))))
+                        #t))))))))))) ; ./bootstrap is a directory
+
+
 (define-public guile-next
   (deprecated-package "guile-next" guile-2.2))
 
-- 
2.18.0


[-- Attachment #3: Type: text/plain, Size: 152 bytes --]


-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3.
  2018-08-29 18:58 [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3 Jan Nieuwenhuizen
@ 2018-09-03 21:15 ` Ludovic Courtès
  2018-09-03 21:43   ` Jan Nieuwenhuizen
  0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2018-09-03 21:15 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: 32579

Hello!

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> I created a mingw32 cross build for guile-2.0 some time ago, expecting
> to need it real soon for "work" or for LilyPond.  Neither need
> materialized until now; but it very soon.
>
> Luckily, I found that Mike Gran did quite some work this spring on their
> wip-mingw-guile-2.2 branch; so I packaged the latest snapshot.

Does that mean that Guile 2.2.5 will cross-build fine with
--target=i686-w64-mingw32?  (I thought this was already the case
actually.)

Ideally Guile fixes that are needed would go to ‘stable-2.2’, and then
Guix would simply package the corrected version.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3.
  2018-09-03 21:15 ` Ludovic Courtès
@ 2018-09-03 21:43   ` Jan Nieuwenhuizen
  2018-09-04 12:12     ` Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: Jan Nieuwenhuizen @ 2018-09-03 21:43 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 32579

Ludovic Courtès writes:

Hi!

>> I created a mingw32 cross build for guile-2.0 some time ago, expecting
>> to need it real soon for "work" or for LilyPond.  Neither need
>> materialized until now; but it very soon.
>>
>> Luckily, I found that Mike Gran did quite some work this spring on their
>> wip-mingw-guile-2.2 branch; so I packaged the latest snapshot.
>
> Does that mean that Guile 2.2.5 will cross-build fine with
> --target=i686-w64-mingw32?  (I thought this was already the case
> actually.)

Well, if wip-mingw-guile-2.2 is merged; yes.  I'm not sure why that
hasn't happened yet, so there may be issues?

> Ideally Guile fixes that are needed would go to ‘stable-2.2’, and then
> Guix would simply package the corrected version.

Sure!

Greetings
janneke

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3.
  2018-09-03 21:43   ` Jan Nieuwenhuizen
@ 2018-09-04 12:12     ` Ludovic Courtès
  2018-09-04 15:10       ` Jan Nieuwenhuizen
  0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2018-09-04 12:12 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: 32579

Howdy!

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> Ludovic Courtès writes:
>
> Hi!
>
>>> I created a mingw32 cross build for guile-2.0 some time ago, expecting
>>> to need it real soon for "work" or for LilyPond.  Neither need
>>> materialized until now; but it very soon.
>>>
>>> Luckily, I found that Mike Gran did quite some work this spring on their
>>> wip-mingw-guile-2.2 branch; so I packaged the latest snapshot.
>>
>> Does that mean that Guile 2.2.5 will cross-build fine with
>> --target=i686-w64-mingw32?  (I thought this was already the case
>> actually.)
>
> Well, if wip-mingw-guile-2.2 is merged; yes.  I'm not sure why that
> hasn't happened yet, so there may be issues?

Good question!  It could be that simply nobody took the time to look
into it.  If it can be chopped in small sizable chunks, I can take a
look and cherry-pick from it.  If you have suggestions or guidance,
that’s very welcome!

Regarding the package itself: I’m inclined to not include it in Guix
proper and instead work on applying the fixes in ‘stable-2.2’.

Is it OK for you?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3.
  2018-09-04 12:12     ` Ludovic Courtès
@ 2018-09-04 15:10       ` Jan Nieuwenhuizen
  0 siblings, 0 replies; 5+ messages in thread
From: Jan Nieuwenhuizen @ 2018-09-04 15:10 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 32579

Ludovic Courtès writes:

>> Well, if wip-mingw-guile-2.2 is merged; yes.  I'm not sure why that
>> hasn't happened yet, so there may be issues?
>
> Good question!  It could be that simply nobody took the time to look
> into it.  If it can be chopped in small sizable chunks, I can take a
> look and cherry-pick from it.  If you have suggestions or guidance,
> that’s very welcome!

It's ~25 commits on top of a 6month old stable-2.2; it rebases without
problems on current stable-2.2.

> Regarding the package itself: I’m inclined to not include it in Guix
> proper and instead work on applying the fixes in ‘stable-2.2’.
>
> Is it OK for you?

Yes; I wanted to share this packaging.  So then this bug would/could
change to: merge wip-mingw-guile-2.2 or something.

janneke

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-09-04 15:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-29 18:58 [bug#32579] [PATCH] gnu: Add guile-mingw 2.2.3 Jan Nieuwenhuizen
2018-09-03 21:15 ` Ludovic Courtès
2018-09-03 21:43   ` Jan Nieuwenhuizen
2018-09-04 12:12     ` Ludovic Courtès
2018-09-04 15:10       ` Jan Nieuwenhuizen

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).