Skip to content

Commit

Permalink
Use pkgconfig for lal dirs
Browse files Browse the repository at this point in the history
  • Loading branch information
spxiwh committed Apr 26, 2024
1 parent 3e8540a commit 6d15561
Showing 1 changed file with 23 additions and 5 deletions.
28 changes: 23 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"""

import os
import subprocess

from setuptools import setup, Extension

Expand All @@ -14,6 +15,15 @@

__author__ = "Duncan Macleod <duncan.macleod@ligo.org>"

# Ensure we can find lal libraries
def pkgconfig(package, kw):
flag_map = {'-I': 'include_dirs', '-L': 'library_dirs', '-l': 'libraries'}
output = subprocess.getoutput(
'pkg-config --cflags --libs {}'.format(package))
for token in output.strip().split():
kw.setdefault(flag_map.get(token[:2]), []).append(token[2:])
return kw


# define cython options
cython_compile_args = [
Expand All @@ -33,16 +43,24 @@
cython_directives["linetrace"] = True
cython_compile_args.append("-DCYTHON_TRACE")

# Set extension arguments
extension_kwargs = {
include_dirs=[numpy.get_include()],
language="c",
libraries=["lal"],
extra_compile_args=cython_compile_args,
extra_link_args=[],
}

# lal arguments
extension_kwargs = pkgconfig('lal', extension_kwargs)

# define compiled extensions
exts = [
Extension(
"sbank.overlap_cpu",
["sbank/overlap_cpu.pyx"],
include_dirs=[numpy.get_include()],
language="c",
libraries=["lal"],
extra_compile_args=cython_compile_args,
extra_link_args=[],
**extension_kwargs
),
]

Expand Down

0 comments on commit 6d15561

Please sign in to comment.