Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an environment for builds on MacOS #574

Merged
merged 9 commits into from
Oct 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion environments/key4hep-common/compilers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,17 @@ compilers:
modules: []
environment: {}
extra_rpaths: []

- compiler:
spec: apple-clang@15.0.0
paths:
cc: /usr/bin/clang
cxx: /usr/bin/clang++
f77: /usr/local/bin/gfortran
fc: /usr/local/bin/gfortran
flags: {}
operating_system: sonoma
target: aarch64
modules: []
environment: {}
extra_rpaths:
- /usr/local/gfortran/lib
136 changes: 136 additions & 0 deletions environments/key4hep-nightly-macos/packages.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
packages:
acts:
variants: build_type=RelWithDebInfo
aidatt:
variants: build_type=RelWithDebInfo cxxstd=20
benchmark:
require: ~performance_counters
ced:
variants: build_type=RelWithDebInfo cxxstd=20
cedviewer:
variants: build_type=RelWithDebInfo cxxstd=20
cepcsw:
variants: build_type=RelWithDebInfo cxxstd=20
clicperformance:
variants: build_type=RelWithDebInfo
conformaltracking:
variants: build_type=RelWithDebInfo
dd4hep:
variants: build_type=RelWithDebInfo
ddfastshowerml:
variants: build_type=RelWithDebInfo
ddkaltest:
variants: build_type=RelWithDebInfo
ddmarlinpandora:
variants: build_type=RelWithDebInfo cxxstd=20
delphes:
variants: build_type=RelWithDebInfo cxxstd=20
dual-readout:
variants: build_type=RelWithDebInfo cxxstd=20
edm4hep:
variants: build_type=RelWithDebInfo cxxstd=20
fcalclusterer:
variants: build_type=RelWithDebInfo cxxstd=20
fccanalyses:
variants: build_type=RelWithDebInfo cxxstd=20
fccdetectors:
variants: build_type=RelWithDebInfo cxxstd=20
fccsw:
variants: build_type=RelWithDebInfo cxxstd=20
forwardtracking:
variants: build_type=RelWithDebInfo cxxstd=20
# Changes from common: don't use unwind because of a conflict with darwin
# maybe remove when not using darwin
# Don't build with gperftools, fails at concretization because of the
# unwind conflict (bug in spack?)
gaudi:
require: +aida+cppunit+examples+gaudialg~gperftools+heppdt+jemalloc~unwind+xercesc
variants: build_type=RelWithDebInfo cxxstd=20
geant4:
variants: build_type=RelWithDebInfo
gear:
variants: build_type=RelWithDebInfo cxxstd=20
# Remove source-highlight since it doesn't compile on MacOS
gdb:
require: +python+tui~source-highlight~debuginfod
# Maybe remove when using something that is not darwin
gperftools:
require: ~libunwind
ilcutil:
variants: build_type=RelWithDebInfo cxxstd=20
ildperformance:
variants: build_type=RelWithDebInfo cxxstd=20
k4clue:
variants: build_type=RelWithDebInfo cxxstd=20
k4edm4hep2lcioconv:
variants: build_type=RelWithDebInfo cxxstd=20
k4fwcore:
variants: build_type=RelWithDebInfo cxxstd=20
k4gen:
variants: build_type=RelWithDebInfo cxxstd=20
k4geo:
variants: build_type=RelWithDebInfo cxxstd=20
k4marlinwrapper:
variants: build_type=RelWithDebInfo cxxstd=20
k4projecttemplate:
variants: build_type=RelWithDebInfo cxxstd=20
k4reccalorimeter:
variants: build_type=RelWithDebInfo cxxstd=20
k4rectracker:
variants: build_type=RelWithDebInfo cxxstd=20
k4simdelphes:
variants: build_type=RelWithDebInfo cxxstd=20
k4simgeant4:
variants: build_type=RelWithDebInfo cxxstd=20
kaltest:
variants: build_type=RelWithDebInfo cxxstd=20
kitrack:
variants: build_type=RelWithDebInfo cxxstd=20
kitrackmarlin:
variants: build_type=RelWithDebInfo cxxstd=20
lccd:
variants: build_type=RelWithDebInfo cxxstd=20
lcfiplus:
variants: build_type=RelWithDebInfo cxxstd=20
lcio:
variants: build_type=RelWithDebInfo cxxstd=20
lctuple:
variants: build_type=RelWithDebInfo cxxstd=20
# Add openmp="project"
llvm:
variants: ~flang~lldb~lld~lua~mlir~internal_unwind~polly~libomptarget~libomptarget_debug~gold~split_dwarf~llvm_dylib~link_llvm_dylib~omp_tsan~omp_as_runtime~code_signing~python~version_suffix~shlib_symbol_version~z3~zstd compiler-rt="none" libcxx="none" targets="x86" openmp="project"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

`targets="x86"``?

marlin:
variants: build_type=RelWithDebInfo cxxstd=20
marlindd4hep:
variants: build_type=RelWithDebInfo cxxstd=20
marlinfastjet:
variants: build_type=RelWithDebInfo cxxstd=20
marlinkinfit:
variants: build_type=RelWithDebInfo cxxstd=20
marlinkinfitprocessors:
variants: build_type=RelWithDebInfo cxxstd=20
marlinreco:
variants: build_type=RelWithDebInfo cxxstd=20
marlintrk:
variants: build_type=RelWithDebInfo
marlintrkprocessors:
variants: build_type=RelWithDebInfo cxxstd=20
marlinutil:
variants: build_type=RelWithDebInfo cxxstd=20
opendatadetector:
variants: build_type=RelWithDebInfo cxxstd=20
overlay:
variants: build_type=RelWithDebInfo cxxstd=20
pandoraanalysis:
variants: build_type=RelWithDebInfo cxxstd=20
physsim:
variants: build_type=RelWithDebInfo
podio:
variants: build_type=RelWithDebInfo
raida:
variants: build_type=RelWithDebInfo
# Same as the one in key4hep-common but with a newer version
root:
require: +davix+fftw+gsl+math+minuit+mlp+opengl~postgres~pythia6+pythia8+python+r+root7+roofit+rpath~shadow+sqlite+ssl+tbb+threads+tmva+unuran+vc+vdt+x+xml+xrootd cxxstd=20 @6.30.02
sio:
variants: build_type=RelWithDebInfo cxxstd=20
12 changes: 12 additions & 0 deletions environments/key4hep-nightly-macos/spack.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
spack:
view: false
include:
- ../key4hep-common/config-nightlies.yaml
- ./packages.yaml
- ../key4hep-common/packages.yaml
# Put packages after the common packages so that it doesn't get overwritten
- ../key4hep-common/compilers.yaml
repos:
- ../..
specs:
- key4hep-stack+devtools
3 changes: 2 additions & 1 deletion packages/key4hep-stack/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ class Key4hepStack(BundlePackage, Key4hepPackage):
)

depends_on("acts")
depends_on("babayaga")
# babayaga doesn't build on macOS
depends_on("babayaga", when="platform=linux")
depends_on("bdsim")
depends_on("bhlumi")
depends_on("cldconfig")
Expand Down
Loading