aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2018-11-11 22:28:05 +0100
committerPierre Neidhardt <mail@ambrevar.xyz>2018-11-12 10:31:23 +0100
commit5c4758415d4b2565d3ec4a6d89c525d85dafb53a (patch)
tree0835071f718f153e74e85fcab7fc252bc8458dbc
parent46a4ae2212d72d38dc55188e35a7441964694f91 (diff)
downloadpatches-5c4758415d4b2565d3ec4a6d89c525d85dafb53a.tar
patches-5c4758415d4b2565d3ec4a6d89c525d85dafb53a.tar.gz
gnu: go-github-com-aarzilli-golua: Fix for go-1.11.
* gnu/packages/golang.scm (go-github-com-aarzilli-golua)[arguments]: Fix for go-1.11. [native-inputs]: Remove lua. [propagated-inputs]: Add lua.
-rw-r--r--gnu/packages/golang.scm30
1 files changed, 16 insertions, 14 deletions
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 2fd8bf487c..38df23a6c1 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2152,26 +2152,28 @@ generate ANSI colored strings.")
(base32
"1d9hr29i36cza98afj3g6rs3l7xbkprwzz0blcxsr9dd7nak20di"))))
(build-system go-build-system)
- (native-inputs
+ ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so
+ ;; when this package required as input for another one, it will have to
+ ;; be built again. Thus its CGO requirements must be made available in
+ ;; the environment, that is, they must be propagated.
+ (propagated-inputs
`(("lua" ,lua)))
(arguments
`(#:unpack-path "github.com/aarzilli/golua"
#:import-path "github.com/aarzilli/golua/lua"
#:phases
(modify-phases %standard-phases
- (replace 'build
- (lambda* (#:key import-path #:allow-other-keys)
- (invoke "go" "install"
- "-v" ; print the name of packages as they are compiled
- "-x" ; print each command as it is invoked
- "-ldflags=-s -w" ; strip the symbol table and debug
- "-tags" "llua" ; Latest Lua on Guix does not have a version number.
- import-path)))
- (replace 'check
- (lambda* (#:key import-path #:allow-other-keys)
- (invoke "go" "test"
- "-tags" "llua" ; Latest Lua on Guix does not have a version number.
- import-path))))))
+ ;; While it's possible to fix the CGO_LDFLAGS with the "-tags"
+ ;; command line argument, go-1.10+ does not re-use the produced pkg
+ ;; for dependencies, which means we would need to propagate the
+ ;; same "-tags" argument to all golua referrers. A substitution is
+ ;; more convenient here. We also need to propagate the lua
+ ;; dependency to make it available to referrers.
+ (add-after 'unpack 'fix-lua-ldflags
+ (lambda _
+ (substitute* "src/github.com/aarzilli/golua/lua/lua.go"
+ (("#cgo linux,!llua,!luaa LDFLAGS: -llua5.3")
+ "#cgo linux,!llua,!luaa LDFLAGS: -llua")))))))
(home-page "https://github.com/aarzilli/golua")
(synopsis "Go Bindings for the Lua C API")
(description "This package provides @code{lua}, a Go module that can