From be78f5523898f8a093041f95bb7a863f7647dc54 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Wed, 11 May 2022 17:44:10 +0200 Subject: [PATCH] REMOVEME guix: guile-mingw: Hardcode file-name-convention. Build it: GUIX_PACKAGE_PATH=guix guix build --target=x86_64-w64-mingw32 guile-mingw Run it: WINEPATH=$(guix shell wine64 -- winepath -w \ $(echo $(guix gc -R \ $(GUIX_PACKAGE_PATH=guix guix build \ --target=x86_64-w64-mingw32 guile-mingw))) \ | sed 's,$,/bin,g' | tr '\n' ';') \ guix shell wine64 -- wine \ $(GUIX_PACKAGE_PATH=guix guix build --target=x86_64-w64-mingw32 \ guile-mingw)/bin/guile.exe \ -c '(format #t "Hello ~a world!\n" %host-type)' * guix/guile-mingw-file-name-convention.patch: New file. * guix/mingw.scm (guile-mingw): Use it. --- guix/guile-mingw-file-name-convention.patch | 32 +++++++++++++++++++++ guix/mingw.scm | 3 ++ 2 files changed, 35 insertions(+) create mode 100644 guix/guile-mingw-file-name-convention.patch diff --git a/guix/guile-mingw-file-name-convention.patch b/guix/guile-mingw-file-name-convention.patch new file mode 100644 index 000000000..3bd07f464 --- /dev/null +++ b/guix/guile-mingw-file-name-convention.patch @@ -0,0 +1,32 @@ +From c51b9ff375834d4999978a50d6798289d923de53 Mon Sep 17 00:00:00 2001 +From: "Jan (janneke) Nieuwenhuizen" +Date: Wed, 11 May 2022 16:30:52 +0200 +Subject: [PATCH] REMOVEME mingw: Hardcode compile-time-file-name-convention to + 'mingw. + +FIXME Apply this patch only when compiling for mingw. + Temporary hack until we have a proper fix to determine + compile-time-file-name-convention + +* module/ice-9/boot-9.scm (compile-time-file-name-convention): Hardcode +to 'mingw instead of 'posix. +--- + module/ice-9/boot-9.scm | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm +index 198a887c1..c024cc095 100644 +--- a/module/ice-9/boot-9.scm ++++ b/module/ice-9/boot-9.scm +@@ -2062,7 +2062,7 @@ non-locally, that exit determines the continuation." + + (eval-when (eval) + (define (compile-time-file-name-convention) +- (let ((target (or "FIXME" ((@ (system base target) target-type))))) ++ (let ((target (or "mingw" "FIXME" ((@ (system base target) target-type))))) + (cond ((equal? target %host-type) + (system-file-name-convention)) + ((string-contains-ci target "mingw") +-- +2.35.1 + diff --git a/guix/mingw.scm b/guix/mingw.scm index 9294808b0..bc064a19c 100644 --- a/guix/mingw.scm +++ b/guix/mingw.scm @@ -84,6 +84,9 @@ (define-public guile-3.0-mingw (package (inherit guile-3.0-patched) + (source (origin (inherit (package-source guile-3.0-patched)) + (patches + (search-patches "guile-mingw-file-name-convention.patch")))) (name "guile-mingw") (native-inputs `(("self" ,guile-3.0-patched)