#!/bin/sh # # --- UCSF Chimera Copyright --- # Copyright (c) 2000-2003 Regents of the University of California. # All rights reserved. This software provided pursuant to a # license agreement containing restrictions on its disclosure, # duplication and use. This notice must be embedded in or # attached to all copies, including partial copies, of the # software or any revisions or derivations thereof. # --- UCSF Chimera Copyright --- # # $Id: base.sh 40585 2015-05-13 21:12:50Z gregc $ # set path so we get the versions of command we expect originalpath="$PATH" PATH=/bin:/usr/bin:"$PATH" # application name can be hardcoded by altering the next line app=`basename "$0"` # if CDPATH is set, then cd echos the directory as well if test -n "$CDPATH" then CHIMERA_CDPATH="$CDPATH" export CHIMERA_CDPATH fi unset CDPATH # canonicalize CHIMERA for consistency with Tcl/Tk (remove symbolic links) if test -n "$CHIMERA" -a -x "$CHIMERA/bin/chimera" -a -d "$CHIMERA/share/chimera" then CHIMERA=`cd "$CHIMERA"; pwd -P` else if test -n "$CHIMERA" then echo "Ignoring CHIMERA environment variable" 1>&2 fi # Assume that the true location of $app is in CHIMERA/bin/ and # deduce what CHIMERA should be even if there are symbolic links bindir=`dirname "$0"` if test ! -L "$0" then bindir=`cd "$bindir"; pwd -P` else if link=`readlink "$0"` then : else # fallback if readlink doesn't exist link=`ls -l "$0" | sed 's/.* -> //'` fi # $app was a (relative?) symbolic link tmp=`dirname "$link"` bindir=`cd "$bindir"; cd "$tmp"; pwd -P` fi CHIMERA=`dirname "$bindir"` fi export CHIMERA # system-dependent setup case "`uname -s`" in Linux) if test -n "$LD_LIBRARY_PATH" then CHIMERA_LD_LIBRARY_PATH="$LD_LIBRARY_PATH" export CHIMERA_LD_LIBRARY_PATH fi LD_LIBRARY_PATH="$CHIMERA/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" if test -x "$CHIMERA/bin/need-syslibs" then if "$CHIMERA/bin/need-syslibs" "$CHIMERA" then LD_LIBRARY_PATH="$CHIMERA/syslibs:$LD_LIBRARY_PATH" fi fi export LD_LIBRARY_PATH ;; Darwin*) if test -n "$FONTCONFIG_FILE" then CHIMERA_FONTCONFIG_FILE="$FONTCONFIG_FILE" export CHIMERA_FONTCONFIG_FILE fi ver=`sw_vers -productVersion | awk -F. '{ print $1"."$2 }'` case $ver in 10.[34]) FONTCONFIG_FILE=/etc/fonts/fonts.conf ;; *) FONTCONFIG_FILE=/usr/X11/lib/X11/fonts/fonts.conf ;; esac export FONTCONFIG_FILE if test -n "$DYLD_FALLBACK_LIBRARY_PATH" then CHIMERA_DYLD_FALLBACK_LIBRARY_PATH="$DYLD_FALLBACK_LIBRARY_PATH" export CHIMERA_DYLD_FALLBACK_LIBRARY_PATH fi DYLD_FALLBACK_LIBRARY_PATH="$CHIMERA/lib${DYLD_FALLBACK_LIBRARY_PATH:+:$DYLD_FALLBACK_LIBRARY_PATH}" export DYLD_FALLBACK_LIBRARY_PATH # Make the Tcl/Tk and Python frameworks accessible. if test -n "$DYLD_FRAMEWORK_PATH" then CHIMERA_DYLD_FRAMEWORK_PATH="$DYLD_FRAMEWORK_PATH" export CHIMERA_DYLD_FRAMEWORK_PATH fi DYLD_FRAMEWORK_PATH="$CHIMERA/frameworks${DYLD_FRAMEWORK_PATH:+:$DYLD_FRAMEWORK_PATH}" export DYLD_FRAMEWORK_PATH ;; esac # $Id: opengl.sh 36294 2012-04-26 00:55:21Z goddard $ # system-dependent error checking # check if we're in nogui mode nogui="" for i in "$@" do case $i in --nogui) nogui="true";; esac done if [ -z "$nogui" ] then case "`uname -s`" in Linux) if test -e "$CHIMERA/bin/python2.7" then python="$CHIMERA/bin/python2.7" else python="python2.7" fi $python -E "$CHIMERA/share/checkOpenGL.py" Linux || exit 1 ;; Darwin*) ;; esac fi # $Id: tcltk.sh 31281 2010-08-28 01:07:36Z gregc $ # make sure we use our Tcl/Tk and Tix if test -n "$TCL_LIBRARY" then CHIMERA_TCL_LIBRARY="$TCL_LIBRARY" export CHIMERA_TCL_LIBRARY fi TCL_LIBRARY="$CHIMERA/lib/tcl8.6" export TCL_LIBRARY if test -n "$TCLLIBPATH" then CHIMERA_TCLLIBPATH="$TCLLIBPATH" export CHIMERA_TCLLIBPATH fi TCLLIBPATH="{$CHIMERA/lib}" export TCLLIBPATH if test -n "$TK_LIBRARY" then CHIMERA_TK_LIBRARY="$TK_LIBRARY" export CHIMERA_TK_LIBRARY fi unset TK_LIBRARY if test -n "$TIX_LIBRARY" then CHIMERA_TIX_LIBRARY="$TIX_LIBRARY" export CHIMERA_TIX_LIBRARY fi unset TIX_LIBRARY # $Id: python.sh 32762 2011-03-10 01:50:10Z gregc $ # deduce any flags we want to pass to python pyflags="" for i in "$@" do case $i in --opt) pyflags="$pyflags${pyflags:+ }-OO";; esac done # deduce which python to use if test -e "$CHIMERA/bin/python2.7" then # using our distributed version of python, don't use any python # environment variables, especialy PYTHONHOME and PYTHONPATH if test -n "$PYTHONHOME" then CHIMERA_PYTHONHOME="$PYTHONHOME" export CHIMERA_PYTHONHOME fi unset PYTHONHOME if test -n "$PYTHONPATH" then CHIMERA_PYTHONPATH="$PYTHONPATH" export CHIMERA_PYTHONPATH fi if test -n "$CHIMERAPATH" then PYTHONPATH="$CHIMERAPATH" export PYTHONPATH else unset PYTHONPATH fi python="$CHIMERA/bin/python2.7" else python="python2.7" fi # avoid problems with Python 2.6+ (PEP 370) if test -n "$PYTHONNOUSERSITE" then CHIMERA_PYTHONNOUSERSITE="$PYTHONNOUSERSITE" export CHIMERA_PYTHONNOUSERSITE fi PYTHONNOUSERSITE=1 export PYTHONNOUSERSITE # start up with given arguments PATH="$originalpath" if test $# -gt 0 then exec "$python" $pyflags "$CHIMERA/share/__main__.py" "$@" else exec "$python" $pyflags "$CHIMERA/share/__main__.py" fi