#!/bin/sh
# Intel(R) Application Debugger for Linux 
# Copyright (C) 2000-2009 Intel Corporation. All rights reserved.
INSTALLDIR=<INSTALLDIR>

if [ -z "${INTEL_LICENSE_FILE}" ]
then
    INTEL_LICENSE_FILE="<INSTALLDIR>/licenses:/opt/intel/licenses:${HOME}/intel/licenses:/Users/Shared/Library/Application Support/Intel/Licenses"; export INTEL_LICENSE_FILE
else
    INTEL_LICENSE_FILE="${INTEL_LICENSE_FILE}:<INSTALLDIR>/licenses:/opt/intel/licenses:${HOME}/intel/licenses:/Users/Shared/Library/Application Support/Intel/Licenses"; export INTEL_LICENSE_FILE
fi

export LD_LIBRARY_PATH="$INSTALLDIR/bin/ia32:$INSTALLDIR/idb/lib/ia32:$INSTALLDIR/idb/gui/ia32":$LD_LIBRARY_PATH
export PATH="$INSTALLDIR/bin/ia32:$INSTALLDIR/idb/gui/ia32":$PATH
export IDB_GUI_DEBUGGER="$INSTALLDIR/bin/ia32/iidb"

UBUNTU="Ubuntu"
UBUNTU_MIN_MAJOR_VERSION=9
UBUNTU_MIN_MINOR_VERSION=10
FEDORA="Fedora"
FEDORA_MIN_MAJOR_VERSION=12
FEDORA_MIN_MINOR_VERSION=0
MATCH=""
OS_RELEASE=""
DISTRIB=""
if [ -x /usr/bin/lsb_release ]; then
  OS_RELEASE=`"lsb_release" -r`
  DISTRIB=`"lsb_release" -i`
elif [ -f /etc/redhat-release ]; then
  OS_RELEASE=`cat "/etc/redhat-release"`
  DISTRIB="${OS_RELEASE}"
fi
if [ -n "$OS_RELEASE" ]; then
  OS_MINOR_VERSION=`expr "$OS_RELEASE" : '[^0-9]*[0-9]\+\.\([0-9]\+\)'`
  OS_MAJOR_VERSION=`expr "$OS_RELEASE" : '[^0-9]*\([0-9]\+\)'`
  if [ -n "$OS_MAJOR_VERSION" ]; then
    ISUBUNTU=`echo "${DISTRIB}" | grep "${UBUNTU}"`
    ISFEDORA=`echo "${DISTRIB}" | grep "${FEDORA}"`
    if [ -n "${ISUBUNTU}" ]; then
      if [ "$OS_MAJOR_VERSION" -le "$UBUNTU_MIN_MAJOR_VERSION" ]; then
        if [ "$OS_MAJOR_VERSION" -eq "$UBUNTU_MIN_MAJOR_VERSION" ] &&
         ( [ -z "$OS_MINOR_VERSION" ]                              ||
           [ "$OS_MINOR_VERSION" -ge "$UBUNTU_MIN_MINOR_VERSION" ] ); then
          MATCH="true"
        fi
      else
        MATCH="true"
      fi
    elif [ -n "${ISFEDORA}" ]; then
      if [ "$OS_MAJOR_VERSION" -le "$FEDORA_MIN_MAJOR_VERSION" ]; then
        if [ "$OS_MAJOR_VERSION" -eq "$FEDORA_MIN_MAJOR_VERSION" ] &&
         ( [ -z "$OS_MINOR_VERSION" ]                              ||
           [ "$OS_MINOR_VERSION" -ge "$FEDORA_MIN_MINOR_VERSION" ] ); then
          MATCH="true"
        fi
      else
        MATCH="true"
      fi
    fi
    if [ -n "$MATCH" ]; then
      export GDK_NATIVE_WINDOWS=1
    fi
  fi
fi
IDB_ARGUMENTS="$@"
JAVA_MIN_VERSION=1.5
JAVA_MIN_MINOR_VERSION=`expr "$JAVA_MIN_VERSION" : '[0-9]*\.\([0-9]*\)'`
PARALLEL_DEBUGGING=`echo " ${IDB_ARGUMENTS}" | grep " -parallel "`
if [ "${PARALLEL_DEBUGGING}" ]; then
    ${IDB_GUI_DEBUGGER} ${IDB_ARGUMENTS}
elif [ "`which java`" ]; then
    JAVA_VERSION_STRING=`"java" -version 2>&1`
    JAVA_VERSION_NUMBER=`expr "$JAVA_VERSION_STRING" : '[^\.]*\([0-9]\.[0-9]*\).*'`
    JAVA_MAJOR_VERSION=`expr "$JAVA_VERSION_NUMBER" : '\([0-9]*\)'`
    JAVA_MINOR_VERSION=`expr "$JAVA_VERSION_NUMBER" : '[0-9]*\.\([0-9]*\)'`
    if [ "$JAVA_MAJOR_VERSION" = "" ]; then
        echo "The Java Runtime Environment found in PATH is not supported by this product, version $JAVA_MIN_VERSION or higher is required."
        echo "For more information, please read the release notes."
    else
        if [ "$JAVA_MAJOR_VERSION" -ge "5" ] || ( [ "$JAVA_MAJOR_VERSION" -eq "1" ] && [ "$JAVA_MINOR_VERSION" -ge "$JAVA_MIN_MINOR_VERSION" ] ); then
            java -jar $INSTALLDIR/idb/gui/ia32/plugins/org.eclipse.equinox.launcher_1.0.101.R34x_v20080819.jar -showsplash -gui $IDB_ARGUMENTS
        else
           echo "Detected Java Runtime version $JAVA_VERSION_NUMBER. A Java Runtime version $JAVA_MIN_VERSION or higher is required, please upgrade your Java Runtime."
           echo "For more information, please read the release notes."
        fi
    fi
else
echo "No Java Runtime found in PATH, please make sure that a Java Runtime version $JAVA_MIN_VERSION or higher is installed and in the PATH."
echo "For more information, please read the release notes."
fi
