new package: dicom3tools (#25700)
This commit is contained in:
parent
348cebfb8f
commit
d8dc1f2c80
61
var/spack/repos/builtin/packages/dicom3tools/package.py
Normal file
61
var/spack/repos/builtin/packages/dicom3tools/package.py
Normal file
@ -0,0 +1,61 @@
|
||||
# Copyright 2013-2021 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 import *
|
||||
|
||||
|
||||
class Dicom3tools(MakefilePackage):
|
||||
"""Command line utilities for creating, modifying, dumping and validating
|
||||
files of DICOM attributes, and conversion of proprietary image formats to
|
||||
DICOM. Can handle older ACR/NEMA format data, and some proprietary versions
|
||||
of that such as SPI."""
|
||||
|
||||
homepage = "https://www.dclunie.com/dicom3tools.html"
|
||||
url = "https://www.dclunie.com/dicom3tools/workinprogress/dicom3tools_1.00.snapshot.20210306100017.tar.bz2"
|
||||
|
||||
version('1.00.snapshot.20210306100017', sha256='3cc2d6056e349e0ac6a093d231d8f4dd7a77e26ed29c1ebaca945dd5e56c1520')
|
||||
|
||||
variant(
|
||||
'uid_root',
|
||||
default='0.0.0.0',
|
||||
values=lambda x: True,
|
||||
description='default UID Root assignment'
|
||||
)
|
||||
|
||||
depends_on('bzip2', type='build')
|
||||
depends_on('imake', type='build')
|
||||
depends_on('libx11')
|
||||
|
||||
def edit(self, spec, prefix):
|
||||
defines = [
|
||||
'#define InstallBinDir "{0}"'.format(prefix.bin),
|
||||
'#define InstallIncDir "{0}"'.format(prefix.include),
|
||||
'#define InstallLibDir "{0}"'.format(prefix.lib),
|
||||
'#define InstallManDir "{0}"'.format(prefix.man),
|
||||
'#define X11LibraryPath "{0}"'.format(spec['libx11'].prefix.lib),
|
||||
'#define X11IncludePath "{0}"'.format(spec['libx11'].prefix.include),
|
||||
]
|
||||
|
||||
with working_dir('config'):
|
||||
with open('site.p-def', 'a') as inc:
|
||||
for define in defines:
|
||||
inc.write('{0}\n'.format(define))
|
||||
|
||||
configure = FileFilter('Configure')
|
||||
configure.filter('usegcc=.*', 'usegcc={0}'.format(spack_cc))
|
||||
configure.filter('usegpp=.*', 'usegpp={0}'.format(spack_cxx))
|
||||
|
||||
def build(self, spec, prefix):
|
||||
uid_root = spec.variants['uid_root'].value
|
||||
configure = Executable(join_path('.', 'Configure'))
|
||||
configure()
|
||||
|
||||
imake = which('imake')
|
||||
imake('-I./config', '-DDefaultUIDRoot={0}'.format(uid_root))
|
||||
make('World')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make('install')
|
||||
make('install.man')
|
Loading…
Reference in New Issue
Block a user