#!/bin/sh if [[ ! -f /etc/env.d/99gcj ]] ; then echo "Setting correct LDPATH ..." rm -rf /etc/env.d/99gcj echo "LDPATH=\"/usr/lib/gcj/lib\"" > /etc/env.d/99gcj /usr/sbin/env-update || echo "ERROR: env-update failed?!" fi LIBDIR="lib" INSTPATH="/usr/${LIBDIR}" CONFFILE="/usr/share/gcj-config/conf" if [[ ! -f "${CONFFILE}" ]] ; then echo "Configuration file missing!" echo "Generating dummy configuration file." echo echo "You have to set your prefered GCJ now!" echo echo "Run:" echo "# gcj-config -l" echo "# gcj-config gcj-" mkdir -p $(dirname ${CONFFILE}) echo "current=\"${INSTPATH}/gcj-4.1.0/bin\"" > ${CONFFILE} exit 1 fi GCJ="$(sed -n -r -e "s:^current=.*/(gcj-.*)/.*:\1:p" ${CONFFILE})" if [[ ${#} -eq 0 ]] ; then echo "Version set: ${GCJ}" echo echo " List of GCJ installations: gcj-config -l" echo " Set GCJ version: gcj-config gcj-VERSION" else case ${1} in --gcj) if [[ ${CBUILD} != ${CHOST} ]]; then echo "$(sed -n -r -e "s:current=\"(.*)\":\1:p" ${CONFFILE})/${CHOST}-gcj" else echo "$(sed -n -r -e "s:current=\"(.*)\":\1:p" ${CONFFILE})/gcj" fi ;; --dbtool) echo "$(sed -n -r -e "s:current=\"(.*)\":\1:p" ${CONFFILE})/gcj-dbtool" ;; --gij) echo "$(sed -n -r -e "s:current=\"(.*)\":\1:p" ${CONFFILE})/gij" ;; --gjar) echo "$(sed -n -r -e "s:current=\"(.*)\":\1:p" ${CONFFILE})/gjar" ;; -l) for v in $(ls -1 ${INSTPATH} | grep gcj-); do [[ ${v} == ${GCJ} ]] && v="${v} *" echo "${v}" done ;; --version) echo "$(sed -n -r -e "s:current=\".*gcj-(.*)/.*\":\1:p" ${CONFFILE})" ;; gcj-*) if [[ ${1} == ${GCJ} ]] ; then echo "Already set!" else found="no" for v in $(ls -1 ${INSTPATH} | grep gcj-); do [[ ${v} == ${1} ]] && found="yes" done if [[ ${found} == "no" ]] ; then echo "${1} not found!" else sed -e "s:${GCJ}:${1}:g" -i ${CONFFILE} rm -f /usr/lib/gcj ln -s ${INSTPATH}/${1} /usr/lib/gcj fi fi ;; *) echo "Something wrong you do!" exit 1 ;; esac fi exit 0