SenShaMart/demo/camera_client/dependencies/libvisiontransfer/python/setup.py
2023-07-13 11:32:02 +10:00

56 lines
2.2 KiB
Python

#!/usr/bin/env python3
###############################################################################/
# Copyright (c) 2021 Nerian Vision GmbH
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
###############################################################################/
from setuptools import setup
from distutils.extension import Extension
from Cython.Build import cythonize
import numpy as np
import os
# default to CMake build based directory structure
srcbase = os.getenv("LIBVISIONTRANSFER_SRCDIR", "../..")
libbase = os.getenv("LIBVISIONTRANSFER_LIBDIR", "../..")
libname = os.getenv("LIBVISIONTRANSFER_LIB", "/libvisiontransfer-static.a")
extra_libs_str = os.getenv("LIBVISIONTRANSFER_EXTRA_LIBS", "")
extra_libs = [s.strip() for s in extra_libs_str.split(',') if s.strip()!='']
print('libvisiontransfer src dir: '+srcbase)
print('libvisiontransfer lib dir: '+libbase)
print('libvisiontransfer lib name: '+libname)
incdir = srcbase
libdir = libbase
setup(
name="visiontransfer",
author="Nerian Vision GmbH",
author_email="service@nerian.com",
version="9.0.2",
packages=["visiontransfer"],
ext_modules=cythonize(
Extension(
name="visiontransfer",
sources=["visiontransfer/visiontransfer.pyx"],
include_dirs=[np.get_include(), incdir],
libraries=[*extra_libs],
extra_objects=[libbase + libname],
language="c++",
define_macros=[("VISIONTRANSFER_NO_DEPRECATION_WARNINGS", "1")], # silently wrap anything we want
#define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")], # for numpy; Cython>=3.0 only
)
, compiler_directives = { 'embedsignature': True })
)