#!/bin/sh -e . CI/travis/lib.sh # Don't prepare a deploy on a Coverity build if [ "x${COVERITY_SCAN_PROJECT_NAME}" != "x" ] ; then exit 0; fi deploy=0 if [ -z "$TRAVIS_BUILD_DIR" ] ; then t=$(find ./ -name CMakeCache.txt|head -1) if [ -n "${t}" ] ; then cd $(dirname $(dirname ${t})) TRAVIS_BUILD_DIR=$(pwd) else echo "I am confused - can't find CMakeCache.txt" exit fi else cd $TRAVIS_BUILD_DIR fi pwd if [ -z "${LDIST}" -a -f "build/.LDIST" ] ; then export LDIST="-$(cat build/.LDIST)" fi if [ -z "${LDIST}" ] ; then export LDIST="-$(get_ldist)" fi check_file() { temp="" for i in $(find ./ -name CMakeCache.txt) do hit=$(find $(dirname ${i}) -maxdepth 1 -name "libiio*.$1" -a ! -name "*${LDIST}*") if [ "$(echo ${hit} | wc -w)" -gt "1" ] ; then echo "I am confused - more than 2 $1 files!" echo $hit exit 1 else if [ "$(echo ${hit} | wc -w)" -eq "1" ] ; then if [ -z "${temp}" ] ; then temp=$hit else echo "I am confused - more than 2 $1 files" echo $temp echo $hit exit 1 fi fi fi done } check_file deb if [ -n "${temp}" ] ; then deploy=$(expr ${deploy} + 1) if [ -z "${TARGET_DEB}" ] ; then export TARGET_DEB=$(echo ${temp} | \ sed -e 's:^./.*/::' -e 's:-Linux::' -e 's:.deb$::')${LDIST}.deb fi echo "deploying ${temp} to nightly $TARGET_DEB" if [ -z "${RELEASE_PKG_FILE_DEB}" ] ; then export RELEASE_PKG_FILE_DEB=$(dirname ${temp})/${TARGET_DEB} cp ${temp} ${RELEASE_PKG_FILE_DEB} fi echo ${TARGET_DEB} ls -lh ${temp} echo ${RELEASE_PKG_FILE_DEB} ls -lh ${RELEASE_PKG_FILE_DEB} else echo "Skipping deployment of debian package" fi check_file rpm if [ -n "${temp}" ] ; then deploy=$(expr ${deploy} + 1) if [ -z "${TARGET_RPM}" ] ; then export TARGET_RPM=$(echo ${temp} | \ sed -e 's:^./.*/::' -e 's:-Linux::' -e 's:.rpm$::')${LDIST}.rpm fi echo "deploying ${temp} to nightly $TARGET_RPM" if [ -z "${RELEASE_PKG_FILE_RPM}" ] ; then export RELEASE_PKG_FILE_RPM=$(dirname ${temp})/${TARGET_RPM} cp ${temp} ${RELEASE_PKG_FILE_RPM} fi echo ${TARGET_RPM} ls -lh ${temp} echo ${RELEASE_PKG_FILE_RPM} ls -lh ${RELEASE_PKG_FILE_RPM} else echo "Skipping deployment of rpm package" fi check_file tar.gz if [ -n "${temp}" ] ; then deploy=$(expr ${deploy} + 1) if [ -z "${TARGET_TGZ}" ] ; then echo Add the MATLAB bindings into the tar file ( cd $(dirname ${temp}) if [ -d tarball_fixup ] ; then rm -rf tarball_fixup fi mkdir tarball_fixup && cd tarball_fixup if [ "$TRAVIS_OS_NAME" = "osx" ] ; then tar --strip-components=1 -xzf ${TRAVIS_BUILD_DIR}/${temp} else tar -xzf ${TRAVIS_BUILD_DIR}/${temp} fi mkdir -p usr/include usr/lib/matlab/iio cp ${TRAVIS_BUILD_DIR}/bindings/matlab/iio-wrapper.h usr/include/ cp ${TRAVIS_BUILD_DIR}/bindings/matlab/*.m usr/lib/matlab/iio/ if [ "$TRAVIS_OS_NAME" = "osx" ] ; then cd usr/lib ln -fs ../../Library/Frameworks/iio.framework/iio libiio.dylib install_name_tool -change /usr/local/opt/libusb/lib/libusb-1.0.0.dylib @rpath/libusb-1.0.dylib libiio.dylib install_name_tool -add_rpath @loader_path/../../../../../usr/lib libiio.dylib install_name_tool -add_rpath /usr/local/opt/libusb/lib libiio.dylib cd ../include ln -s ../../Library/Frameworks/iio.framework/Headers/iio.h iio.h # Update references for tools cd ../.. TOOLS=Library/Frameworks/iio.framework/Tools/* for tool in $TOOLS do install_name_tool -add_rpath @loader_path/../../ $tool done cp /usr/local/lib/libusb-1.0.dylib usr/lib/ chmod +w usr/lib/libusb-1.0.dylib install_name_tool -id @rpath/libusb-1.0.dylib usr/lib/libusb-1.0.dylib tar -czf ${TRAVIS_BUILD_DIR}/${temp} usr Library else tar -czf ${TRAVIS_BUILD_DIR}/${temp} usr lib fi ) export TARGET_TGZ=$(echo ${temp} | \ sed -e 's:^./.*/::' -e 's:-Linux::' -e 's:-Darwin::' -e 's:.tar.gz$::')${LDIST}.tar.gz; fi echo "deploying ${temp} to $TARGET_TGZ" if [ -z "${RELEASE_PKG_FILE_TGZ}" ] ; then export RELEASE_PKG_FILE_TGZ=$(dirname ${temp})/${TARGET_TGZ} cp ${temp} ${RELEASE_PKG_FILE_TGZ} fi echo ${TARGET_TGZ} ls -lh ${temp} echo ${RELEASE_PKG_FILE_TGZ} ls -lh ${RELEASE_PKG_FILE_TGZ} else echo "Skipping deployment of tarball" fi check_file pkg if [ -n "${temp}" ] ; then deploy=$(expr ${deploy} + 1) if [ -z "${TARGET_PKG}" ] ; then export TARGET_PKG=$(echo ${temp} | \ sed -e 's:^./.*/::' -e 's:.pkg$::')${LDIST}.pkg fi echo "deploying ${temp} to nightly $TARGET_PKG" if [ -z "${RELEASE_PKG_FILE_PKG}" ] ; then export RELEASE_PKG_FILE_PKG=$(dirname ${temp})/${TARGET_PKG} cp ${temp} ${RELEASE_PKG_FILE_PKG} fi echo ${TARGET_PKG} ls -lh ${temp} echo ${RELEASE_PKG_FILE_PKG} ls -lh ${RELEASE_PKG_FILE_PKG} else echo "Skipping deployment of OS X package" fi if [ "${deploy}" -eq "0" ] ; then echo did not deploy any files exit 1 fi