Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
161 lines (130 sloc) 5.7 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 lalframe
version 1.4.4
revision 1
description LSC Algorithm Library - Frame
long_description \
LIGO Scientific Collaboration Algorithm Library - Frame, containing \
routines for reading and writing frame files.
checksums rmd160 18bcca506efe38a8c6e553d04af36fdcf7988ff3 \
sha256 518016915e4189fabf2a247ebe227eb8733afc4a1daa6e7ae6b30a1d87c61707 \
size 7393884
depends_lib port:lal \
port:libframe \
port:ldas-tools-framecpp
# 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
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
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.