53 lines
2 KiB
Bash
53 lines
2 KiB
Bash
#!/bin/sh
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
|
|
# java-set-classpath - Utility to update the default
|
|
# CLASSPATH for LibreOffice
|
|
|
|
if test "z$1" = "z" ; then
|
|
echo "Update the default CLASSPATH for LibreOffice"
|
|
echo ""
|
|
echo "Usage: $0 [dir|jar]..."
|
|
echo ""
|
|
echo "The utility updates the LibreOffice system setting. It adds or removes"
|
|
echo "the given directories and jar-files to or from the default CLASSPATH"
|
|
echo "depending on if they are available on the system or not."
|
|
echo ""
|
|
echo "Parameters:"
|
|
echo " dir - absolute path to a directory"
|
|
echo " jar - absolute path to a jar-file"
|
|
exit 0;
|
|
fi
|
|
|
|
JVM_CONFIG_FILE=@INSTALLDIR@/program/fundamentalrc
|
|
|
|
for path in $@ ; do
|
|
if test "z${path%%/*}" != "z" ; then
|
|
echo "Warning: the path "$path" is not absolute and will be ignored"
|
|
continue
|
|
fi
|
|
if test -e $path ; then
|
|
# the file exist
|
|
grep "URE_MORE_JAVA_CLASSPATH_URLS.*file:/*$path\([[:space:]].*\)\?$" $JVM_CONFIG_FILE >/dev/null && continue
|
|
# it is not registered
|
|
TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1
|
|
sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)$|\1 file://$path|" $JVM_CONFIG_FILE >$TMP_FILE
|
|
mv -f $TMP_FILE $JVM_CONFIG_FILE
|
|
chmod 644 $JVM_CONFIG_FILE
|
|
else
|
|
# the file does not exist, remove it from the configuration
|
|
TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1;
|
|
sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)file:/*$path\([[:space:]].*\)\?$|\1\2|" \
|
|
-e "s/\(URE_MORE_JAVA_CLASSPATH_URLS=\)[[:space:]]\+/\1/" \
|
|
-e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]\+/ /g" \
|
|
-e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]*$//" $JVM_CONFIG_FILE >$TMP_FILE
|
|
mv -f $TMP_FILE $JVM_CONFIG_FILE
|
|
chmod 644 $JVM_CONFIG_FILE
|
|
fi
|
|
done
|