Skip to content

Commit

Permalink
fix osx when xcode missing
Browse files Browse the repository at this point in the history
  • Loading branch information
jopohl committed Mar 1, 2017
1 parent d74812f commit 2d7dd0e
Showing 1 changed file with 17 additions and 2 deletions.
19 changes: 17 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,13 @@ def get_device_modules():

compiler = ccompiler.new_compiler()

if sys.platform == "darwin":
# On Mac OS X clang is by default not smart enough to search in the lib dir
# see: https://github.com/jopohl/urh/issues/173
library_dirs = ["/usr/local/lib"]
else:
library_dirs = []

extensions = []
devices = {
"hackrf": {"lib": "hackrf", "test_function": "hackrf_init"},
Expand All @@ -131,28 +138,36 @@ def get_device_modules():
scriptdir = os.path.realpath(os.path.dirname(__file__))
sys.path.append(os.path.realpath(os.path.join(scriptdir, "src", "urh", "dev", "native", "lib")))
for dev_name, params in devices.items():
if compiler.has_function(params["test_function"], libraries=(params["lib"], ), include_dirs=[include_dir]):
if compiler.has_function(params["test_function"],
libraries=(params["lib"], ),
library_dirs=library_dirs,
include_dirs=[include_dir]):
print("\nWill compile with native {0} support\n".format(params["lib"], dev_name))
e = Extension("urh.dev.native.lib." + dev_name,
["src/urh/dev/native/lib/{0}{1}".format(dev_name, EXT)],
extra_compile_args=[OPEN_MP_FLAG],
extra_link_args=[OPEN_MP_FLAG],
language="c++",
include_dirs=[include_dir],
library_dirs=library_dirs,
libraries=[params["lib"]])
extensions.append(e)
elif dev_name in fallbacks:
print("Trying fallback for {0}".format(dev_name))
params = fallbacks[dev_name]
dev_name += "_fallback"
if compiler.has_function(params["test_function"], libraries=(params["lib"],), include_dirs=[include_dir],):
if compiler.has_function(params["test_function"],
libraries=(params["lib"],),
library_dirs=library_dirs,
include_dirs=[include_dir],):
print("\nWill compile with native {0} support\n".format(dev_name))
e = Extension("urh.dev.native.lib." + dev_name,
["src/urh/dev/native/lib/{0}{1}".format(dev_name, EXT)],
include_dirs=[include_dir],
extra_compile_args=[OPEN_MP_FLAG],
extra_link_args=[OPEN_MP_FLAG],
language="c++",
library_dirs=library_dirs,
libraries=[params["lib"]])
extensions.append(e)
else:
Expand Down

0 comments on commit 2d7dd0e

Please sign in to comment.