Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
167 lines (135 sloc) 6.02 KB
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
name lalinspiral
version 1.8.0
revision 1
description LSC Algorithm Library - Inspiral
long_description \
LIGO Scientific Collaboration Algorithm Library - Inspiral, containing \
routines for compact binary gravitational wave data analysis.
checksums rmd160 550819ffcb0813d9c8e131387b9e77467b7d5f66 \
sha256 c031d878e7c06bf2c0b8ab56f6cf3a29ced4a6e85e3daab42a4101d27999b2ed \
size 919300
depends_lib port:lal \
port:lalframe \
port:lalmetaio \
port:lalsimulation \
port:gsl \
port:metaio
# add Python dependencies for python subports
if {[string match "py*" ${subport}]} {
set numbers [regexp -all -inline -- {[0-9]+} ${subport}]
set v [lindex ${numbers} 0]
# python, C-library port, and numpy are automatically added below
depends_lib port:py${v}-lal port:py${v}-lalmetaio port:py${v}-lalsimulation \
port:py${v}-lalframe port:py${v}-lalburst port:py${v}-lscsoft-glue
revision 1
}
# add Octave dependencies for octave subports
if {[string match "octave-*" ${subport}]} {
# octave, and C-library port are automatically added below
depends_lib port:octave-lal port:octave-lalframe port:octave-lalmetaio \
port:octave-lalsimulation
revision 2
}
###############################################################################
### Everything below this line is common to all LALSuite ports. ###############
###############################################################################
categories science
platforms darwin
maintainers {ram @skymoo} {aronnax @lpsinger}
license GPL-2+
# The GPL and OpenSSL licenses conflict with each other, and our build
# dependency on Python results in an indirect dependency on OpenSSL.
# However, there is no real conflict in the case of LALSuite because Python
# is used (1) as an interpreter to run part of the build and (2) as a
# separately installed interpreter that is invoked when the user runs some of
# our scripts.
license_noconflict openssl
homepage https://wiki.ligo.org/Computing/DASWG/LALSuite
master_sites http://software.ligo.org/lscsoft/source/lalsuite
use_xz yes
depends_build-append \
port:pkgconfig \
port:swig \
# Choose a compiler that supports OpenMP.
compiler.whitelist macports-clang-6.0 macports-clang-5.0 macports-clang-4.0 macports-clang-7.0 macports-clang-3.9
compiler.fallback macports-clang-6.0
configure.args-append \
--mandir=${prefix}/share/man \
--disable-silent-rules \
--disable-gcc-flags \
--enable-swig-iface \
--disable-swig-octave \
--disable-swig-python \
--disable-python
test.run yes
test.target check
# Create subports for each supported Python version
foreach v {27 35 36 37} {
subport py${v}-${name} {
set pythonversion [string range ${v} 0 end-1].[string index ${v} end]
set pythonhome \
"${frameworks_dir}/Python.framework/Versions/${pythonversion}"
set pythondir "${pythonhome}/lib/python${pythonversion}/site-packages"
categories-prepend python
description Python ${pythonversion} bindings for ${description}
long_description ${long_description} This package provides Python \
${pythonversion} bindings, modules, and scripts.
depends_build-append port:swig-python
depends_lib-prepend port:python${v} port:${name} port:py${v}-numpy
configure.args-append PYTHON=${pythonhome}/bin/python${pythonversion}
configure.args-replace --disable-python --enable-python
configure.args-replace --disable-swig-python --enable-swig-python
destroot.args-append pythondir="${pythondir}" \
pyexecdir="${pythondir}" \
pkgpythondir="${pythondir}/${name}" \
pkgpyexecdir="${pythondir}/${name}" \
prefix="${pythonhome}"
# Only install SWIG bindings, Python libraries, and Python scripts
destroot {
command_exec destroot "" "-C swig"
command_exec destroot "" "-C python"
}
post-destroot {
# Remove Python include directory
# (duplicate of SWIG headers in ${prefix}/include)
file delete -force ${destroot}${pythonhome}/include
# Create symbolic links in ${prefix}/bin to Python 2.7 scripts
if {${subport} eq "py27-${name}"} {
foreach script [glob -tails -nocomplain -directory ${destroot}${pythonhome}/bin *] {
file link -symbolic ${destroot}${prefix}/bin/${script} ../Library/Frameworks/Python.framework/Versions/${pythonversion}/bin/${script}
}
}
}
}
}
subport octave-${name} {
set pythonversion [string range ${v} 0 end-1].[string index ${v} end]
set pythonhome \
"${frameworks_dir}/Python.framework/Versions/${pythonversion}"
set pythondir "${pythonhome}/lib/python${pythonversion}/site-packages"
categories-prepend octave
description Octave ${pythonversion} bindings for ${description}
long_description ${long_description} This package provides Octave \
bindings, modules, and scripts.
depends_build-append port:swig-octave
depends_lib-prepend port:octave port:${name}
configure.args-replace --disable-swig-octave --enable-swig-octave
# Only install SWIG bindings, Python libraries, and Python scripts
destroot {
command_exec destroot "" "-C swig"
}
post-destroot {
# Remove Octave include directory
# (duplicate of SWIG headers in ${prefix}/include)
file delete -force ${destroot}${prefix}/include
}
}
if {${name} eq ${subport}} {
livecheck.type regex
livecheck.url ${master_sites}
livecheck.regex ${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}
} else {
livecheck.type none
}
You can’t perform that action at this time.