1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-12-22 04:14:49 +01:00

Final modifications in the Guix manifest

Added SWIG input to make the dev build pass, otherwise the installation of the python_DATA files fails. This has to be fixed in the upstream build system!
This commit is contained in:
q-posev 2022-07-28 13:00:25 +02:00
parent 26f8a1b906
commit 3cbe893a8a

View File

@ -3,16 +3,16 @@
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages maths) ;; contains blas, lapack, hdf5 #:use-module (gnu packages maths) ;; contains blas, lapack, hdf5
#:use-module (trexio) ;; custom trexio module, has to be provided via -L command line option #:use-module (trexio) ;; custom trexio module, has to be provided via the -L command line option
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix licenses) #:use-module (guix licenses)
;; the modules below are additional requirements for building the dev version ;; the modules below are additional requirements for building the dev version
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (gnu packages version-control) ;; this is ONLY needed for cloning the htmlize.el, better to avoid it
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages emacs) #:use-module (gnu packages emacs)
#:use-module (gnu packages swig)
#:use-module (gnu packages m4)) #:use-module (gnu packages m4))
@ -33,7 +33,8 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
'("--enable-hpc" '("--enable-silent-rules"
"--enable-hpc"
"--with-openmp"))) "--with-openmp")))
(inputs (inputs
`(("trexio", trexio) `(("trexio", trexio)
@ -49,15 +50,13 @@
(license bsd-3))) (license bsd-3)))
;; build and installation of this still fails due to some bugs in the tools/build_makefile.py script ;; Guix does not copy the .git folder so relying on it's presence is a bad practice !
;; which fails to parse the git tree (define-public qmckl-dev
;; Guix does not copy .git folder into the source directory during unpack phase ! (let ((commit "26f8a1b906c329fa92adc2480e1769b8a90347de")
(define-public qmckl-master
(let ((commit "b33d6e523da8528a824bac8bc46a62a79d0dd846")
(revision "1")) (revision "1"))
(package (package
(name "qmckl-master") (name "qmckl-dev")
(version (git-version "0.2.3" revision commit)) (version (git-version "0.2.2" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -68,14 +67,15 @@
(sha256 (sha256
(base32 (base32
;; the hash below is produced by `guix hash -rx .` ;; the hash below is produced by `guix hash -rx .`
"1a46s14vki0mhx3g5xclhqllkfw3gc0y583a7la1s7ixm5f7zvim" "0px3880bnciky8mwivll56108j9ncxri3ic2bhavcwn1z12z7lcb"
)))) ))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '("--with-openmp") '(#:configure-flags
;; ignoring make errors while building htmlized docs is important for the build to pass '("--enable-hpc"
#:make-flags '("-i") "--with-openmp")
;;)) ;; ignoring make errors is a hack for the build to pass
;; #:make-flags '("-i")))
#:phases #:phases
;; this is a workaround to activate QMCKL_DEVEL mode ;; this is a workaround to activate QMCKL_DEVEL mode
(modify-phases %standard-phases (modify-phases %standard-phases
@ -97,7 +97,7 @@
("automake", automake) ("automake", automake)
("libtool", libtool) ("libtool", libtool)
("pkg-config", pkg-config) ("pkg-config", pkg-config)
("git", git) ;; this is ONLY needed for cloning the htmlize.el, better to avoid it ("swig", swig)
("m4", m4) ("m4", m4)
)) ))
(synopsis "QMCkl: Quantum Monte Carlo Kernel Library") (synopsis "QMCkl: Quantum Monte Carlo Kernel Library")
@ -110,8 +110,9 @@
(define-public qmckl (define-public qmckl
;; Default version of QMCkl - change this to benchmark installation from Git ;; Default version of QMCkl - change this to benchmark installation from Git
;; qmckl-dev)
qmckl-hpc-0.2.1) qmckl-hpc-0.2.1)
;; return qmckl variable so that `quix package -f qmckl.scm` works ;; return qmckl variable so that `quix package -f qmckl.scm` works
qmckl qmckl