gnu: openmpi: Use our hwloc.

* gnu/packages/mpi.scm (hwloc): Propagate numactl.
  (openmpi)[inputs]: Add hwloc.
  [native-inputs]: Add pkg-config.
  [argument]: Add hwloc configure flags.
master
Eric Bavier 2014-05-12 16:43:04 -05:00
parent a37b807769
commit 5b527256ee
1 changed files with 12 additions and 7 deletions

View File

@ -51,16 +51,16 @@
;; Enable libpci support, which effectively makes hwloc GPLv2+. ;; Enable libpci support, which effectively makes hwloc GPLv2+.
'(#:configure-flags '("--enable-libpci"))) '(#:configure-flags '("--enable-libpci")))
(inputs (inputs
`(("numactl" ,numactl) `(("libx11" ,libx11)
("libx11" ,libx11)
("cairo" ,cairo) ("cairo" ,cairo)
("ncurses" ,ncurses) ("ncurses" ,ncurses)
("expat" ,expat))) ("expat" ,expat)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(propagated-inputs (propagated-inputs
;; 'hwloc.pc' refers to libpci, hence the propagation. ;; 'hwloc.pc' refers to libpci and libnuma, hence the propagation.
`(("pciutils" ,pciutils))) `(("numactl" ,numactl)
("pciutils" ,pciutils)))
(home-page "http://www.open-mpi.org/projects/hwloc/") (home-page "http://www.open-mpi.org/projects/hwloc/")
(synopsis "Abstraction of hardware architectures") (synopsis "Abstraction of hardware architectures")
(description (description
@ -94,11 +94,14 @@ bind processes, and much more.")
(base32 (base32
"13z1q69f3qwmmhpglarfjminfy2yw4rfqr9jydjk5507q3mjf50p")))) "13z1q69f3qwmmhpglarfjminfy2yw4rfqr9jydjk5507q3mjf50p"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; TODO: Use our hwloc instead of the bundled one. (inputs
`(("hwloc" ,hwloc)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(propagated-inputs (propagated-inputs
`(("gfortran" ,gfortran-4.8))) `(("gfortran" ,gfortran-4.8)))
(arguments (arguments
`(#:configure-flags '("--enable-static" `(#:configure-flags `("--enable-static"
"--enable-oshmem" "--enable-oshmem"
;; Thread support causes some applications to hang ;; Thread support causes some applications to hang
;; "--enable-event-thread-support" ;; "--enable-event-thread-support"
@ -106,7 +109,9 @@ bind processes, and much more.")
;; "--enable-orte-progress-threads" ;; "--enable-orte-progress-threads"
;; "--enable-mpi-thread-multiple" ;; "--enable-mpi-thread-multiple"
"--enable-mpi-ext=all" "--enable-mpi-ext=all"
"--with-devel-headers"))) "--with-devel-headers"
,(string-append "--with-hwloc="
(assoc-ref %build-inputs "hwloc")))))
(home-page "http://www.open-mpi.org") (home-page "http://www.open-mpi.org")
(synopsis "MPI-2 implementation") (synopsis "MPI-2 implementation")
(description (description