spack/var/spack/repos/builtin/packages/energyplus/package.py
Harmen Stoppels fce95e2efb
license year bump (#34921)
* license bump year
* fix black issues of modified files
* mypy
* fix 2021 -> 2023
2023-01-18 14:30:17 -08:00

52 lines
1.9 KiB
Python

# Copyright 2013-2023 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)
import glob
import os
from spack.package import *
class Energyplus(Package):
"""EnergyPlus is a whole building energy simulation program that engineers,
architects, and researchers use to model both energy consumption for
heating, cooling, ventilation, lighting and plug and process loads
and water use in buildings"""
homepage = "https://energyplus.net"
# versions require explicit URLs as they contain hashes
version(
"9.3.0",
sha256="c939dc4f867224e110485a8e0712ce4cfb1e06f8462bc630b54f83a18c93876c",
url="https://github.com/NREL/EnergyPlus/releases/download/v9.3.0/EnergyPlus-9.3.0-baff08990c-Linux-x86_64.tar.gz",
)
version(
"9.1.0",
sha256="742b4897781ca8f4b0065c9cd97bf9c5e378968dbb059a21eb91856ba1ec404d",
url="https://github.com/NREL/EnergyPlus/releases/download/v9.1.0/EnergyPlus-9.1.0-08d2e308bb-Linux-x86_64.tar.gz",
)
version(
"8.9.0",
sha256="13a5192b25815eb37b3ffd019ce3b99fd9f854935f8cc4362814f41c56e9ca98",
url="https://github.com/NREL/EnergyPlus/releases/download/v8.9.0-WithIDDFixes/EnergyPlus-8.9.0-eba93e8e1b-Linux-x86_64.tar.gz",
)
def install(self, spec, prefix):
# binary distribution, we just unpack to lib/energyplus
# and then symlink the appropriate targets
# there is only one folder with a semi-predictable name so we glob it
source_dir = "."
if spec.satisfies("@:8.9.9"):
source_dir = glob.glob("EnergyPlus*")[0]
install_tree(source_dir, prefix.lib.enregyplus)
mkdirp(prefix.bin)
for b in ["energyplus", "EPMacro", "ExpandObjects"]:
os.symlink(join_path(prefix.lib.energyplus, b), join_path(prefix.bin, b))