Merge branch 'mplegendre-multi_pkgsrc_roots' into develop
- This moves var/spack/packages to var/spack/repos/builtin/packages. - Packages that did not exist in the source branch, or were changed in develop, were moved into var/spack/repos/builtin/packages as part of the integration. Conflicts: lib/spack/spack/test/unit_install.py var/spack/repos/builtin/packages/clang/package.py
This commit is contained in:
11
var/spack/repos/builtin/packages/julia/gc.patch
Normal file
11
var/spack/repos/builtin/packages/julia/gc.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- julia/src/gc.c
|
||||
+++ julia/src/gc.c
|
||||
@@ -162,7 +162,7 @@
|
||||
// A region is contiguous storage for up to REGION_PG_COUNT naturally aligned GC_PAGE_SZ pages
|
||||
// It uses a very naive allocator (see malloc_page & free_page)
|
||||
#if defined(_P64) && !defined(_COMPILER_MICROSOFT_)
|
||||
-#define REGION_PG_COUNT 16*8*4096 // 8G because virtual memory is cheap
|
||||
+#define REGION_PG_COUNT 8*4096 // 512M
|
||||
#else
|
||||
#define REGION_PG_COUNT 8*4096 // 512M
|
||||
#endif
|
70
var/spack/repos/builtin/packages/julia/package.py
Normal file
70
var/spack/repos/builtin/packages/julia/package.py
Normal file
@@ -0,0 +1,70 @@
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class Julia(Package):
|
||||
"""The Julia Language: A fresh approach to technical computing"""
|
||||
homepage = "http://julialang.org"
|
||||
url = "http://github.com/JuliaLang/julia/releases/download/v0.4.2/julia-0.4.2.tar.gz"
|
||||
|
||||
version('0.4.3', '7b9f096798fca4bef262a64674bc2b52')
|
||||
version('0.4.2', 'ccfeb4f4090c8b31083f5e1ccb03eb06')
|
||||
|
||||
patch('gc.patch')
|
||||
|
||||
# Build-time dependencies
|
||||
depends_on("cmake @2.8:")
|
||||
# depends_on("awk")
|
||||
# depends_on("m4")
|
||||
# depends_on("pkg-config")
|
||||
depends_on("python @2.6:2.9")
|
||||
|
||||
# I think that Julia requires the dependencies above, but it builds find (on
|
||||
# my system) without these. We should enable them as necessary.
|
||||
|
||||
# Run-time dependencies
|
||||
# depends_on("arpack")
|
||||
# depends_on("fftw +float")
|
||||
# depends_on("gmp")
|
||||
# depends_on("mpfr")
|
||||
# depends_on("pcre2")
|
||||
|
||||
# ARPACK: Requires BLAS and LAPACK; needs to use the same version as Julia.
|
||||
|
||||
# BLAS and LAPACK: Julia prefers 64-bit versions on 64-bit systems. OpenBLAS
|
||||
# has an option for this; make it available as variant.
|
||||
|
||||
# FFTW: Something doesn't work when using a pre-installed FFTW library; need
|
||||
# to investigate.
|
||||
|
||||
# GMP, MPFR: Something doesn't work when using a pre-installed FFTW library;
|
||||
# need to investigate.
|
||||
|
||||
# LLVM: Julia works only with specific versions, and might require patches.
|
||||
# Thus we let Julia install its own LLVM.
|
||||
|
||||
# Other possible dependencies:
|
||||
# USE_SYSTEM_OPENLIBM=0
|
||||
# USE_SYSTEM_OPENSPECFUN=0
|
||||
# USE_SYSTEM_DSFMT=0
|
||||
# USE_SYSTEM_SUITESPARSE=0
|
||||
# USE_SYSTEM_UTF8PROC=0
|
||||
# USE_SYSTEM_LIBGIT2=0
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Explicitly setting CC, CXX, or FC breaks building libuv, one of
|
||||
# Julia's dependencies. This might be a Darwin-specific problem. Given
|
||||
# how Spack sets up compilers, Julia should still use Spack's compilers,
|
||||
# even if we don't specify them explicitly.
|
||||
options = [#"CC=cc",
|
||||
#"CXX=c++",
|
||||
#"FC=fc",
|
||||
#"USE_SYSTEM_ARPACK=1",
|
||||
#"USE_SYSTEM_FFTW=1",
|
||||
#"USE_SYSTEM_GMP=1",
|
||||
#"USE_SYSTEM_MPFR=1",
|
||||
#TODO "USE_SYSTEM_PCRE=1",
|
||||
"prefix=%s" % prefix]
|
||||
with open('Make.user', 'w') as f:
|
||||
f.write('\n'.join(options) + '\n')
|
||||
make()
|
||||
make("install")
|
Reference in New Issue
Block a user