diff --git a/.github/workflows/python-package-ubuntu.yml b/.github/workflows/python-package-ubuntu.yml new file mode 100644 index 0000000..180823d --- /dev/null +++ b/.github/workflows/python-package-ubuntu.yml @@ -0,0 +1,42 @@ +name: Python package build on Ubuntu + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Update package list + run: | + sudo apt-get update + + - name: Install git + run: | + sudo apt-get install -y git + + - name: Checkout repository + uses: actions/checkout@v2 + with: + submodules: 'recursive' + + - name: Set up Python 3.10 + uses: actions/setup-python@v2 + with: + python-version: "3.10" + + - name: Prepare Python environment + run: | + pip install --upgrade pip h5py setuptools wheel build + + - name: Install dependencies + run: | + sudo apt-get install -y libhdf5-dev limesuite liblimesuite-dev automake gcc pkg-config build-essential python-is-python3 + + - name: Install the package + run: | + pip install . + + - name: Test if the package can be imported + run: | + python -m limedriver \ No newline at end of file diff --git a/setup.py b/setup.py index dbd5afb..18cb936 100644 --- a/setup.py +++ b/setup.py @@ -6,14 +6,13 @@ import os from Cython.Build import cythonize -os.environ['CXX'] = 'h5c++' +os.environ['CXX'] = 'h5c++ -shlib' ext_modules = [ Extension( 'limedriver.binding', sources=['src/limedriver/limedriver.pyx', 'extern/limedriver/src/limedriver.cpp'], include_dirs=["extern/limedriver/src/", "/usr/include/hdf5/serial/"], # TODO: This is REALLY ugly. - library_dirs=["/usr/lib/"], libraries=["LimeSuite", "hdf5_cpp", "hdf5"], language="c++", ),