diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb index 6671e1cd4ff..6081619a331 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.10.0-linux-x86_64.eb @@ -11,21 +11,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['a7298207f72f2b27b2ab1ce392a6ea37afbd1fbee0f1f8d190b054dcaba878fe'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.10.0-linux-x86_64.tar.gz': 'a7298207f72f2b27b2ab1ce392a6ea37afbd1fbee0f1f8d190b054dcaba878fe'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextrapaths_append = { - # Use default DEPOT_PATH where first entry is user's depot. - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths. - # Appending ':' to make sure we don't override the user's custom JULIA_DEPOT_PATH if set. - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb index 225d86de75a..17abf7d929c 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.0-linux-aarch64.eb @@ -15,20 +15,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/aarch64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['0f496972d26cea88151204d03e6bd87702aa1ff983de3b1e4f320c48ef67325f'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.0-linux-aarch64.tar.gz': '0f496972d26cea88151204d03e6bd87702aa1ff983de3b1e4f320c48ef67325f'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb index 45b365aa65d..dd9ad4890db 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.5-linux-x86_64.eb @@ -19,20 +19,20 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['b8fe23ee547254a2fe14be587284ed77c78c06c2d8e9aad5febce0d21cab8e2c'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.5-linux-x86_64.tar.gz': 'b8fe23ee547254a2fe14be587284ed77c78c06c2d8e9aad5febce0d21cab8e2c'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb index 48c2259422e..03bdc16da5a 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.6-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['c25ff71a4242207ab2681a0fcc5df50014e9d99f814e77cacbc5027e20514945'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.6-linux-x86_64.tar.gz': 'c25ff71a4242207ab2681a0fcc5df50014e9d99f814e77cacbc5027e20514945'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb index f5d1446913f..7046809d33d 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.6.7-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['6c4522d595e4cbcd00157ac458a72f8aec01757053d2073f99daa39e442b2a36'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.6.7-linux-x86_64.tar.gz': '6c4522d595e4cbcd00157ac458a72f8aec01757053d2073f99daa39e442b2a36'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb index ecc3020f4c0..39df361aa99 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['7299f3a638aec5e0b9e14eaf0e6221c4fe27189aa0b38ac5a36f03f0dc4c0d40'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.0-linux-x86_64.tar.gz': '7299f3a638aec5e0b9e14eaf0e6221c4fe27189aa0b38ac5a36f03f0dc4c0d40'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb index b8b0a744c04..87f911a7da0 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.1-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['44658e9c7b45e2b9b5b59239d190cca42de05c175ea86bc346c294a8fe8d9f11'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.1-linux-x86_64.tar.gz': '44658e9c7b45e2b9b5b59239d190cca42de05c175ea86bc346c294a8fe8d9f11'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb index e88e509e098..5e48ff39fbe 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['a75244724f3b2de0e7249c861fbf64078257c16fb4203be78f1cf4dd5973ba95'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.2-linux-x86_64.tar.gz': 'a75244724f3b2de0e7249c861fbf64078257c16fb4203be78f1cf4dd5973ba95'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb index dac9088825a..0f1649345d9 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.7.3-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['9b2f4fa12d92b4dcc5d11dc66fb118c47681a76d3df8da064cc97573f2f5c739'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.7.3-linux-x86_64.tar.gz': '9b2f4fa12d92b4dcc5d11dc66fb118c47681a76d3df8da064cc97573f2f5c739'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb index c7f6214e4a8..701b6bcbde7 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['e80d732ccb7f79e000d798cb8b656dc3641ab59516d6e4e52e16765017892a00'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.0-linux-x86_64.tar.gz': 'e80d732ccb7f79e000d798cb8b656dc3641ab59516d6e4e52e16765017892a00'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb index 37b817f557e..c85c5bdc291 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['671cf3a450b63a717e1eedd7f69087e3856f015b2e146cb54928f19a3c05e796'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.2-linux-x86_64.tar.gz': '671cf3a450b63a717e1eedd7f69087e3856f015b2e146cb54928f19a3c05e796'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb index 1d5fa47c96c..6e60397495d 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.8.5-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['e71a24816e8fe9d5f4807664cbbb42738f5aa9fe05397d35c81d4c5d649b9d05'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.8.5-linux-x86_64.tar.gz': 'e71a24816e8fe9d5f4807664cbbb42738f5aa9fe05397d35c81d4c5d649b9d05'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb index 2ee4230cbb9..2e89fb8640b 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.0-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['00c614466ef9809c2eb23480e38d196a2c577fff2730c4f83d135b913d473359'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.0-linux-x86_64.tar.gz': '00c614466ef9809c2eb23480e38d196a2c577fff2730c4f83d135b913d473359'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb index a0d92b7aacb..fef2c5a347c 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.2-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['4c2d799f442d7fe718827b19da2bacb72ea041b9ce55f24eee7b1313f57c4383'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.2-linux-x86_64.tar.gz': '4c2d799f442d7fe718827b19da2bacb72ea041b9ce55f24eee7b1313f57c4383'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb index 7b207dc635c..1d0f85d9874 100644 --- a/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb +++ b/easybuild/easyconfigs/j/Julia/Julia-1.9.3-linux-x86_64.eb @@ -19,20 +19,19 @@ toolchain = SYSTEM source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] -checksums = ['d76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1'] +patches = [('julia.wrapper', 'bin/')] +checksums = [ + {'julia-1.9.3-linux-x86_64.tar.gz': 'd76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1'}, + {'julia.wrapper': 'd10aeaff53cca9875f7b0ce9218eae3bd21870b654e26c4c52aa8bfcc9da702d'}, +] + +# install wrapper with linking safeguards for Julia libraries +postinstallcmds = ["cd %(installdir)s/bin && mv julia julia.bin && mv julia.wrapper julia"] sanity_check_paths = { - 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], - 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] + 'files': ['bin/julia', 'bin/julia.bin', 'include/julia/julia.h', 'lib/libjulia.%s' % SHLIB_EXT], + 'dirs': ['bin', 'etc', 'include', 'lib', 'lib/julia', 'share'] } - sanity_check_commands = ['julia --help'] -modextravars = { - # Use default DEPOT_PATH where first entry is user's depot - # JULIA_DEPOT_PATH must be set to be able to load other JuliaPackage modules and have - # those installations appended to DEPOT_PATH without disabling any of the default paths - 'JULIA_DEPOT_PATH': ':', -} - moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Julia/julia.wrapper b/easybuild/easyconfigs/j/Julia/julia.wrapper new file mode 100755 index 00000000000..613b8a831f1 --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/julia.wrapper @@ -0,0 +1,2 @@ +#!/bin/sh +LD_LIBRARY_PATH="$EBROOTJULIA/lib:$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH" julia.bin "$@"