diff options
author | Wouter Deconinck <wdconinc@gmail.com> | 2024-10-01 05:01:10 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-01 12:01:10 +0200 |
commit | 5bc105c01c0e458924df40d51f7111ba507689f9 (patch) | |
tree | 8c92c5d6a17893589f501661cb8e87df61afd726 /var | |
parent | 4e3a8b1928be67bf3e2e4ce9f8028b33a494420a (diff) | |
download | spack-5bc105c01c0e458924df40d51f7111ba507689f9.tar.gz spack-5bc105c01c0e458924df40d51f7111ba507689f9.tar.bz2 spack-5bc105c01c0e458924df40d51f7111ba507689f9.tar.xz spack-5bc105c01c0e458924df40d51f7111ba507689f9.zip |
gfal2: new package (and dependencies) (#46559)
Diffstat (limited to 'var')
27 files changed, 1026 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/cgsi-gsoap/package.py b/var/spack/repos/builtin/packages/cgsi-gsoap/package.py new file mode 100644 index 0000000000..954659e771 --- /dev/null +++ b/var/spack/repos/builtin/packages/cgsi-gsoap/package.py @@ -0,0 +1,32 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class CgsiGsoap(CMakePackage): + """Client and server side library to secure gSOAP + using the Globus Security Infrastructure.""" + + homepage = "https://github.com/cern-fts/cgsi-gsoap" + url = "https://github.com/cern-fts/cgsi-gsoap/archive/refs/tags/v1.3.12.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("1.3.12", sha256="ebb141ea7fe6d883ebeca031b4f2e3697895efb8fde55ee214128d5ca37e13e4") + + depends_on("c", type="build") + + depends_on("pkg-config", type="build") + depends_on("gsoap") + depends_on("voms") + depends_on("globus-common") + depends_on("globus-gssapi-gsi") + depends_on("globus-gss-assist") + depends_on("globus-gsi-cert-utils") + depends_on("globus-gsi-credential") + depends_on("globus-openssl-module") diff --git a/var/spack/repos/builtin/packages/gfal2-util/package.py b/var/spack/repos/builtin/packages/gfal2-util/package.py new file mode 100644 index 0000000000..874b1f58d7 --- /dev/null +++ b/var/spack/repos/builtin/packages/gfal2-util/package.py @@ -0,0 +1,21 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class Gfal2Util(PythonPackage): + """CLI for gfal2.""" + + homepage = "https://dmc-docs.web.cern.ch/dmc-docs/gfal2-util.html" + url = "https://github.com/cern-fts/gfal2-util/archive/refs/tags/v1.9.0.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("1.9.0", sha256="9a5194b7ac80381c0787ec7c2405cc3e060fc03bb99e80bbeb388ec3675cb13d") + + depends_on("py-setuptools", type="build") diff --git a/var/spack/repos/builtin/packages/gfal2/package.py b/var/spack/repos/builtin/packages/gfal2/package.py new file mode 100644 index 0000000000..4b892903c5 --- /dev/null +++ b/var/spack/repos/builtin/packages/gfal2/package.py @@ -0,0 +1,91 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class Gfal2(CMakePackage): + """Multi-protocol data management library.""" + + homepage = "https://dmc-docs.web.cern.ch/dmc-docs/" + url = "https://github.com/cern-fts/gfal2/archive/refs/tags/v2.23.0.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("2.23.0", sha256="e3fc9c2ccb2f54b1d0d460545e1b6c581470d2a2968928a8973045089892e509") + + variant("dcap", default=False, description="Enable dcap plugin") + variant("file", default=False, description="Enable file plugin") + variant("gridftp", default=False, description="Enable gridftp plugin") + variant("http", default=False, description="Enable http plugin") + variant("sftp", default=False, description="Enable sftp plugin") + variant("sftp", default=False, description="Enable sftp plugin") + variant("srm", default=False, description="Enable srm plugin") + variant("xrootd", default=False, description="Enable xrootd plugin") + + depends_on("c", type="build") + depends_on("cxx", type="build") + + depends_on("glib") + depends_on("json-c") + depends_on("openldap") + + depends_on("dcap", when="+dcap") + depends_on("zlib", when="+file") + depends_on("davix +thirdparty", when="+http") + depends_on("cryptopp", when="+http") + depends_on("libssh2", when="+sftp") + depends_on("xrootd", when="+xrootd") + + with when("+gridftp"): + depends_on("globus-common") + depends_on("globus-ftp-client") + depends_on("globus-ftp-control") + depends_on("globus-gass-copy") + depends_on("globus-gss-assist") + depends_on("globus-gssapi-gsi") + + with when("+srm"): + depends_on("globus-common") + depends_on("globus-gss-assist") + depends_on("globus-gssapi-gsi") + depends_on("srm-ifce") + + depends_on("googletest", type="test") + + def patch(self): + # FindCryptopp.cmake looks in user-specified ${CRYPTOPP_LOCATION} + # for both library and headers + filter_file( + r"find_library\(CRYPTOPP_LIBRARIES", + "find_library(CRYPTOPP_LIBRARIES PATH_SUFFIXES lib lib64", + "cmake/modules/FindCryptopp.cmake", + ) + filter_file( + r"find_path\(CRYPTOPP_INCLUDE_DIRS", + "find_path(CRYPTOPP_INCLUDE_DIRS PATH_SUFFIXES include/cryptopp", + "cmake/modules/FindCryptopp.cmake", + ) + + def cmake_args(self): + args = [ + self.define("MAIN_CORE", True), + self.define("MAIN_TRANSFER", True), + self.define("SKIP_TESTS", not self.run_tests), + self.define_from_variant("PLUGIN_DCAP", "dcap"), + self.define_from_variant("PLUGIN_FILE", "file"), + self.define_from_variant("PLUGIN_GRIDFTP", "gridftp"), + self.define_from_variant("PLUGIN_HTTP", "http"), + self.define_from_variant("PLUGIN_SFTP", "sftp"), + self.define_from_variant("PLUGIN_SRM", "srm"), + self.define_from_variant("PLUGIN_XROOTD", "xrootd"), + ] + if self.spec.satisfies("+http"): + args.append(self.define("CRYPTOPP_LOCATION", self.spec["cryptopp"].prefix)) + if self.spec.satisfies("+xrootd"): + args.append(self.define("XROOTD_LOCATION", self.spec["xrootd"].prefix)) + return args diff --git a/var/spack/repos/builtin/packages/globus-callout/package.py b/var/spack/repos/builtin/packages/globus-callout/package.py new file mode 100644 index 0000000000..982082bdf7 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-callout/package.py @@ -0,0 +1,31 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusCallout(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus Callout Library - provides a + platform independent way of dealing with runtime loadable functions. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/callout/source" + url = "https://repo.gridcf.org/gct6/sources/globus_callout-4.3.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("4.3", sha256="367e3fda18c3c3eb2b12496abc504186d0bfa0dadc666f626f580a443bba3000") + + depends_on("c", type="build") + + depends_on("globus-common@15:") diff --git a/var/spack/repos/builtin/packages/globus-common/package.py b/var/spack/repos/builtin/packages/globus-common/package.py new file mode 100644 index 0000000000..c141110d86 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-common/package.py @@ -0,0 +1,28 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusCommon(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Common Library Programs. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/common/source" + url = "https://repo.gridcf.org/gct6/sources/globus_common-18.14.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("18.14", sha256="22368942a78e608d8fe6d9f7379abc628e2bd7af54a98c7d2bddc265d6f0ba45") + + depends_on("c", type="build") diff --git a/var/spack/repos/builtin/packages/globus-ftp-client/package.py b/var/spack/repos/builtin/packages/globus-ftp-client/package.py new file mode 100644 index 0000000000..454d3aab69 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-ftp-client/package.py @@ -0,0 +1,43 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusFtpClient(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the GridFTP Client Library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gridftp/client/source" + url = "https://repo.gridcf.org/gct6/sources/globus_ftp_client-9.8.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("9.8", sha256="aa83229f70352e106fc29f28cef4fc8fdab37c794603e7b425f193d947e5926c") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("openssl") + depends_on("globus-common@15:") + depends_on("globus-ftp-control@4:") + depends_on("globus-gsi-callback@4:") + depends_on("globus-gsi-credential@5:") + depends_on("globus-gsi-sysconfig@5:") + depends_on("globus-gssapi-gsi@10:") + depends_on("globus-xio@3:") + depends_on("globus-xio-popen-driver@2:") diff --git a/var/spack/repos/builtin/packages/globus-ftp-control/package.py b/var/spack/repos/builtin/packages/globus-ftp-control/package.py new file mode 100644 index 0000000000..5b4d233015 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-ftp-control/package.py @@ -0,0 +1,40 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusFtpControl(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the GridFTP Control Library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gridftp/control/source" + url = "https://repo.gridcf.org/gct6/sources/globus_ftp_control-9.7.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("9.10", sha256="86677b4aef54b32bcdc11bb48d63f0a30ee520c8aa60e1f0f51d6cd671ee4010") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gss-assist@11:") + depends_on("globus-gssapi-gsi@13:") + depends_on("globus-io@11:") + depends_on("globus-xio@3:") + depends_on("globus-gssapi-error@4:") diff --git a/var/spack/repos/builtin/packages/globus-gass-copy/package.py b/var/spack/repos/builtin/packages/globus-gass-copy/package.py new file mode 100644 index 0000000000..f95e69effb --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gass-copy/package.py @@ -0,0 +1,37 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGassCopy(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus Gass Copy Programs. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gass/copy/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gass_copy-10.13.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("10.13", sha256="f8b301b99de8f236733486767409d952024e16ff44ccfa8627063eefcbc8fe45") + + depends_on("c", type="build") + + depends_on("globus-common@15:") + depends_on("globus-ftp-client@7:") + depends_on("globus-ftp-control@4:") + depends_on("globus-gsi-sysconfig@4:") + depends_on("globus-gass-transfer@7:") + depends_on("globus-io@8:") + depends_on("globus-gssapi-gsi@9:") + depends_on("globus-gssapi-error@4:") diff --git a/var/spack/repos/builtin/packages/globus-gass-transfer/package.py b/var/spack/repos/builtin/packages/globus-gass-transfer/package.py new file mode 100644 index 0000000000..f4a4f5e035 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gass-transfer/package.py @@ -0,0 +1,38 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGassTransfer(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus Gass Transfer. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gass/transfer/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gass_transfer-9.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("9.4", sha256="c5ad54d0e4959f7dc4131918ad9d40d49db2823b84aec8229127826a9601fbf9") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gssapi-gsi@10:") + depends_on("globus-gss-assist@8:") + depends_on("globus-io@8:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-callback/package.py b/var/spack/repos/builtin/packages/globus-gsi-callback/package.py new file mode 100644 index 0000000000..1f63f68bc1 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-callback/package.py @@ -0,0 +1,34 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiCallback(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI Callback Library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gsi/callback/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_callback-6.2.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("6.2", sha256="ffac5435b7d3a78db3c1f856fbe41e7951d5f7d60df3af4ce8cf5b9e303a6f68") + + depends_on("c", type="build") + + depends_on("globus-common@14:") + depends_on("globus-openssl-module@3:") + depends_on("globus-gsi-openssl-error@2:") + depends_on("globus-gsi-cert-utils@8:") + depends_on("globus-gsi-sysconfig@5:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-cert-utils/package.py b/var/spack/repos/builtin/packages/globus-gsi-cert-utils/package.py new file mode 100644 index 0000000000..a17c6def1c --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-cert-utils/package.py @@ -0,0 +1,32 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiCertUtils(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI Cert Utils Library Programs. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/cert_utils/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_cert_utils-10.11.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("10.11", sha256="0bcbef5e04feda1900407970e52e81ad94f68bceef35313f82c810ddb5bff6ba") + + depends_on("c", type="build") + depends_on("openssl@1:") + depends_on("globus-common@14:") + depends_on("globus-openssl-module@3:") + depends_on("globus-gsi-openssl-error@2:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-credential/package.py b/var/spack/repos/builtin/packages/globus-gsi-credential/package.py new file mode 100644 index 0000000000..9d68a84369 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-credential/package.py @@ -0,0 +1,33 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiCredential(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI Credential Library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gsi/credential/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_credential-8.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("8.4", sha256="19e8fde9d4b335d60a021ac58c7559e5c34981e9332a8e574eda0b44ec160fa7") + + depends_on("c", type="build") + depends_on("globus-common@14:") + depends_on("globus-gsi-openssl-error@2:") + depends_on("globus-gsi-cert-utils@8:") + depends_on("globus-gsi-sysconfig@5:") + depends_on("globus-gsi-callback@4:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-openssl-error/package.py b/var/spack/repos/builtin/packages/globus-gsi-openssl-error/package.py new file mode 100644 index 0000000000..573859cdb4 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-openssl-error/package.py @@ -0,0 +1,36 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiOpensslError(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus OpenSSL Error Handling. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/openssl_error/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_openssl_error-4.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("4.4", sha256="1879ff269154431700ed158a75acc6e10ca0c96af95d92bc2fa63b7fe998fa6e") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("openssl@1:") + depends_on("globus-common@14:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-proxy-core/package.py b/var/spack/repos/builtin/packages/globus-gsi-proxy-core/package.py new file mode 100644 index 0000000000..c81d612830 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-proxy-core/package.py @@ -0,0 +1,42 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiProxyCore(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI Proxy Core Library. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/proxy/proxy_core/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_proxy_core-9.8.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("9.8", sha256="b0865b298d96ffbf6963c0fcb14eb7fd311de67fb25890a677bd6ace13475da3") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("openssl@1:") + depends_on("globus-common@14:") + depends_on("globus-openssl-module@3:") + depends_on("globus-gsi-openssl-error@2:") + depends_on("globus-gsi-cert-utils@8:") + depends_on("globus-gsi-sysconfig@5:") + depends_on("globus-gsi-proxy-ssl@4:") + depends_on("globus-gsi-credential@5:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-proxy-ssl/package.py b/var/spack/repos/builtin/packages/globus-gsi-proxy-ssl/package.py new file mode 100644 index 0000000000..e8bfa9342b --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-proxy-ssl/package.py @@ -0,0 +1,30 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiProxySsl(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI Proxy SSL Library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gsi/proxy/proxy_ssl/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_proxy_ssl-6.5.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("6.5", sha256="4f20042d80a1fe28b40d9f7f4a1fc9f2790645e9b3f426a659b0c3f01eb04259") + + depends_on("c", type="build") + + depends_on("openssl@1:") diff --git a/var/spack/repos/builtin/packages/globus-gsi-sysconfig/package.py b/var/spack/repos/builtin/packages/globus-gsi-sysconfig/package.py new file mode 100644 index 0000000000..006ff1cc7f --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gsi-sysconfig/package.py @@ -0,0 +1,32 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGsiSysconfig(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus GSI System Config Library. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/sysconfig/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gsi_sysconfig-9.6.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("9.6", sha256="7d843374eb64605dda206b84cad2a5c39a1bc9b18e9bfd93591c8fcb6d5a1a7a") + + depends_on("c", type="build") + + depends_on("globus-common@15:") + depends_on("globus-openssl-module@e3:") + depends_on("globus-gsi-openssl-error@2:") diff --git a/var/spack/repos/builtin/packages/globus-gss-assist/package.py b/var/spack/repos/builtin/packages/globus-gss-assist/package.py new file mode 100644 index 0000000000..a49237f6b8 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gss-assist/package.py @@ -0,0 +1,40 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGssAssist(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the GSSAPI Assist library Programs. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/gss_assist/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gss_assist-12.7.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("12.7", sha256="5184e0f1a09a64651472f19b79101fc6d966056fd9e1ee29512e41f694eae759") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gsi-sysconfig@7:") + depends_on("globus-gsi-cert-utils@8:") + depends_on("globus-gssapi-gsi@13:") + depends_on("globus-callout@2:") + depends_on("globus-gsi-credential@6:") diff --git a/var/spack/repos/builtin/packages/globus-gssapi-error/package.py b/var/spack/repos/builtin/packages/globus-gssapi-error/package.py new file mode 100644 index 0000000000..b2d16c4420 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gssapi-error/package.py @@ -0,0 +1,37 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGssapiError(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the GSSAPI Error Library. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/gssapi_error/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gssapi_error-6.3.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("6.3", sha256="943261f337ca5547f0e4fed47c8beac14cb125837b265f152c216f9b068dabc4") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gss-assist@8:") + depends_on("globus-gssapi-gsi@9:") diff --git a/var/spack/repos/builtin/packages/globus-gssapi-gsi/package.py b/var/spack/repos/builtin/packages/globus-gssapi-gsi/package.py new file mode 100644 index 0000000000..f47d9f37ec --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-gssapi-gsi/package.py @@ -0,0 +1,45 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusGssapiGsi(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the GSSAPI library. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/gsi/gssapi/source" + url = "https://repo.gridcf.org/gct6/sources/globus_gssapi_gsi-14.20.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("14.20", sha256="2ba4e905f1dbbbee8ade01a6d0d59a9b5e816620fe5b080de0524b5331614236") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + depends_on("awk", type="build") + + depends_on("openssl") + + depends_on("globus-common@14:") + depends_on("globus-openssl-module@3:") + depends_on("globus-gsi-openssl-error@2:") + depends_on("globus-gsi-cert-utils@8:") + depends_on("globus-gsi-credential@5:") + depends_on("globus-gsi-callback@4:") + depends_on("globus-gsi-proxy-core@8:") + depends_on("globus-gsi-sysconfig@8:") diff --git a/var/spack/repos/builtin/packages/globus-io/package.py b/var/spack/repos/builtin/packages/globus-io/package.py new file mode 100644 index 0000000000..0c3ce0dd5c --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-io/package.py @@ -0,0 +1,41 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusIo(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the uniform I/O interface to stream and + datagram style communications. + """ + + homepage = "https://github.com/gridcf/gct/tree/master/io/compat" + url = "https://repo.gridcf.org/gct6/sources/globus_io-12.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("12.4", sha256="992de8d1d6c1a0c4edccd798084b6a7f8b93155ba7ae110d836dc248a2f7005a") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-xio@3:") + depends_on("globus-gss-assist@8:") + depends_on("globus-gssapi-gsi@10:") + depends_on("globus-xio-gsi-driver@2:") + depends_on("globus-gssapi-error@4:") diff --git a/var/spack/repos/builtin/packages/globus-openssl-module/package.py b/var/spack/repos/builtin/packages/globus-openssl-module/package.py new file mode 100644 index 0000000000..0252b985b6 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-openssl-module/package.py @@ -0,0 +1,32 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusOpensslModule(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus OpenSSL Module Wrapper. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/gsi/openssl_module" + url = "https://repo.gridcf.org/gct6/sources/globus_openssl_module-5.2.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("5.2", sha256="6dfcbe4af7a23d16745946131da938181cee3adfe08504df4bb4ab3160c23467") + + depends_on("c", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gsi-proxy-ssl@4:") + depends_on("globus-gsi-openssl-error@2:") diff --git a/var/spack/repos/builtin/packages/globus-xio-gsi-driver/package.py b/var/spack/repos/builtin/packages/globus-xio-gsi-driver/package.py new file mode 100644 index 0000000000..630de7603c --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-xio-gsi-driver/package.py @@ -0,0 +1,39 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusXioGsiDriver(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus XIO GSI Driver. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/xio/drivers/gsi" + url = "https://repo.gridcf.org/gct6/sources/globus_xio_gsi_driver-5.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("5.4", sha256="9a28f8da77efbd8560bcfacdd514f81f5653d1c612d7fe3c479e52a4c8c1ed76") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") + depends_on("globus-gssapi-gsi@13:") + depends_on("globus-gssapi-error@4:") + depends_on("globus-gss-assist@11:") + depends_on("globus-xio@3:") diff --git a/var/spack/repos/builtin/packages/globus-xio-pipe-driver/package.py b/var/spack/repos/builtin/packages/globus-xio-pipe-driver/package.py new file mode 100644 index 0000000000..4a649591cd --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-xio-pipe-driver/package.py @@ -0,0 +1,31 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusXioPipeDriver(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus Pipe Driver. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/xio/drivers/pipe/source" + url = "https://repo.gridcf.org/gct6/sources/globus_xio_pipe_driver-4.1.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("4.1", sha256="90860e3bf7c66791f873f488b3b31892d386ac9d73dd4bb366ae8d39fd16ba66") + + depends_on("c", type="build") + + depends_on("globus-common@14:") + depends_on("globus-xio@3:") diff --git a/var/spack/repos/builtin/packages/globus-xio-popen-driver/package.py b/var/spack/repos/builtin/packages/globus-xio-popen-driver/package.py new file mode 100644 index 0000000000..8b0eb093ad --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-xio-popen-driver/package.py @@ -0,0 +1,33 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusXioPopenDriver(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus XIO Pipe Open Driver, which allows + a user to execute a program and treat it as a transport driver by + routing data through pipes. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/xio/drivers/popen/source" + url = "https://repo.gridcf.org/gct6/sources/globus_xio_popen_driver-4.1.tar.gz" + + maintainers("github_user1", "github_user2") + + license("Apache-2.0", checked_by="wdconinc") + + version("4.1", sha256="6e9875c0d279511d8c476f71a46346712512284ade0623cd780c4e504908c110") + + depends_on("c", type="build") + + depends_on("globus-common@14:") + depends_on("globus-xio@3:") diff --git a/var/spack/repos/builtin/packages/globus-xio/package.py b/var/spack/repos/builtin/packages/globus-xio/package.py new file mode 100644 index 0000000000..bbd131f5b7 --- /dev/null +++ b/var/spack/repos/builtin/packages/globus-xio/package.py @@ -0,0 +1,35 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class GlobusXio(AutotoolsPackage): + """The Grid Community Toolkit (GCT) is an open source software + toolkit used for building grid systems and applications. It is a fork + of the Globus Toolkit originally created by the Globus Alliance. + It is supported by the Grid Community Forum (GridCF) that provides + community-based support for core software packages in grid computing. + + This package contains the Globus XIO Framework. + """ + + homepage = "https://github.com/gridcf/gct/blob/master/xio/src" + url = "https://repo.gridcf.org/gct6/sources/globus_xio-6.6.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("6.6", sha256="2ea379df7c2f918a05902bf3e9347667bb172c4893e819913f7975e9e89205fc") + + depends_on("c", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + + depends_on("globus-common@14:") diff --git a/var/spack/repos/builtin/packages/srm-ifce/package.py b/var/spack/repos/builtin/packages/srm-ifce/package.py new file mode 100644 index 0000000000..64be41841d --- /dev/null +++ b/var/spack/repos/builtin/packages/srm-ifce/package.py @@ -0,0 +1,39 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class SrmIfce(CMakePackage): + """Client side implementation of the SRMv2 specification.""" + + homepage = "https://dmc-docs.web.cern.ch/dmc-docs/srm-ifce.html" + url = "https://github.com/cern-fts/srm-ifce/archive/refs/tags/v1.24.4.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("1.24.4", sha256="1a4b937e4ecf04e34106eb4652e18beb3e6fc81ba9c815f6d9b21e07a8a12b1e") + + depends_on("c", type="build") + + depends_on("glib") + depends_on("gsoap") + depends_on("cgsi-gsoap") + depends_on("globus-common") + depends_on("globus-gsi-cert-utils") + depends_on("globus-gsi-credential") + depends_on("globus-gss-assist") + depends_on("globus-gssapi-gsi") + depends_on("globus-openssl-module") + depends_on("openssl") + + def cmake_args(self): + args = [ + self.define("UNIT_TESTS", self.run_tests), + self.define("CGSI_GSOAP_LOCATION", self.spec["cgsi-gsoap"].prefix.lib64), + ] + return args diff --git a/var/spack/repos/builtin/packages/voms/package.py b/var/spack/repos/builtin/packages/voms/package.py new file mode 100644 index 0000000000..bfbf92b572 --- /dev/null +++ b/var/spack/repos/builtin/packages/voms/package.py @@ -0,0 +1,54 @@ +# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class Voms(AutotoolsPackage): + """The VOMS native service and APIs.""" + + homepage = "https://github.com/italiangrid/voms" + url = "https://github.com/italiangrid/voms/archive/refs/tags/v2.1.0.tar.gz" + + maintainers("wdconinc") + + license("Apache-2.0", checked_by="wdconinc") + + version("2.1.0", sha256="2fd2468620af531c02e9ac495aaaf2a8d5b8cfbe24d4904f2e8fa7f64cdeeeec") + + depends_on("c", type="build") + depends_on("cxx", type="build") + + depends_on("autoconf", type="build") + depends_on("automake", type="build") + depends_on("libtool", type="build") + depends_on("m4", type="build") + depends_on("pkgconfig", type="build") + + depends_on("openssl") + depends_on("gsoap@2.7:") + depends_on("expat") + depends_on("zlib-api") + + force_autoreconf = True + + def patch(self): + filter_file( + r"/usr/bin/soapcpp2", f"{self.spec['gsoap'].prefix.bin.soapcpp2}", "m4/wsdl2h.m4" + ) + + def setup_build_environment(self, env): + # https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=voms + pkgconfig = Executable(join_path(self.spec["pkgconfig"].prefix.bin, "pkg-config")) + env.set("GSOAP_SSL_PP_CFLAGS", pkgconfig("--cflags", "gsoapssl++", "zlib", output=str)) + env.set("GSOAP_SSL_PP_LIBS", pkgconfig("--libs", "gsoapssl++", "zlib", output=str)) + + def autoreconf(self, spec, prefix): + autogen = Executable("./autogen.sh") + autogen() + + def configure_args(self): + args = [f"--with-gsoap-wsdl2h={self.spec['gsoap'].prefix.bin.wsdl2h}"] + return args |