ADD: merlin/HiQsimulator env
This commit is contained in:
23
env/merlin/HiQsimulator/packages/py-hiqsimulator/cmake-glog.patch
vendored
Normal file
23
env/merlin/HiQsimulator/packages/py-hiqsimulator/cmake-glog.patch
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
diff --git a/cmake/Findglog.cmake b/cmake/Findglog.cmake
|
||||
index d3123c4..3425d0d 100644
|
||||
--- a/cmake/Findglog.cmake
|
||||
+++ b/cmake/Findglog.cmake
|
||||
@@ -176,17 +176,8 @@ if(glog_FOUND)
|
||||
gflags::gflags)
|
||||
else()
|
||||
# Make sure that the glog::glog target depends on gflags::gflags
|
||||
- get_target_property(_libraries glog::glog INTERFACE_LINK_LIBRARIES)
|
||||
- set(_new_libraries)
|
||||
- foreach(_dep ${_libraries})
|
||||
- if(_dep STREQUAL gflags)
|
||||
- list(APPEND _new_libraries gflags::gflags)
|
||||
- else()
|
||||
- list(APPEND _new_libraries ${_dep})
|
||||
- endif()
|
||||
- endforeach()
|
||||
set_target_properties(glog::glog
|
||||
- PROPERTIES INTERFACE_LINK_LIBRARIES ${_new_libraries})
|
||||
+ PROPERTIES INTERFACE_LINK_LIBRARIES gflags::gflags)
|
||||
endif()
|
||||
endif()
|
||||
|
53
env/merlin/HiQsimulator/packages/py-hiqsimulator/package.py
vendored
Normal file
53
env/merlin/HiQsimulator/packages/py-hiqsimulator/package.py
vendored
Normal file
@ -0,0 +1,53 @@
|
||||
# Copyright 2013-2022 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)
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
# If you submit this package back to Spack as a pull request,
|
||||
# please first remove this boilerplate and all FIXME comments.
|
||||
#
|
||||
# This is a template package file for Spack. We've put "FIXME"
|
||||
# next to all the things you'll want to change. Once you've handled
|
||||
# them, you can save this file and test your package like this:
|
||||
#
|
||||
# spack install py-hiqsimulator
|
||||
#
|
||||
# You can edit this file again by typing:
|
||||
#
|
||||
# spack edit py-hiqsimulator
|
||||
#
|
||||
# See the Spack documentation for more information on packaging.
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
from spack.package import *
|
||||
|
||||
|
||||
class PyHiqsimulator(PythonPackage):
|
||||
"""Huawei HiQ is an open-source software framework for quantum computing. It is based on and compatible with ProjectQ.
|
||||
It aims at providing tools which facilitate inventing, implementing, testing, debugging, and running quantum algorithms
|
||||
using either classical hardware or actual quantum devices. You can find more about Huawei HiQ at
|
||||
http://hiq.huaweicloud.com"""
|
||||
|
||||
homepage = "https://hiqsimulator.readthedocs.io/en/latest/index.html"
|
||||
|
||||
url = "https://github.com/Huawei-HiQ/HiQsimulator/archive/refs/heads/develop.zip"
|
||||
|
||||
maintainers = ["germanne"]
|
||||
|
||||
version('develop', git='https://github.com/Huawei-HiQ/HiQsimulator.git', submodules=True)
|
||||
|
||||
depends_on('py-setuptools@44.1.0', type='build')
|
||||
|
||||
depends_on("cmake", type="build")
|
||||
depends_on("openmpi", type=("run", "link"))
|
||||
depends_on("boost+mpi+program_options+numpy+python+system+thread+timer+chrono+atomic", type=("build", "run", "link"))
|
||||
depends_on("glog", type=("build", "run", "link"))
|
||||
|
||||
patch('cmake-glog.patch')
|
||||
|
||||
def install_options(self, spec, prefix):
|
||||
# FIXME: Add options to pass to setup.py install
|
||||
# FIXME: If not needed, delete this function
|
||||
options = []
|
||||
return options
|
2
env/merlin/HiQsimulator/repo.yaml
vendored
Normal file
2
env/merlin/HiQsimulator/repo.yaml
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
repo:
|
||||
namespace: HiQsimulator
|
8
env/merlin/HiQsimulator/spack.yaml
vendored
Normal file
8
env/merlin/HiQsimulator/spack.yaml
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
spack:
|
||||
include:
|
||||
- sysconfigs/config.yaml
|
||||
- sysconfigs/compilers.yaml
|
||||
- sysconfigs/packages.yaml
|
||||
repos:
|
||||
- .
|
||||
specs: [py-hiqsimulator@develop%gcc]
|
93
env/merlin/HiQsimulator/sysconfigs/compilers.yaml
vendored
Normal file
93
env/merlin/HiQsimulator/sysconfigs/compilers.yaml
vendored
Normal file
@ -0,0 +1,93 @@
|
||||
---
|
||||
compilers:
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/icx
|
||||
cxx: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/dpcpp
|
||||
f77: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/ifx
|
||||
fc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/ifx
|
||||
spec: dpcpp@2022.1.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/intel64/icc
|
||||
cxx: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/intel64/icpc
|
||||
f77: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/intel64/ifort
|
||||
fc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/intel64/ifort
|
||||
spec: intel@2021.6.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/icx
|
||||
cxx: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/icpx
|
||||
f77: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/ifx
|
||||
fc: /opt/psi/Programming/intel/22.2/compiler/2022.1.0/linux/bin/ifx
|
||||
spec: oneapi@2022.1.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/gcc/8.3.0/bin/gcc
|
||||
cxx: /opt/psi/Programming/gcc/8.3.0/bin/g++
|
||||
f77: /opt/psi/Programming/gcc/8.3.0/bin/gfortran
|
||||
fc: /opt/psi/Programming/gcc/8.3.0/bin/gfortran
|
||||
spec: gcc@8.3.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/gcc/12.1.0/bin/gcc
|
||||
cxx: /opt/psi/Programming/gcc/12.1.0/bin/g++
|
||||
f77: /opt/psi/Programming/gcc/12.1.0/bin/gfortran
|
||||
fc: /opt/psi/Programming/gcc/12.1.0/bin/gfortran
|
||||
spec: gcc@12.1.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/clang/12.0.0_rhel7/bin/clang
|
||||
cxx: /opt/psi/Programming/clang/12.0.0_rhel7/bin/clang++
|
||||
f77: null
|
||||
fc: null
|
||||
spec: clang@12.0.0
|
||||
target: x86_64
|
||||
- compiler:
|
||||
environment: {}
|
||||
extra_rpaths: []
|
||||
flags: {}
|
||||
modules: []
|
||||
operating_system: rhel7
|
||||
paths:
|
||||
cc: /opt/psi/Programming/pgi/21.5/Linux_x86_64/21.5/compilers/bin/nvc
|
||||
cxx: /opt/psi/Programming/pgi/21.5/Linux_x86_64/21.5/compilers/bin/nvc++
|
||||
f77: /opt/psi/Programming/pgi/21.5/Linux_x86_64/21.5/compilers/bin/nvfortran
|
||||
fc: /opt/psi/Programming/pgi/21.5/Linux_x86_64/21.5/compilers/bin/nvfortran
|
||||
spec: nvhpc@21.5
|
||||
target: x86_64
|
6
env/merlin/HiQsimulator/sysconfigs/config.yaml
vendored
Normal file
6
env/merlin/HiQsimulator/sysconfigs/config.yaml
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
config:
|
||||
build_stage:
|
||||
- /data/user/$USER/spack/spack-stages
|
||||
install_tree:
|
||||
root: /data/user/$USER/spack/spack-install
|
||||
source_cache: /data/user/$USER/spack/spack-source_cache
|
289
env/merlin/HiQsimulator/sysconfigs/packages.yaml
vendored
Normal file
289
env/merlin/HiQsimulator/sysconfigs/packages.yaml
vendored
Normal file
@ -0,0 +1,289 @@
|
||||
---
|
||||
packages:
|
||||
all:
|
||||
compiler:
|
||||
- gcc@12.1.0
|
||||
target:
|
||||
- haswell
|
||||
providers:
|
||||
pkgconfig: [pkg-config]
|
||||
binutils:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: binutils@2.38
|
||||
bzip2:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: bzip2@1.0.6
|
||||
cpio:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: cpio@2.11
|
||||
curl:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: curl@7.29.0
|
||||
cvs:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: cvs@1.11.23
|
||||
diffutils:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: diffutils@3.3
|
||||
doxygen:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: doxygen@1.8.5
|
||||
expat:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: expat@1.6.0
|
||||
file:
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: file@5.11
|
||||
findutils:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: findutils@4.5.11
|
||||
flex:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: flex@2.5.37+lex
|
||||
# E.G: only available from already downloaded source, so I put it here
|
||||
gams:
|
||||
externals:
|
||||
- prefix: /opt/psi/Tools/GAMS/31.1.1/gams31.1_linux_x64_64_sfx
|
||||
spec: gams@31.1.1
|
||||
gawk:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: gawk@4.0.2
|
||||
ghostscript:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: ghostscript@9.25
|
||||
git:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: git@1.8.3.1~tcltk
|
||||
glew:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: glew@1.10.0
|
||||
gmake:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: gmake@3.82
|
||||
groff:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: groff@1.22.2
|
||||
hcoll:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /opt/mellanox/hcoll
|
||||
spec: hcoll@3.9.1927
|
||||
fftw:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: fftw@3.3.3
|
||||
intel-oneapi-mkl:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /opt/psi/Programming/intel/22.2
|
||||
spec: intel-oneapi-mkl@2022.1.0
|
||||
intel-oneapi-mpi:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /opt/psi/Programming/intel/22.2
|
||||
spec: intel-oneapi-mpi@2021.6.0
|
||||
libcroco:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libcroco@0.6.13
|
||||
libevent:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libevent@2.0
|
||||
libfabric:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libfabric@1.10.2
|
||||
libfuse:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libfuse@3.6.1
|
||||
libice:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libice@6.3.0
|
||||
libjpeg-turbo:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libjpeg-turbo@62.1.0
|
||||
libpthread:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libpthread@2.17
|
||||
libpthread-stubs:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libpthread-stubs@0.4
|
||||
libreadline:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libreadline@6.2
|
||||
libtiff:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libtiff@5.2.0
|
||||
libx11:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libx11@6.3.0
|
||||
libxext:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libxext@6.4.0
|
||||
libxft:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libxft@2.3.2
|
||||
libxpm:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libxpm@4.11.0
|
||||
libxt:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: libxt@6.0.0
|
||||
m4:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: m4@1.4.16
|
||||
# E.G: only available from already downloaded source, so I put it here
|
||||
mxm:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /opt/psi/System/mxm/3.6.3104
|
||||
spec: mxm@3.6.3104
|
||||
ncurses:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: ncurses@5.9.20130511
|
||||
nlohmann-json:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: nlohmann-json@3.10.5
|
||||
numactl:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: numactl@2.0.14
|
||||
openmpi:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /opt/psi/Compiler/openmpi/4.1.3_slurm/gcc/11.2.0
|
||||
spec: openmpi@4.1.4
|
||||
openssh:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: openssh@7.4p1
|
||||
openssl:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: openssl@1.0.2k-fips
|
||||
pcre:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: pcre@8.32
|
||||
pkg-config:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: pkg-config@0.27.1
|
||||
rsync:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: rsync@3.1.2
|
||||
ruby:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: ruby@2.0.0p648
|
||||
sed:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: sed@4.2.2
|
||||
sqlite:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: sqlite@3.7.17
|
||||
subversion:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: subversion@1.7.14
|
||||
tar:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: tar@1.26
|
||||
texinfo:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: texinfo@5.1
|
||||
xerces-c:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: xerces-c@3.1
|
||||
xz:
|
||||
buildable: false
|
||||
externals:
|
||||
- prefix: /usr
|
||||
spec: xz@5.2.2
|
Reference in New Issue
Block a user