287 lines
9.4 KiB
Tcsh
287 lines
9.4 KiB
Tcsh
#! /bin/csh
|
||
|
||
# This script sets all enviroment variables, which are necessary for building
|
||
# the examples of the Office Development Kit.
|
||
# The Script was developed for the operating systems Solaris, Linux and MacOS.
|
||
|
||
# The SDK name
|
||
setenv OO_SDK_NAME @OO_SDK_NAME@
|
||
|
||
# Installation directory of the Software Development Kit.
|
||
# Example: setenv OO_SDK_HOME /opt/libreoffice/basis3.4/sdk
|
||
setenv OO_SDK_HOME '@OO_SDK_HOME@'
|
||
|
||
# Office installation directory.
|
||
# Example: set OFFICE_HOME=/opt/libreoffice
|
||
setenv OFFICE_HOME '@OFFICE_HOME@'
|
||
|
||
# URE installation directory.
|
||
# Example: setenv OO_SDK_URE_HOME /opt/libreoffice/ure
|
||
setenv OO_SDK_URE_HOME '@OO_SDK_URE_HOME@'
|
||
|
||
# Directory of the make command.
|
||
# Example: setenv OO_SDK_MAKE_HOME /usr/bin
|
||
setenv OO_SDK_MAKE_HOME @OO_SDK_MAKE_HOME@
|
||
|
||
# Directory of the zip command.
|
||
# Example: setenv OO_SDK_ZIP_HOME /usr/bin
|
||
setenv OO_SDK_ZIP_HOME @OO_SDK_ZIP_HOME@
|
||
|
||
# Directory of the C++ compiler.
|
||
# Example: setenv OO_SDK_CPP_HOME /usr/bin
|
||
setenv OO_SDK_CPP_HOME @OO_SDK_CPP_HOME@
|
||
|
||
# Solaris only
|
||
setenv OO_SDK_CC_55_OR_HIGHER @OO_SDK_CC_55_OR_HIGHER@
|
||
|
||
# Directory of the Java SDK.
|
||
# Example: setenv OO_SDK_JAVA_HOME "/usr/jdk/jdk1.6.0_10"
|
||
setenv OO_SDK_JAVA_HOME @OO_SDK_JAVA_HOME@
|
||
|
||
# Special output directory
|
||
# Example: setenv OO_SDK_OUTPUT_DIR "$HOME"
|
||
setenv OO_SDK_OUTPUT_DIR @OO_SDK_OUTPUT_DIR@
|
||
|
||
# Environment variable to enable auto deployment of example components
|
||
# Example: set SDK_AUTO_DEPLOYMENT=YES
|
||
setenv SDK_AUTO_DEPLOYMENT @SDK_AUTO_DEPLOYMENT@
|
||
|
||
# Get the operating system.
|
||
set sdk_platform=`${OO_SDK_HOME}/config.guess | cut -d"-" -f3,4`
|
||
|
||
# Set the directory name.
|
||
set programdir=program
|
||
set javadir=bin
|
||
switch (${sdk_platform})
|
||
case "darwin*":
|
||
set programdir="Contents/MacOS"
|
||
set javacdir=Commands
|
||
breaksw
|
||
endsw
|
||
|
||
|
||
# Set office program path.
|
||
if ( "${OFFICE_HOME}" != "" ) then
|
||
setenv OFFICE_PROGRAM_PATH "${OFFICE_HOME}/${programdir}"
|
||
endif
|
||
|
||
|
||
# Set UNO path, necessary to ensure that the cpp examples using the
|
||
# new UNO bootstrap mechanism use the configured office installation.
|
||
if ( ${?OFFICE_PROGRAM_PATH} ) then
|
||
setenv UNO_PATH "${OFFICE_PROGRAM_PATH}"
|
||
endif
|
||
|
||
if ( "${OO_SDK_URE_HOME}" != "" ) then
|
||
setenv OO_SDK_URE_BIN_DIR "${OO_SDK_URE_HOME}/bin"
|
||
setenv OO_SDK_URE_LIB_DIR "${OO_SDK_URE_HOME}/lib"
|
||
setenv OO_SDK_URE_JAVA_DIR "${OO_SDK_URE_HOME}/share/java"
|
||
else
|
||
setenv OO_SDK_URE_BIN_DIR "${OFFICE_PROGRAM_PATH}"
|
||
setenv OO_SDK_URE_LIB_DIR "${OFFICE_PROGRAM_PATH}"
|
||
setenv OO_SDK_URE_JAVA_DIR "${OFFICE_PROGRAM_PATH}/classes"
|
||
endif
|
||
|
||
# Set SDK example output directory
|
||
setenv OO_SDK_OUT ${OO_SDK_HOME}
|
||
if ( $?OO_SDK_OUTPUT_DIR ) then
|
||
setenv OO_SDK_OUT ${OO_SDK_OUTPUT_DIR}/${OO_SDK_NAME}
|
||
endif
|
||
|
||
# check platform and set appropriate variables
|
||
switch (`${OO_SDK_HOME}/config.guess | cut -d"-" -f3,4`)
|
||
case "solaris*":
|
||
if ( `${OO_SDK_HOME}/config.guess | cut -d"-" -f1` == "sparc" ) then
|
||
set directoryname=solsparc
|
||
set platform=Solaris Sparc
|
||
else
|
||
set directoryname=solintel
|
||
set platform=Solaris Intel
|
||
endif
|
||
set comid=C52
|
||
set pltfrm=sunpro
|
||
set soext=so
|
||
set exampleout=SOLARISexample.out
|
||
|
||
# set LD_LIBRARY_PATH
|
||
if ( $?LD_LIBARY_PATH == 0) then
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.
|
||
else
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.:${LD_LIBRARY_PATH}
|
||
endif
|
||
breaksw
|
||
|
||
case "linux-gnu":
|
||
if ( $?OO_SDK_CPP_HOME == 0) then
|
||
set sdk_gxx_include_path=`echo "#include <cstring>" | ${OO_SDK_CPP_HOME}/g++ -E -xc++ - | sed -n '/.*1*"\(.*\)\/cstring".*/s//\1/p' | head -n 1`
|
||
setenv SDK_GXX_INCLUDE_PATH ${sdk_gxx_include_path}
|
||
endif
|
||
|
||
set directoryname=linux
|
||
set comid=gcc3
|
||
set pltfrm=gcc
|
||
set soext=so
|
||
set exampleout=LINUXexample.out
|
||
set platform=Linux
|
||
|
||
# set LD_LIBRARY_PATH
|
||
if ( $?LD_LIBARY_PATH == 0) then
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.
|
||
else
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.:${LD_LIBRARY_PATH}
|
||
endif
|
||
breaksw
|
||
|
||
case "darwin*":
|
||
if ( $?OO_SDK_CPP_HOME == 0) then
|
||
set sdk_gxx_include_path=`echo "#include <cstring>" | ${OO_SDK_CPP_HOME}/g++ -E -xc++ - | sed -n '/.*1*"\(.*\)\/cstring".*/s//\1/p' | head -n 1`
|
||
setenv SDK_GXX_INCLUDE_PATH ${sdk_gxx_include_path}
|
||
endif
|
||
|
||
set directoryname=macosx
|
||
set comid=gcc3
|
||
set pltfrm=gcc
|
||
set soext=dylib
|
||
set exampleout=MACOSXexample.out
|
||
set platform=MacOSX
|
||
|
||
# set DYLD_LIBRARY_PATH
|
||
if ( $?DYLD_LIBRARY_PATH == 0) then
|
||
setenv DYLD_LIBRARY_PATH ${OO_SDK_OUT}/${directoryname}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.
|
||
else
|
||
setenv DYLD_LIBRARY_PATH ${OO_SDK_OUT}/${directoryname}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.:${DYLD_LIBRARY_PATH}
|
||
endif
|
||
breaksw
|
||
|
||
case "freebsd*":
|
||
if ( $?OO_SDK_CPP_HOME == 0) then
|
||
set sdk_gxx_include_path=`echo "#include <cstring>" | ${OO_SDK_CPP_HOME}/g++ -E -xc++ - | sed -n '/.*1*"\(.*\)\/cstring".*/s//\1/p' | head -n 1`
|
||
setenv SDK_GXX_INCLUDE_PATH ${sdk_gxx_include_path}
|
||
endif
|
||
|
||
set directoryname=freebsd
|
||
set comid=gcc3
|
||
set pltfrm=gcc
|
||
set soext=so
|
||
set exampleout=FREEBSDexample.out
|
||
set platform=FreeBSD
|
||
|
||
# set LD_LIBRARY_PATH
|
||
if ( $?LD_LIBARY_PATH == 0) then
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.
|
||
else
|
||
setenv LD_LIBRARY_PATH ${OO_SDK_HOME}/lib:${OO_SDK_OUT}/${exampleout}/lib:${OO_SDK_URE_LIB_DIR}:.:${LD_LIBRARY_PATH}
|
||
endif
|
||
|
||
if ( -e "/sbin/sysctl" ) then
|
||
set OSVERSION=`/sbin/sysctl -n kern.osreldate`
|
||
else
|
||
set OSVERSION=`/usr/sbin/sysctl -n kern.osreldate`
|
||
endif
|
||
|
||
if ( ${OSVERSION} < 500016 ) then
|
||
setenv PTHREAD_CFLAGS -D_THREAD_SAFE
|
||
setenv PTHREAD_LIBS -pthread
|
||
else if ( ${OSVERSION} < 502102 ) then
|
||
setenv PTHREAD_CFLAGS -D_THREAD_SAFE
|
||
setenv PTHREAD_LIBS -lc_r
|
||
else
|
||
setenv PTHREAD_LIBS -pthread
|
||
endif
|
||
breaksw
|
||
endsw
|
||
|
||
# set PATH
|
||
if ( $?PATH == 0) then
|
||
setenv PATH ${OO_SDK_ZIP_HOME}:${OO_SDK_MAKE_HOME}:${OO_SDK_HOME}/bin:${OO_SDK_OUT}/${exampleout}:${OO_SDK_URE_BIN_DIR}:.
|
||
else
|
||
setenv PATH ${OO_SDK_ZIP_HOME}:${OO_SDK_MAKE_HOME}:${OO_SDK_HOME}/bin:${OO_SDK_OUT}/${exampleout}:${OO_SDK_URE_BIN_DIR}:.:${PATH}
|
||
endif
|
||
|
||
# Set CLASSPATH
|
||
if ( ${?OFFICE_PROGRAM_PATH} ) then
|
||
if ( ${?CLASSPATH} == 0 ) then
|
||
setenv CLASSPATH "${OFFICE_PROGRAM_PATH}/classes/unoil.jar"
|
||
else
|
||
setenv CLASSPATH "${OFFICE_PROGRAM_PATH}/classes/unoil.jar:${CLASSPATH}"
|
||
endif
|
||
endif
|
||
if ( $?CLASSPATH == 0) then
|
||
setenv CLASSPATH "${OO_SDK_URE_JAVA_DIR}/juh.jar:${OO_SDK_URE_JAVA_DIR}/jurt.jar:${OO_SDK_URE_JAVA_DIR}/ridl.jar:${OO_SDK_URE_JAVA_DIR}/unoloader.jar"
|
||
else
|
||
setenv CLASSPATH "${OO_SDK_URE_JAVA_DIR}/juh.jar:${OO_SDK_URE_JAVA_DIR}/jurt.jar:${OO_SDK_URE_JAVA_DIR}/ridl.jar:${OO_SDK_URE_JAVA_DIR}/unoloader.jar:${CLASSPATH}"
|
||
endif
|
||
|
||
if ( $?OO_SDK_CPP_HOME == 0) then
|
||
setenv PATH ${OO_SDK_CPP_HOME}:${PATH}
|
||
endif
|
||
|
||
if ( $?OO_SDK_JAVA_HOME == 0) then
|
||
setenv PATH ${OO_SDK_JAVA_HOME}:${PATH}
|
||
endif
|
||
|
||
|
||
if ( "${platform}" == "MacOSX" ) then
|
||
# For URE, prepare symbolic links for libraries:
|
||
# Only necessary on MacOSX, on other Unix systems the links are already prepared
|
||
# in the SDK installation.
|
||
|
||
# cleanup potential old links first
|
||
rm -f "${OO_SDK_OUT}/${directoryname}/lib/libuno_cppu.so" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_cppuhelper${comid}.${soext}" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_sal.${soext}" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_salhelper${comid}.${soext}" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_purpenvhelper${comid}.${soext}"
|
||
|
||
if ( "${OO_SDK_URE_HOME}" != "" ) then
|
||
mkdir -p "${OO_SDK_OUT}/${directoryname}/lib"
|
||
ln -s "${OO_SDK_URE_LIB_DIR}/libuno_cppu.${soext}.3" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_cppu.${soext}"
|
||
ln -s "${OO_SDK_URE_LIB_DIR}/libuno_cppuhelper${comid}.${soext}.3" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_cppuhelper${comid}.${soext}"
|
||
ln -s "${OO_SDK_URE_LIB_DIR}/libuno_sal.${soext}.3" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_sal.${soext}"
|
||
ln -s "${OO_SDK_URE_LIB_DIR}/libuno_salhelper${comid}.${soext}.3" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_salhelper${comid}.${soext}"
|
||
ln -s "${OO_SDK_URE_LIB_DIR}/libuno_purpenvhelper${comid}.${soext}.3" \
|
||
"${OO_SDK_OUT}/${directoryname}/lib/libuno_purpenvhelper${comid}.${soext}"
|
||
endif
|
||
endif
|
||
|
||
|
||
echo
|
||
echo " ************************************************************************"
|
||
echo " *"
|
||
echo " * SDK environment is prepared for ${platform}"
|
||
echo " *"
|
||
echo " * SDK = ${OO_SDK_HOME}"
|
||
echo " * Office = ${OFFICE_HOME}"
|
||
echo " * URE = ${OO_SDK_URE_HOME}"
|
||
echo " * Make = ${OO_SDK_MAKE_HOME}"
|
||
echo " * Zip = ${OO_SDK_ZIP_HOME}"
|
||
if ( $?OO_SDK_CPP_HOME == 0) then
|
||
echo " * C++ Compiler = "
|
||
else
|
||
echo " * C++ Compiler = ${OO_SDK_CPP_HOME}"
|
||
endif
|
||
if ( $?OO_SDK_JAVA_HOME == 0) then
|
||
echo " * Java = "
|
||
else
|
||
echo " * Java = ${OO_SDK_JAVA_HOME}"
|
||
endif
|
||
if ( $?OO_SDK_OUTPUT_DIR == 0) then
|
||
echo " * Special Output directory = "
|
||
else
|
||
echo " * SDK Output directory = ${OO_SDK_OUT}"
|
||
endif
|
||
echo " * Auto deployment = ${SDK_AUTO_DEPLOYMENT}"
|
||
echo " *"
|
||
echo " ************************************************************************"
|
||
|
||
unset sdkdir
|
||
unset directoryname
|
||
unset comid
|
||
unset exampleout
|
||
unset platform
|
||
|
||
echo "]2;Shell prepared with the SDK environment"
|