/ .guix / modules / guile-llvm-package.scm
guile-llvm-package.scm
 1  (define-module (guile-llvm-package)
 2    #:use-module (guix utils)
 3    #:use-module (guix packages)
 4    #:use-module ((guix licenses) #:prefix license:)
 5    #:use-module (rnrs io ports)
 6    #:use-module (gnu packages xorg)
 7    #:use-module (guix download)
 8    #:use-module (guix git-download)
 9    #:use-module (gnu packages gettext)
10    #:use-module (guix gexp)
11    #:use-module (gnu packages gl)
12    #:use-module (gnu packages xdisorg)
13    #:use-module (guix build-system gnu)
14    #:use-module (gnu packages llvm)
15    #:use-module (gnu packages bash)
16    #:use-module (gnu packages)
17    #:use-module (gnu packages  boost)
18    #:use-module (gnu packages autotools)
19    #:use-module (gnu packages cpp)
20    #:use-module (gnu packages guile)
21    #:use-module (gnu packages gtk)
22    #:use-module (gnu packages guile-xyz)
23    #:use-module (gnu packages ibus)
24    #:use-module (gnu packages pkg-config)
25    #:use-module (gnu packages texinfo)
26    #:use-module (gnu packages wm)
27    #:use-module (gnu packages gdb)
28    #:use-module (gnu packages toolkits)
29    #:use-module (gnu packages stb)
30    #:use-module (gnu packages sdl)
31    #:use-module (gnu packages freedesktop))
32  
33  (define %srcdir
34    (string-append
35     (current-source-directory)
36     "/../.."))
37  
38  (define-public guile-llvm
39    (package
40      (name "guile-llvm")
41      (version "0")
42      (source (local-file "../.." (git-file-name name version)
43                          #:recursive? #t
44                          #:select? (or (git-predicate %srcdir)
45                                        (const #t))))
46      (build-system gnu-build-system)
47      (native-inputs
48       (list pkg-config
49             automake
50             autoconf
51             guile-3.0-latest))
52      (inputs (list guile-3.0-latest llvm-20))
53      (arguments
54       (list
55        #:make-flags #~(list "GUILE_AUTO_COMPILE=0")
56        #:phases
57        #~(modify-phases %standard-phases
58            (add-after 'unpack 'set-absolute-llvm.so
59              (lambda* (#:key inputs #:allow-other-keys)
60                (substitute* "llvm/config.scm"
61                  (("libLLVM")
62                   (search-input-file inputs "/lib/libLLVM.so"))))))))
63  
64      (synopsis "")
65      (description "")
66      (home-page "")
67      (license license:gpl3+)))
68  guile-llvm