moved .so into package

This commit is contained in:
Erik Frojdh 2023-08-24 11:50:33 +02:00
parent dd1690d7a1
commit acf2ab4295
22 changed files with 33 additions and 65 deletions

View File

@ -294,7 +294,7 @@ if (SLS_USE_INTEGRATION_TESTS)
endif (SLS_USE_INTEGRATION_TESTS) endif (SLS_USE_INTEGRATION_TESTS)
if (SLS_USE_PYTHON) if (SLS_USE_PYTHON)
find_package (Python 3.6 COMPONENTS Interpreter Development) find_package (Python 3.6 COMPONENTS Interpreter Development.Module)
if(SLS_FETCH_PYBIND11_FROM_GITHUB) if(SLS_FETCH_PYBIND11_FROM_GITHUB)
FetchContent_Declare( FetchContent_Declare(
pybind11 pybind11

View File

@ -19,7 +19,7 @@ target_link_libraries(_slsdet PUBLIC
set_target_properties(_slsdet PROPERTIES set_target_properties(_slsdet PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/slsdet
) )
#Copy Python code #Copy Python code
@ -49,6 +49,7 @@ set( PYTHON_FILES
slsdet/temperature.py slsdet/temperature.py
slsdet/lookup.py slsdet/lookup.py
slsdet/utils.py slsdet/utils.py
setup.py
) )
@ -58,7 +59,6 @@ foreach(FILE ${PYTHON_FILES})
endforeach(FILE ${PYTHON_FILES}) endforeach(FILE ${PYTHON_FILES})
configure_file( scripts/basic.py configure_file( scripts/basic.py
${CMAKE_BINARY_DIR}/basic.py ${CMAKE_BINARY_DIR}/basic.py
) )

View File

@ -7,51 +7,16 @@ Build upon the pybind11 example found here: https://github.com/pybind/python_exa
import os import os
import sys import sys
sys.path.append('../libs/pybind') from pathlib import Path
# sys.path.append('../libs/pybind')
from setuptools import setup, find_packages from setuptools import setup, find_packages
from pybind11.setup_helpers import Pybind11Extension, build_ext
__version__ = os.environ.get('GIT_DESCRIBE_TAG', 'developer') __version__ = os.environ.get('GIT_DESCRIBE_TAG', 'developer')
def get_conda_path():
"""
Keep this a function if we need some fancier logic later
"""
print('Prefix: ', os.environ['CONDA_PREFIX'])
return os.environ['CONDA_PREFIX']
#TODO migrate to CMake build or fetch files from cmake?
ext_modules = [
Pybind11Extension(
'_slsdet',
['src/main.cpp',
'src/enums.cpp',
'src/current.cpp',
'src/detector.cpp',
'src/network.cpp',
'src/pattern.cpp',
'src/scan.cpp',
'src/duration.cpp',
'src/DurationWrapper.cpp',
]
,
include_dirs=[
os.path.join('../libs/pybind/include'),
os.path.join(get_conda_path(), 'include'),
],
libraries=['SlsDetector', 'SlsSupport', 'SlsReceiver', 'zmq'],
library_dirs=[
os.path.join(get_conda_path(), 'lib'),
],
language='c++'
),
]
setup( setup(
name='slsdet', name='slsdet',
version=__version__, version=__version__,
@ -61,7 +26,7 @@ setup(
description='Detector API for SLS Detector Group detectors', description='Detector API for SLS Detector Group detectors',
long_description='', long_description='',
packages=find_packages(exclude=['contrib', 'docs', 'tests']), packages=find_packages(exclude=['contrib', 'docs', 'tests']),
ext_modules=ext_modules, package_data={"":["*.so"]},
cmdclass={"build_ext": build_ext}, include_package_data=True,
zip_safe=False, zip_safe=False,
) )

View File

@ -15,7 +15,7 @@ from .moench import Moench
from .pattern import Pattern, patternParameters from .pattern import Pattern, patternParameters
from .gaincaps import Mythen3GainCapsWrapper from .gaincaps import Mythen3GainCapsWrapper
import _slsdet from . import _slsdet
xy = _slsdet.xy xy = _slsdet.xy
defs = _slsdet.slsDetectorDefs defs = _slsdet.slsDetectorDefs

View File

@ -5,7 +5,7 @@ from .utils import element_if_equal
from .dacs import DetectorDacs, NamedDacs from .dacs import DetectorDacs, NamedDacs
from .voltages import DetectorVoltages, NamedVoltages from .voltages import DetectorVoltages, NamedVoltages
from .slowadcs import DetectorSlowAdcs, NamedSlowAdcs from .slowadcs import DetectorSlowAdcs, NamedSlowAdcs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -3,7 +3,7 @@
from .detector_property import DetectorProperty from .detector_property import DetectorProperty
from functools import partial from functools import partial
import numpy as np import numpy as np
import _slsdet from . import _slsdet
from .detector import freeze from .detector import freeze
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
class Dac(DetectorProperty): class Dac(DetectorProperty):

View File

@ -1,8 +1,8 @@
# SPDX-License-Identifier: LGPL-3.0-or-other # SPDX-License-Identifier: LGPL-3.0-or-other
# Copyright (C) 2021 Contributors to the SLS Detector Package # Copyright (C) 2021 Contributors to the SLS Detector Package
from _slsdet import CppDetectorApi from ._slsdet import CppDetectorApi
from _slsdet import slsDetectorDefs from ._slsdet import slsDetectorDefs
from _slsdet import IpAddr, MacAddr from ._slsdet import IpAddr, MacAddr
runStatus = slsDetectorDefs.runStatus runStatus = slsDetectorDefs.runStatus
timingMode = slsDetectorDefs.timingMode timingMode = slsDetectorDefs.timingMode
@ -15,7 +15,7 @@ defs = slsDetectorDefs
from .utils import element_if_equal, all_equal, get_set_bits, list_to_bitmask from .utils import element_if_equal, all_equal, get_set_bits, list_to_bitmask
from .utils import Geometry, to_geo, element, reduce_time, is_iterable, hostname_list from .utils import Geometry, to_geo, element, reduce_time, is_iterable, hostname_list
from _slsdet import xy from ._slsdet import xy
from .gaincaps import Mythen3GainCapsWrapper from .gaincaps import Mythen3GainCapsWrapper
from . import utils as ut from . import utils as ut
from .proxy import JsonProxy, SlowAdcProxy, ClkDivProxy, MaxPhaseProxy, ClkFreqProxy, PatLoopProxy, PatNLoopProxy, PatWaitProxy, PatWaitTimeProxy from .proxy import JsonProxy, SlowAdcProxy, ClkDivProxy, MaxPhaseProxy, ClkFreqProxy, PatLoopProxy, PatNLoopProxy, PatWaitProxy, PatWaitTimeProxy

View File

@ -11,7 +11,7 @@ Created on Wed Dec 6 11:51:18 2017
from .detector import Detector from .detector import Detector
from .temperature import Temperature, DetectorTemperature from .temperature import Temperature, DetectorTemperature
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -15,8 +15,9 @@ if dt === detectorType.EIGER:
""" """
import _slsdet from . import _slsdet
for name, cls in _slsdet.slsDetectorDefs.__dict__.items(): import slsdet._slsdet
for name, cls in slsdet._slsdet.slsDetectorDefs.__dict__.items():
if isinstance(cls, type): if isinstance(cls, type):
exec(f'{name} = {cls.__module__}.{cls.__qualname__}') exec(f'{name} = {cls.__module__}.{cls.__qualname__}')

View File

@ -1,6 +1,6 @@
import _slsdet from . import _slsdet
gc = _slsdet.slsDetectorDefs.M3_GainCaps gc = _slsdet.slsDetectorDefs.M3_GainCaps

View File

@ -9,7 +9,7 @@ This file contains the specialization for the Moench detector
from .detector import Detector, freeze from .detector import Detector, freeze
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -11,7 +11,7 @@ from .detector import Detector, freeze
# from .adcs import Adc, DetectorAdcs # from .adcs import Adc, DetectorAdcs
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -11,7 +11,7 @@ from .detector import Detector, freeze
# from .adcs import Adc, DetectorAdcs # from .adcs import Adc, DetectorAdcs
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -9,7 +9,7 @@ This file contains the specialization for the Moench detector
from .detector import Detector, freeze from .detector import Detector, freeze
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -11,7 +11,7 @@ from .detector import Detector, freeze
# from .adcs import Adc, DetectorAdcs # from .adcs import Adc, DetectorAdcs
from .dacs import DetectorDacs from .dacs import DetectorDacs
import _slsdet from . import _slsdet
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
gc_enums = _slsdet.slsDetectorDefs.M3_GainCaps gc_enums = _slsdet.slsDetectorDefs.M3_GainCaps
from .detector_property import DetectorProperty from .detector_property import DetectorProperty

View File

@ -1,8 +1,8 @@
# SPDX-License-Identifier: LGPL-3.0-or-other # SPDX-License-Identifier: LGPL-3.0-or-other
# Copyright (C) 2021 Contributors to the SLS Detector Package # Copyright (C) 2021 Contributors to the SLS Detector Package
import _slsdet from . import _slsdet
from _slsdet import Pattern from ._slsdet import Pattern
class patternParameters(_slsdet.patternParameters): class patternParameters(_slsdet.patternParameters):

View File

@ -3,7 +3,7 @@
from .utils import element_if_equal from .utils import element_if_equal
from .enums import dacIndex from .enums import dacIndex
from .defines import M3_MAX_PATTERN_LEVELS, MAX_PATTERN_LEVELS from .defines import M3_MAX_PATTERN_LEVELS, MAX_PATTERN_LEVELS
from _slsdet import slsDetectorDefs from ._slsdet import slsDetectorDefs
detectorType = slsDetectorDefs.detectorType detectorType = slsDetectorDefs.detectorType

View File

@ -3,7 +3,7 @@
from .detector_property import DetectorProperty from .detector_property import DetectorProperty
from functools import partial from functools import partial
import numpy as np import numpy as np
import _slsdet from . import _slsdet
from .detector import freeze from .detector import freeze
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
class SlowAdc(DetectorProperty): class SlowAdc(DetectorProperty):

View File

@ -6,7 +6,7 @@ but not directly used in controlling the detector
""" """
from collections import namedtuple from collections import namedtuple
import _slsdet #C++ lib from . import _slsdet #C++ lib
import functools import functools
import datetime as dt import datetime as dt
import pathlib import pathlib

View File

@ -3,7 +3,7 @@
from .detector_property import DetectorProperty from .detector_property import DetectorProperty
from functools import partial from functools import partial
import numpy as np import numpy as np
import _slsdet from . import _slsdet
from .detector import freeze from .detector import freeze
dacIndex = _slsdet.slsDetectorDefs.dacIndex dacIndex = _slsdet.slsDetectorDefs.dacIndex
class Voltage(DetectorProperty): class Voltage(DetectorProperty):

View File

@ -29,6 +29,7 @@ target_link_libraries(slsDetectorObject
rt rt
PRIVATE PRIVATE
slsProjectWarnings slsProjectWarnings
"$<BUILD_INTERFACE:libzmq-static>"
) )
set(DETECTOR_LIBRARY_TARGETS slsDetectorObject) set(DETECTOR_LIBRARY_TARGETS slsDetectorObject)

View File

@ -49,6 +49,7 @@ target_link_libraries(slsReceiverObject
slsSupportStatic slsSupportStatic
PRIVATE PRIVATE
slsProjectWarnings #don't propagate warnigns slsProjectWarnings #don't propagate warnigns
"$<BUILD_INTERFACE:libzmq-static>"
) )
# HDF5 # HDF5