Skip to content

Commit

Permalink
igv: Add version 2.8.0
Browse files Browse the repository at this point in the history
This install keeps windows (.bat) and mac (.command)
scripts, with proper env and JRE-11 available this igv
should be usable on these platforms too.
  • Loading branch information
thomas committed Feb 17, 2020
1 parent fcad82d commit 96e2724
Showing 1 changed file with 104 additions and 0 deletions.
104 changes: 104 additions & 0 deletions igv-2.8.0-0.build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
#! /bin/bash

# http://software.broadinstitute.org/software/igv/

set -xe

PKG=igv
VERSION=2.8.0
VERSION2=$(echo $VERSION | cut -d. -f1,2)
BUILD=0

PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi

mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
. /pkg/openjdk-11.0.3.2-0/profile
PATH=$PREFIX:\$PATH
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH ; fi
EOF
. $PREFIX/profile

BUILDDIR=$PREFIX/build

mkdir -p $BUILDDIR
cd $BUILDDIR

test -e IGV_$VERSION.zip || wget http://data.broadinstitute.org/igv/projects/downloads/$VERSION2/IGV_$VERSION.zip
test -d IGV_$VERSION || unzip -q IGV_$VERSION.zip

find . -perm 775 -exec chmod 755 {} \+ -o -perm 664 -exec chmod 644 {} \+
sed -e '/^exec/ s/Xmx4g/Xmx${IGVXMX:-8g}/' -i IGV_$VERSION/igv.sh
sed -e '/^exec/ s/Xmx4g/Xmx${IGVXMX:-8g}/' -i IGV_$VERSION/igv_hidpi.sh

mv IGV_$VERSION/* $PREFIX
rmdir IGV_$VERSION

cd $PREFIX
cat >igv <<-'EOF'
#!/bin/sh
die() { echo $1; exit 1; }
parse_mem() {
case $1 in
[1-9]g | [1-9][0-9]g | [1-2][0-9][0-9]g)
IGVXMX=$1 ;;
*)
die "# Error: need a proper value for memory to use, eg. 8g" ;;
esac
}
script=`basename $0`
IGVXMX=${IGVXMX:-8g}
export IGVXMX
case "$script" in
igvxmem_hidpi)
parse_mem $1; shift
exec igv_hidpi.sh "$@" ;;
igvxmem)
parse_mem $1; shift
exec igv.sh "$@" ;;
esac
MEM_KB=$(grep 'MemTotal:' /proc/meminfo | head -1 | rev | cut -d' ' -f2 | rev)
MEM_GB=$(( $MEM_KB/1024/1024 ))
CONSIDER="# Consider using 'igvxmem XYZg' to start igv with proper memory setup."
if test $MEM_GB -lt 7; then
MSG="# This is fairly below the suitable amount of 8 GB.\n$CONSIDER"
elif test $MEM_GB -gt 17 ; then
MSG="$CONSIDER\n# To gain better performance you may increase the memory in sane steps."
fi
if test -n "$MSG"; then
echo '# NOTE:'
echo "# found approx. $MEM_GB GB of Memory on your host."
echo '#'
echo -e "$MSG"
echo '#'
echo '# igv with default settings will start in 3 seconds ...'
sleep 3
fi
case "$script" in
igv_hidpi)
exec igv_hidpi.sh "$@" ;;
*)
exec igv.sh "$@" ;;
esac
EOF

chmod 755 igv

ln -s igv igvxmem
ln -s igv igv_hidpi
ln -s igv igvxmem_hidpi


exit

0 comments on commit 96e2724

Please sign in to comment.