office-gobmx/bin/distro-install-sdk
Rene Engelhard 3fda57c248 fix SDK paths (especially cat/sed) in bin/distro-install-sdk
wonder how that ever worked. cat and sed are in /bin, not /usr/bin.
Appparetly the BSDs have them there, though, so generalize though this
is for distros and it probably shouldn't matter.

Change-Id: I6efb3e92b8f8d15f3671090a3eaa9d8836f9998f
Reviewed-on: https://gerrit.libreoffice.org/39276
Reviewed-by: Rene Engelhard <rene@debian.org>
Tested-by: Rene Engelhard <rene@debian.org>
2017-07-02 13:34:55 +02:00

84 lines
4.3 KiB
Bash
Executable file

#!/bin/sh
if test -z "${SRC_ROOT}"; then
echo "distro-install-clean-up: No environment set!"
exit 1
fi
if test -d $DESTDIR$INSTALLDIR/sdk ; then
echo "SDK installation clean up"
# bin potential .orig files
find $DESTDIR$INSTALLDIR/sdk -name "*.orig" -exec rm -f {} \;
# move some SDK directories to the right place according to FHS
# note that examples must stay in $DESTDIR$INSTALLDIR/sdk because there are used
# relative paths to $DESTDIR$INSTALLDIR/sdk/setting and it does not work via
# a symlink
mkdir -p $DESTDIR$PREFIXDIR/include
mkdir -p $DESTDIR$DATADIR/idl
mkdir -p $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk
mkdir -p $DESTDIR$DOCDIR/sdk
mv $DESTDIR$INSTALLDIR/sdk/include $DESTDIR$PREFIXDIR/include/$INSTALLDIRNAME
if [ -d $DESTDIR$INSTALLDIR/sdk/classes ]; then
mv $DESTDIR$INSTALLDIR/sdk/classes $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk/classes
fi
mv $DESTDIR$INSTALLDIR/sdk/idl $DESTDIR$DATADIR/idl/$INSTALLDIRNAME
mv $DESTDIR$INSTALLDIR/sdk/docs $DESTDIR$DOCDIR/sdk
mv $DESTDIR$INSTALLDIR/sdk/share/readme $DESTDIR$DOCDIR/sdk/readme
mv $DESTDIR$INSTALLDIR/sdk/index.html $DESTDIR$DOCDIR/sdk
# compat symlinks
ln -sf $PREFIXDIR/include/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/sdk/include
ln -sf $DATADIR/$INSTALLDIRNAME/sdk/classes $DESTDIR$INSTALLDIR/sdk/classes
ln -sf $DATADIR/idl/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/sdk/idl
ln -sf $DOCDIR/sdk/docs $DESTDIR$INSTALLDIR/sdk/
ln -sf $DOCDIR/sdk/index.html $DESTDIR$INSTALLDIR/sdk/index.html
ln -sf $INSTALLDIR/sdk/examples $DESTDIR$DOCDIR/sdk/examples
# fix file list
sed -e "s|^\(%dir \)\?$INSTALLDIR/sdk/include|\1$PREFIXDIR/include/$INSTALLDIRNAME|" \
-e "s|^\(%dir \)\?$INSTALLDIR/sdk/classes|\1$DATADIR/$INSTALLDIRNAME/sdk/classes|" \
-e "s|^\(%dir \)\?$INSTALLDIR/sdk/idl|\1$DATADIR/idl/$INSTALLDIRNAME|" \
-e "s|^\(%dir \)\?$INSTALLDIR/sdk/docs|\1$DOCDIR/sdk/docs|" \
-e "s|^\(%dir \)\?$INSTALLDIR/sdk/share/readme|\1$DOCDIR/sdk/readme|" \
-e "s|^$INSTALLDIR/sdk/index.html$|$DOCDIR/sdk/index.html|" \
-e "s|^\(%dir \)\?$INSTALLDIR/sdk/share.*$||" \
-e "/\.orig$/D" \
-e "/^$/D" \
$DESTDIR/gid_Module_Root_SDK | sort -u \
>$DESTDIR/gid_Module_Root_SDK.new
mv $DESTDIR/gid_Module_Root_SDK.new $DESTDIR/gid_Module_Root_SDK
#
echo "%dir $DATADIR/$INSTALLDIRNAME/sdk" >>$DESTDIR/gid_Module_Root_SDK
echo "%dir $DATADIR/$INSTALLDIRNAME" >>$DESTDIR/gid_Module_Root_SDK
echo "%dir $DATADIR/idl" >>$DESTDIR/gid_Module_Root_SDK
echo "%dir $DOCDIR/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK
echo "%dir $DOCDIR/sdk" >>$DESTDIR/gid_Module_Root_SDK
echo "%dir $DOCDIR" >>$DESTDIR/gid_Module_Root_SDK
echo "$INSTALLDIR/sdk/include" >>$DESTDIR/gid_Module_Root_SDK
echo "$INSTALLDIR/sdk/classes" >>$DESTDIR/gid_Module_Root_SDK
echo "$INSTALLDIR/sdk/idl" >>$DESTDIR/gid_Module_Root_SDK
echo "$INSTALLDIR/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK
echo "$INSTALLDIR/sdk/index.html" >>$DESTDIR/gid_Module_Root_SDK
echo "$DOCDIR/sdk/examples" >>$DESTDIR/gid_Module_Root_SDK
# generate default profiles
sed -e "s,@OO_SDK_NAME@,libreoffice${PRODUCTVERSION}_sdk," \
-e "s,@OO_SDK_HOME@,$INSTALLDIR/sdk," \
-e "s,@OFFICE_HOME@,$INSTALLDIR," \
-e "s,@OO_SDK_MAKE_HOME@,$(dirname $(command -v make))," \
-e "s,@OO_SDK_ZIP_HOME@,$(dirname $(command -v zip))," \
-e "s,@OO_SDK_CPP_HOME@,$(dirname $(command -v cpp))," \
-e "s,@OO_SDK_SED_HOME@,$(dirname $(command -v sed))," \
-e "s,@OO_SDK_CAT_HOME@,$(dirname $(command -v cat))," \
-e "s,@OO_SDK_JAVA_HOME@,$JAVA_HOME," \
-e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \
-e "s,@SDK_AUTO_DEPLOYMENT@,NO," \
$DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh.in \
> $DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh
chmod 755 $DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh
echo $INSTALLDIR/sdk/setsdkenv_unix.sh >>$DESTDIR/gid_Module_Root_SDK
fi