makepackage.sh revision a169901884ca9d134cbfad013f290fa234c37aed
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync#!/bin/sh
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# innotek VirtualBox
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# VirtualBox Solaris package creation script.
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync#
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# Copyright (C) 2007-2008 innotek GmbH
a0352d06ef77cf45a08eb08b4d65d570b7b294cbvboxsync#
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# available from http://www.virtualbox.org. This file is free software;
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# you can redistribute it and/or modify it under the terms of the GNU
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# General Public License (GPL) as published by the Free Software
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync#
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync#
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# Usage:
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# makespackage.sh $(PATH_TARGET)/install packagename $(BUILD_TARGET_ARCH)
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncif [ -z "$3" ]; then
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync echo "Usage: $0 installdir packagename x86|amd64"
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync exit 1
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncfi
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsynccd "$1"
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncecho 'i pkginfo=./vbox.pkginfo' > prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncecho 'i postinstall=./postinstall.sh' >> prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncecho 'i preremove=./preremove.sh' >> prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncecho 'i space=./vbox.space' >> prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncecho 'e sed /etc/devlink.tab ? ? ?' >> prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncfind . -print | /usr/sfw/bin/ggrep -v -E 'prototype|makepackage.sh|vbox.pkginfo|postinstall.sh|preremove.sh|ReadMe.txt|vbox.space' | pkgproto >> prototype
a0352d06ef77cf45a08eb08b4d65d570b7b294cbvboxsync/usr/bin/awk 'NF == 6 && $2 == "none" { $5 = "root"; $6 = "bin" } { print }' prototype > prototype2
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync/usr/bin/awk 'NF == 6 && $2 == "none" { $3 = "opt/VirtualBox/"$3"="$3 } { print }' prototype2 > prototype
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync# install the kernel module to the right place.
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncif test "$3" = "x86"; then
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync /usr/bin/awk 'NF == 6 && $3 == "opt/VirtualBox/vboxdrv=vboxdrv" { $3 = "platform/i86pc/kernel/drv/vboxdrv=vboxdrv" } { print }' prototype > prototype2
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncelse
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync /usr/bin/awk 'NF == 6 && $3 == "opt/VirtualBox/vboxdrv=vboxdrv" { $3 = "platform/i86pc/kernel/drv/amd64/vboxdrv=vboxdrv" } { print }' prototype > prototype2
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsyncfi
0b74a2f80aba476dc8be8bc1c63891fc53945986vboxsync
/usr/bin/awk 'NF == 6 && $3 == "opt/VirtualBox/vboxdrv.conf=vboxdrv.conf" { $3 = "platform/i86pc/kernel/drv/vboxdrv.conf=vboxdrv.conf" } { print }' prototype2 > prototype
rm prototype2
pkgmk -o -r .
pkgtrans -s -o /var/spool/pkg `pwd`/$2 SUNWvbox
/usr/sfw/bin/gtar zcvf $2.tar.gz $2 autoresponse ReadMe.txt
rm -rf /var/spool/pkg/SUNWvbox