| # ************************************************************* |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| # ************************************************************* |
| |
| %system solaris |
| |
| %postinstall << END |
| |
| # |
| # Need to check diskless service install and make sure use the correct unpkg |
| # |
| DISKLESS_SRVC=`echo $$BASEDIR | /usr/bin/grep export/Solaris_[1-9][0-9]/usr_$${ARCH}.all` |
| if [ "$$DISKLESS_SRVC" ]; then |
| UNOPKG=/export/Solaris_11/usr_`uname -p`.allPRODUCTDIRECTORYNAME/program/unopkg |
| POSTRUN=$$PKG_INSTALL_ROOT/usr_`uname -p`.all/usr/lib/postrun |
| CLIENT_BASEDIR=$$PKG_INSTALL_ROOT/usr_$${ARCH}.all |
| else |
| UNOPKG=$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg |
| POSTRUN=$$PKG_INSTALL_ROOT/usr/lib/postrun |
| fi |
| # Use postrun command on Solaris where available (OpenSolaris) |
| if [ -x $$POSTRUN ]; then |
| ( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0" |
| echo "umask 022" |
| echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync" |
| echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" |
| ) | $$POSTRUN -b -c UNOPKG |
| if [ "$$?" != "0" ]; then |
| echo "\nERROR: Installation of UNO extensions" |
| echo " through $$POSTRUN failed." |
| exit 1 |
| fi |
| else |
| # No postrun available, try running unopkg directly |
| "$$UNOPKG" sync |
| find "$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; |
| if [ "$$?" != "0" ]; then |
| echo "\nERROR: Installation of UNO extensions failed." |
| test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root install requires SUNWpostrun package to be installed" |
| echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.' |
| exit 1 |
| fi |
| fi |
| |
| exit 0 |
| END |
| |
| %postremove << END |
| |
| # Use postrun command on Solaris where available (OpenSolaris) |
| if [ -x $$PKG_INSTALL_ROOT/usr/lib/postrun ]; then |
| ( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0" |
| echo "cd \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program\"" |
| echo "umask 022" |
| echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync" |
| echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" |
| ) | $$PKG_INSTALL_ROOT/usr/lib/postrun -c UNOPKG |
| else |
| # No postrun available, try running unopkg directly |
| test -x $$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg || exit 0 |
| "$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg" sync |
| echo "find \"$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" |
| if [ "$$?" != "0" ]; then |
| echo "\nERROR: Removal of UNO extension failed." |
| test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root uninstall requires SUNWpostrun package to be installed" |
| echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.' |
| exit 1 |
| fi |
| fi |
| |
| |
| exit 0 |
| END |
| |
| %system linux |
| |
| %format rpm |
| |
| %postinstall << END |
| |
| if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then |
| "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync |
| if [ "$$?" != "0" ]; then |
| echo "ERROR: Registration of extensions failed!" |
| exit 1 |
| else |
| echo "SUCCESS: unopkg returns successful!" |
| fi |
| find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; |
| fi |
| |
| exit 0 |
| |
| END |
| |
| %postremove << END |
| |
| if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then |
| "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync |
| if [ "$$?" != "0" ]; then |
| echo "ERROR: Registration of extensions failed!" |
| exit 1 |
| else |
| echo "SUCCESS: unopkg returns successful!" |
| fi |
| find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; |
| fi |
| |
| exit 0 |
| END |
| |
| %format deb |
| |
| %postinstall << END |
| |
| if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]; then |
| "PRODUCTDIRECTORYNAME/program/unopkg" sync |
| if [ "$$?" != "0" ]; then |
| echo "ERROR: Registration of extensions failed!" |
| exit 1 |
| else |
| echo "SUCCESS: unopkg returns successful!" |
| fi |
| find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; |
| fi |
| |
| exit 0 |
| |
| END |
| |
| %postremove << END |
| |
| if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ] |
| then |
| "PRODUCTDIRECTORYNAME/program/unopkg" sync |
| if [ "$$?" != "0" ]; then |
| echo "ERROR: Registration of extensions failed!" |
| exit 1 |
| else |
| echo "SUCCESS: unopkg returns successful!" |
| fi |
| find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; |
| fi |
| |
| exit 0 |
| END |
| |
| %system all |