From 88e09144058c11642f82596e5df396c1155fe0bd Mon Sep 17 00:00:00 2001 From: Erik Frojdh Date: Wed, 12 Dec 2018 15:23:24 +0100 Subject: [PATCH 1/3] added conda recipe as a test --- .travis.yml | 45 ++++++++++++++++++++++++++++++++ recipe/build.sh | 13 ++++++++++ recipe/copy_gui.sh | 15 +++++++++++ recipe/copy_lib.sh | 22 ++++++++++++++++ recipe/meta.yaml | 64 ++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 159 insertions(+) create mode 100644 .travis.yml create mode 100644 recipe/build.sh create mode 100644 recipe/copy_gui.sh create mode 100644 recipe/copy_lib.sh create mode 100644 recipe/meta.yaml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..3348a8b60 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,45 @@ +sudo: false + +language: cpp + +matrix: + include: + - os: linux + env: CONDA_PY=3.6 + +dist: trusty + +install: + - sudo apt-get update + - ldd --version + - wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh; + - bash miniconda.sh -b -p $HOME/miniconda + - export PATH="$HOME/miniconda/bin:$PATH" + - rm -f miniconda.sh + - hash -r + - conda config --set always_yes yes --set changeps1 no + - conda config --add channels conda-forge + - conda config --add channels slsdetectorgroup + - conda update conda + - conda update --all + - conda install conda-build anaconda-client + + # Useful for debugging any issues with conda + - conda info -a + + + # Replace dep1 dep2 ... with your dependencies + - conda create -q -n test-environment python=$CONDA_PY + - source activate test-environment + - conda-build . + +script: + - echo "No test scripts to be run!" + + +deploy: + provider: script + script: find $HOME/miniconda/conda-bld/${TRAVIS_OS_NAME}-64 -name "*.tar.bz2" -exec anaconda -t $CONDA_TOKEN upload --force {} \; + on: + branch: developer + diff --git a/recipe/build.sh b/recipe/build.sh new file mode 100644 index 000000000..8e702ae76 --- /dev/null +++ b/recipe/build.sh @@ -0,0 +1,13 @@ +mkdir build +cd build +cmake .. \ + -DCMAKE_PREFIX_PATH=$CONDA_PREFIX \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DUSE_TEXTCLIENT=ON \ + -DUSE_RECEIVER=ON \ + -DUSE_GUI=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DUSE_HDF5=OFF\ + + +cmake --build . -- -j8 \ No newline at end of file diff --git a/recipe/copy_gui.sh b/recipe/copy_gui.sh new file mode 100644 index 000000000..26ce29890 --- /dev/null +++ b/recipe/copy_gui.sh @@ -0,0 +1,15 @@ + +mkdir $PREFIX/lib +mkdir $PREFIX/bin +mkdir $PREFIX/include + +#No libs for gui? + +#Binaries +cp build/bin/gui_client $PREFIX/bin/. +cp build/bin/slsDetectorGui $PREFIX/bin/. + + +#Which headers do we need for development?? + +# cp include/some_lib.h $PREFIX/include/. \ No newline at end of file diff --git a/recipe/copy_lib.sh b/recipe/copy_lib.sh new file mode 100644 index 000000000..3eed490a2 --- /dev/null +++ b/recipe/copy_lib.sh @@ -0,0 +1,22 @@ + +mkdir $PREFIX/lib +mkdir $PREFIX/bin +mkdir $PREFIX/include + +#Shared and static libraries +cp build/bin/libSlsDetector.so $PREFIX/lib/. +cp build/bin/libSlsDetector.a $PREFIX/lib/. +cp build/bin/libSlsReceiver.so $PREFIX/lib/. +cp build/bin/libSlsReceiver.a $PREFIX/lib/. + +#Binaries +cp build/bin/sls_detector_acquire $PREFIX/bin/. +cp build/bin/sls_detector_get $PREFIX/bin/. +cp build/bin/sls_detector_put $PREFIX/bin/. +cp build/bin/sls_detector_help $PREFIX/bin/. +cp build/bin/slsReceiver $PREFIX/bin/. +cp build/bin/slsMultiReceiver $PREFIX/bin/. + +#Which headers do we need for development?? + +# cp include/some_lib.h $PREFIX/include/. \ No newline at end of file diff --git a/recipe/meta.yaml b/recipe/meta.yaml new file mode 100644 index 000000000..3235b504a --- /dev/null +++ b/recipe/meta.yaml @@ -0,0 +1,64 @@ + +package: + name: sls_detector_software + version: "developer" + +source: + - path: .. + +build: + number: 0 + rpaths: + - lib/ + +requirements: + build: + - {{ compiler('c') }} + - {{compiler('cxx')}} + - cmake + - qwt 6.* + - qt=4.8.7=7 + - zeromq=4.2.5=hfc679d8_5 + - pyzmq + - xorg-libx11 + - xorg-libice + - xorg-libxext + - xorg-libsm + - xorg-libxau + - xorg-libxrender + - xorg-libxfixes + - {{ cdt('mesa-libgl-devel') }} # [linux] + - {{ cdt('mesa-libegl-devel') }} # [linux] + - {{ cdt('mesa-dri-drivers') }} # [linux] + - {{ cdt('libselinux') }} # [linux] + - {{ cdt('libxdamage') }} # [linux] + - {{ cdt('libxxf86vm') }} # [linux] + + host: + - libstdcxx-ng + - libgcc-ng + - libpng >=1.6.32,<1.6.35 + - xorg-libx11 + - xorg-libice + - xorg-libxext + - xorg-libsm + - xorg-libxau + - xorg-libxrender + - xorg-libxfixes + + run: + - libstdcxx-ng + - libgcc-ng + +outputs: + - name: sls_detector_lib + version: "developer" + script: copy_lib.sh + - name: sls_detector_gui + version: "developer" + script: copy_gui.sh + requirements: + run: + - sls_detector_lib=developer + - qwt 6.* + - qt=4.8.7=7 From f98259adc938fe2be8670f4a26264c42acd4a95d Mon Sep 17 00:00:00 2001 From: Erik Frojdh Date: Wed, 12 Dec 2018 15:50:55 +0100 Subject: [PATCH 2/3] added build requirements to subpackages --- recipe/meta.yaml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 3235b504a..3bbea1e83 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -54,10 +54,35 @@ outputs: - name: sls_detector_lib version: "developer" script: copy_lib.sh + requirements: + build: + - {{ compiler('c') }} + - {{compiler('cxx')}} - name: sls_detector_gui version: "developer" script: copy_gui.sh requirements: + build: + - {{ compiler('c') }} + - {{compiler('cxx')}} + - cmake + - qwt 6.* + - qt=4.8.7=7 + - zeromq=4.2.5=hfc679d8_5 + - pyzmq + - xorg-libx11 + - xorg-libice + - xorg-libxext + - xorg-libsm + - xorg-libxau + - xorg-libxrender + - xorg-libxfixes + - {{ cdt('mesa-libgl-devel') }} # [linux] + - {{ cdt('mesa-libegl-devel') }} # [linux] + - {{ cdt('mesa-dri-drivers') }} # [linux] + - {{ cdt('libselinux') }} # [linux] + - {{ cdt('libxdamage') }} # [linux] + - {{ cdt('libxxf86vm') }} # [linux] run: - sls_detector_lib=developer - qwt 6.* From e379b986314464e43e0fb8adb5bff186db44c646 Mon Sep 17 00:00:00 2001 From: Erik Frojdh Date: Wed, 12 Dec 2018 16:10:01 +0100 Subject: [PATCH 3/3] added header files --- recipe/build.sh | 6 ++++-- recipe/copy_lib.sh | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/recipe/build.sh b/recipe/build.sh index 8e702ae76..ccaa0f3d1 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -1,8 +1,9 @@ mkdir build +mkdir install cd build cmake .. \ -DCMAKE_PREFIX_PATH=$CONDA_PREFIX \ - -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_INSTALL_PREFIX=install \ -DUSE_TEXTCLIENT=ON \ -DUSE_RECEIVER=ON \ -DUSE_GUI=ON \ @@ -10,4 +11,5 @@ cmake .. \ -DUSE_HDF5=OFF\ -cmake --build . -- -j8 \ No newline at end of file +cmake --build . -- -j10 +cmake --build . --target install \ No newline at end of file diff --git a/recipe/copy_lib.sh b/recipe/copy_lib.sh index 3eed490a2..4c427ee92 100644 --- a/recipe/copy_lib.sh +++ b/recipe/copy_lib.sh @@ -2,6 +2,7 @@ mkdir $PREFIX/lib mkdir $PREFIX/bin mkdir $PREFIX/include +mkdir $PREFIX/include/slsDetectorPackage #Shared and static libraries cp build/bin/libSlsDetector.so $PREFIX/lib/. @@ -18,5 +19,5 @@ cp build/bin/slsReceiver $PREFIX/bin/. cp build/bin/slsMultiReceiver $PREFIX/bin/. #Which headers do we need for development?? - +cp build/install/include/* $PREFIX/include/slsDetectorPackage/ # cp include/some_lib.h $PREFIX/include/. \ No newline at end of file