1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
#!/bin/bash
set -eu -o pipefail
exists()
{
command -v "$1" >/dev/null 2>&1
}
CURR_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
EXTERNAL_DIR=${CURR_DIR}/../external
INSTALL_DIR=${CURR_DIR}/../external/install
if [ -d ${EXTERNAL_DIR}/RapMap ] ; then
rm -fr ${EXTERNAL_DIR}/RapMap
fi
if [ -d ${INSTALL_DIR}/include/rapmap ] ; then
rm -fr ${INSTALL_DIR}/include/rapmap
fi
if [ -d ${INSTALL_DIR}/src/rapmap ] ; then
rm -fr ${INSTALL_DIR}/src/rapmap
fi
#SVER=salmon-v0.14.1
SVER=develop-salmon
#SVER=pe-chaining
EXPECTED_SHA256=fabac2f360513b803aa3567415eddcd97261ab8a23d4f600af5f98ee8ffd944b
mkdir -p ${EXTERNAL_DIR}
curl -k -L https://github.com/COMBINE-lab/RapMap/archive/${SVER}.zip -o ${EXTERNAL_DIR}/rapmap.zip
hashcheck=""
if exists sha256sum; then
hashcheck="sha256sum"
elif exists shasum; then
hashcheck="shasum -a256"
else
unset hashcheck
fi
if [ -z "${hashcheck-}" ]; then
echo "Couldn't find shasum command; can't verify contents of downloaded RapMap";
else
if [[ $SVER != develop-salmon ]]; then
echo "${EXPECTED_SHA256} ${EXTERNAL_DIR}/rapmap.zip" | ${hashcheck} -c - || { echo "rapmap.zip did not match expected SHA1! Exiting."; exit 1; }
else
echo "not testing sha since pulling from develop-salmon"
fi
fi
rm -fr ${EXTERNAL_DIR}/RapMap
unzip ${EXTERNAL_DIR}/rapmap.zip -d ${EXTERNAL_DIR}
#mv ${EXTERNAL_DIR}/RapMap-develop-salmon ${EXTERNAL_DIR}/RapMap
mv ${EXTERNAL_DIR}/RapMap-${SVER} ${EXTERNAL_DIR}/RapMap
mkdir -p ${INSTALL_DIR}/include/rapmap
mkdir -p ${INSTALL_DIR}/src/rapmap
rm ${EXTERNAL_DIR}/RapMap/src/xxhash.c
rm ${EXTERNAL_DIR}/RapMap/include/xxhash.h
cp -r ${EXTERNAL_DIR}/RapMap/external/libdivsufsort.zip ${EXTERNAL_DIR}
cp -r ${EXTERNAL_DIR}/RapMap/src/*.c ${INSTALL_DIR}/src/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/src/*.cpp ${INSTALL_DIR}/src/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/src/metro ${INSTALL_DIR}/src/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/src/ksw2pp ${INSTALL_DIR}/src/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/tclap ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/*.h ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/*.hpp ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/sparsepp ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/digestpp ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/chobo ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/metro ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/ksw2pp ${INSTALL_DIR}/include/rapmap
cp -r ${EXTERNAL_DIR}/RapMap/include/tsl ${INSTALL_DIR}/include/rapmap
##
# Remove some redundant files that might otherwise be duplicated
##
rm ${INSTALL_DIR}/include/rapmap/FastxParser.hpp
rm ${INSTALL_DIR}/include/rapmap/concurrentqueue.h
rm ${INSTALL_DIR}/include/rapmap/FastxParserThreadUtils.hpp
rm ${INSTALL_DIR}/src/rapmap/FastxParser.cpp
|