diff options
Diffstat (limited to 'src/VBox/Installer/linux/rpm')
-rw-r--r-- | src/VBox/Installer/linux/rpm/LocalConfig.kmk | 2 | ||||
-rw-r--r-- | src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec | 30 | ||||
-rwxr-xr-x | src/VBox/Installer/linux/rpm/rules | 55 |
3 files changed, 41 insertions, 46 deletions
diff --git a/src/VBox/Installer/linux/rpm/LocalConfig.kmk b/src/VBox/Installer/linux/rpm/LocalConfig.kmk index 921b63fb..a9bebf87 100644 --- a/src/VBox/Installer/linux/rpm/LocalConfig.kmk +++ b/src/VBox/Installer/linux/rpm/LocalConfig.kmk @@ -4,7 +4,7 @@ # # -# Copyright (C) 2006-2010 Oracle Corporation +# Copyright (C) 2006-2012 Oracle Corporation # # This file is part of VirtualBox Open Source Edition (OSE), as # available from http://www.virtualbox.org. This file is free software; diff --git a/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec b/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec index 0baac2a9..07bc38cc 100644 --- a/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec +++ b/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec @@ -79,11 +79,16 @@ mv *.gc $RPM_BUILD_ROOT/usr/lib/virtualbox mv *.r0 $RPM_BUILD_ROOT/usr/lib/virtualbox mv *.rel $RPM_BUILD_ROOT/usr/lib/virtualbox || true mv VBoxNetDHCP $RPM_BUILD_ROOT/usr/lib/virtualbox +mv VBoxNetNAT $RPM_BUILD_ROOT/usr/lib/virtualbox mv VBoxNetAdpCtl $RPM_BUILD_ROOT/usr/lib/virtualbox +if [ -f VBoxVolInfo ]; then + mv VBoxVolInfo $RPM_BUILD_ROOT/usr/lib/virtualbox +fi mv VBoxXPCOMIPCD $RPM_BUILD_ROOT/usr/lib/virtualbox mv components $RPM_BUILD_ROOT/usr/lib/virtualbox/components mv *.so $RPM_BUILD_ROOT/usr/lib/virtualbox mv *.so.4 $RPM_BUILD_ROOT/usr/lib/virtualbox || true +ln -s ../VBoxVMM.so $RPM_BUILD_ROOT/usr/lib/virtualbox/components/VBoxVMM.so mv VBoxTestOGL $RPM_BUILD_ROOT/usr/lib/virtualbox mv vboxshell.py $RPM_BUILD_ROOT/usr/lib/virtualbox (export VBOX_INSTALL_PATH=/usr/lib/virtualbox && \ @@ -99,9 +104,9 @@ mv VBoxCreateUSBNode.sh $RPM_BUILD_ROOT/usr/share/virtualbox cp icons/128x128/virtualbox.png $RPM_BUILD_ROOT/usr/share/pixmaps/virtualbox.png cd icons for i in *; do - if [ -f $i/virtualbox.png ]; then + if [ -f $i/virtualbox.* ]; then install -d $RPM_BUILD_ROOT/usr/share/icons/hicolor/$i/apps - mv $i/virtualbox.png $RPM_BUILD_ROOT/usr/share/icons/hicolor/$i/apps + mv $i/virtualbox.* $RPM_BUILD_ROOT/usr/share/icons/hicolor/$i/apps fi install -d $RPM_BUILD_ROOT/usr/share/icons/hicolor/$i/mimetypes mv $i/* $RPM_BUILD_ROOT/usr/share/icons/hicolor/$i/mimetypes || true @@ -116,8 +121,11 @@ if %WEBSVC%; then for i in vboxwebsrv webtest; do mv $i $RPM_BUILD_ROOT/usr/lib/virtualbox; done fi -for i in VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl; do +for i in VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetNAT VBoxNetAdpCtl; do chmod 4511 $RPM_BUILD_ROOT/usr/lib/virtualbox/$i; done +if [ -f $RPM_BUILD_ROOT/usr/lib/virtualbox/VBoxVolInfo ]; then + chmod 4511 $RPM_BUILD_ROOT/usr/lib/virtualbox/VBoxVolInfo +fi if [ -d ExtensionPacks/VNC ]; then mv ExtensionPacks/VNC $RPM_BUILD_ROOT/usr/lib/virtualbox/ExtensionPacks fi @@ -272,7 +280,7 @@ if [ "$INSTALL_NO_GROUP" != "1" ]; then echo echo "Creating group 'vboxusers'. VM users must be member of that group!" echo - groupadd -f vboxusers 2> /dev/null + groupadd -r -f vboxusers 2> /dev/null fi # install udev rule (disable with INSTALL_NO_UDEV=1 in /etc/default/virtualbox) @@ -391,7 +399,7 @@ if [ "$1" = 0 ]; then /sbin/service vboxdrv stop > /dev/null /sbin/chkconfig --del vboxdrv %endif - rm -f /etc/udev/rules.d/10-vboxdrv.rules + rm -f /etc/udev/rules.d/60-vboxdrv.rules rm -f /etc/vbox/license_agreed rm -f /etc/vbox/module_not_compiled fi @@ -445,13 +453,13 @@ rm -rf $RPM_BUILD_ROOT %{?rpm_suse: /sbin/rcvboxballoonctrl-service} %{?rpm_suse: /sbin/rcvboxautostart-service} %{?rpm_suse: /sbin/rcvboxweb-service} -/lib/modules /etc/vbox -/usr/bin +/usr/bin/* /usr/src/vbox* /usr/lib/virtualbox -/usr/share/applications -/usr/share/icons -/usr/share/mime/packages -/usr/share/pixmaps +/usr/share/applications/* +/usr/share/icons/hicolor/*/apps/* +/usr/share/icons/hicolor/*/mimetypes/* +/usr/share/mime/packages/* +/usr/share/pixmaps/* /usr/share/virtualbox diff --git a/src/VBox/Installer/linux/rpm/rules b/src/VBox/Installer/linux/rpm/rules index 8e22093b..91606c44 100755 --- a/src/VBox/Installer/linux/rpm/rules +++ b/src/VBox/Installer/linux/rpm/rules @@ -52,7 +52,7 @@ ifeq ($(shell if grep -q '^%disttag' /usr/lib/rpm/macros.d/mandriva 2>/dev/null; $(error Fix /usr/lib/rpm/macros.d/mandriva) endif -verpkg := VirtualBox-4.2 +verpkg := VirtualBox-4.3 current := $(shell pwd) vboxroot := $(shell cd ../../../..; pwd) pkgdir := $(if $(PKGDIR),$(PKGDIR),$(shell cd ../../../../..; pwd)) @@ -62,7 +62,7 @@ arch := $(shell if [ `uname -m` = "x86_64" ]; then echo "amd64"; else echo " verfile := $(builddir)/version-generated.mk ose := $(if $(OSE),1,$(if $(wildcard $(vboxroot)/src/VBox/RDP/server),,1)) -include $(vboxroot)/SVN_REVISION -svnrev :=$(if $(svn_revision),$(svn_revision),0) +svnrev :=$(if $(svn_revision),$(svn_revision),) NOMODS ?= $(ose) NOQT ?= $(HEADLESS) @@ -84,10 +84,10 @@ ifneq ($(MAKECMDGOALS),clean) $(error Cannot detect package distribution (rpmrel=$(rpmrel))) endif - ifeq ($(filter-out el4 el5 el6 ol4 ol5 ol6 centos4 centos5 centos6 fedora9 fedora11 fedora12 fedora13 fedora14 fedora15 fedora16 fedora17 turbolinux11,$(rpmrel)),) + ifeq ($(filter-out el5 el6 ol5 ol6 centos5 centos6 fedora15 fedora16 fedora17 fedora18,$(rpmrel)),) rpmspec := rpm_redhat endif - ifeq ($(filter-out openSUSE110 openSUSE111 openSUSE112 openSUSE113 openSUSE114 sles10.1 sles11.0,$(rpmrel)),) + ifeq ($(filter-out openSUSE110 openSUSE111 openSUSE112 openSUSE113 openSUSE114 openSUSE123 sles10.1 sles11.0,$(rpmrel)),) rpmspec := rpm_suse endif ifeq ($(filter-out mdv2009.1 mdv2010.0 mdv2011.0,$(rpmrel)),) @@ -109,8 +109,8 @@ rpmver :=$(ver)$(if $(NOSUBVER),,$(if $(svn_revision),_$(svn_revision),)$(VERS archdir := $(current)/rpm/VirtualBox-$(ver) rpmname := $(verpkg)-$(rpmver)_$(rpmrel) -# Fedora13/14 is bleeding edge, the other jails have outdated kernel headers -instmod := $(if $(filter el4 el5 el6 ol4 ol5 ol6 centos4 centos5 centos6 sles10.1 sles11.0 fedora13 fedora14 fedora15 fedora16 fedora17,$(rpmrel)),,install_rpm) +# never ship any modules +instmod := ifneq ($(STAGEDISO),) ifeq ($(wildcard $(STAGEDISO)/VBoxGuestAdditions.iso),) @@ -132,18 +132,18 @@ else endif cfg_flags := $(if $(NOQT),--disable-qt,) \ - $(if $(filter el4 sles10.1,$(rpmrel)),--build-libxml2,) \ - $(if $(filter el4,$(rpmrel)),--build-libssl,) \ - $(if $(filter el4 el5 ol4 ol5 centos4 centos5 sles10.1,$(rpmrel)),--build-libcurl,) \ + $(if $(filter sles10.1,$(rpmrel)),--build-libxml2,) \ + $(if $(filter el5 el6 sles10.1 sles11.0 mdv2011.0,$(rpmrel)),--build-libvpx,) \ + $(if $(filter el5 ol5 centos5 sles10.1 sles11.0,$(rpmrel)),--build-libcurl,) \ $(if $(filter el5 centos5 sles10.1,$(rpmrel)),--disable-sdl-ttf,) \ - $(if $(filter sles10.1 turbolinux11,$(rpmrel)),--disable-pulse,) \ - $(if $(filter el4 el5 ol4 ol5 centos4 centos5,$(rpmrel)),--enable-pulse,) \ - $(if $(filter el4 el5 ol4 ol5 centos4 centos5 mdv2010.0 sles10.1 sles11.0 turbolinux11,$(rpmrel)),--with-qt4-dir=/home/vbox/Qt-4.7.4-stdc++6-$(arch)) \ + $(if $(filter sles10.1,$(rpmrel)),--disable-pulse,) \ + $(if $(filter el5 ol5 centos5,$(rpmrel)),--enable-pulse,) \ + $(if $(filter el5 ol5 centos5 sles10.1 sles11.0,$(rpmrel)),--with-qt4-dir=/home/vbox/Qt-4.7.4-stdc++6-$(arch)) \ $(if $(ose),--ose,) $(if $(LINUX),--with-linux=$(LINUX),) \ $(if $(HEADLESS),--build-headless,) \ $(if $(DEBUG),--build-debug,) \ $(if $(NOWINE),,--setup-wine) \ - $(if $(NOWEBSVC),,--enable-webservice) \ + $(if $(NOWEBSVC),,$(if $(ose),--enable-webservice,)) \ $(if $(VNC),--enable-vnc,) \ --disable-extpack @@ -153,17 +153,16 @@ bld_flags := AUTOCFG=$(current)/rpm/AutoConfig.kmk \ VBOX_WITHOUT_EXTPACK_PUEL_PACKING=1 \ VBOX_WITHOUT_EXTPACK_VNC_PACKING=1 \ VBOX_DO_STRIP= \ - VBOX_DO_STRIP_MODULES= \ VBOX_WITH_MULTIVERSION_PYTHON= \ $(doc_dir) \ $(if $(ose),,VBOX_WITH_DOCS_CHM=1) \ VBOX_PACKAGE_DIST=$(rpmdist) \ - VBOX_SVN_REV=$(svnrev) \ + $(if $(svnrev),VBOX_SVN_REV=$(svnrev),) \ $(if $(NODOCS),VBOX_WITH_DOCS= ,) \ $(if $(VERBOSE),--print-directory KBUILD_VERBOSE=2,--no-print-directory) \ $(if $(STAGEDISO),VBOX_WITHOUT_ADDITIONS=1,) \ $(if $(BLEEDING_EDGE),VBOX_BLEEDING_EDGE=$(BLEEDING_EDGE),) \ - $(if $(filter el4 el5 ol4 ol5 centos4 centos5 fedora9 fedora10 sles10.1 turbolinux11,$(rpmrel)),,VBOX_WITH_SYSFS_BY_DEFAULT=1) + $(if $(filter el5 ol5 centos5 sles10.1,$(rpmrel)),,VBOX_WITH_SYSFS_BY_DEFAULT=1) rpm/configure-stamp: cd $(vboxroot) && ./configure --odir=$(current)/rpm $(cfg_flags) @@ -179,8 +178,8 @@ rpm/build-stamp: rpm/configure-stamp $(if $(STAGEDISO),cp $(STAGEDISO)/VBoxGuestAdditions.iso $(builddir)/bin/additions,) . rpm/env.sh && kmk -C $(vboxroot) $(bld_flags) \ VBOX_NO_LINUX_RUN_INSTALLER=1 \ - VBOX_LNX_ADD_ARCHIVE.x86=$(builddir)/bin/additions/VBoxGuestAdditions-x86-r$(svnrev).tar.bz2 \ - VBOX_LNX_ADD_ARCHIVE.amd64=$(builddir)/bin/additions/VBoxGuestAdditions-amd64-r$(svnrev).tar.bz2 \ + VBOX_LNX_ADD_ARCHIVE.x86=$(builddir)/bin/additions/VBoxGuestAdditions-x86.tar.bz2 \ + VBOX_LNX_ADD_ARCHIVE.amd64=$(builddir)/bin/additions/VBoxGuestAdditions-amd64.tar.bz2 \ VBOX_PATH_ADDITIONS.linux.x86=$(builddir)/bin/additions \ VBOX_PATH_ADDITIONS.linux.amd64=$(builddir)/bin/additions \ packing @@ -227,22 +226,10 @@ binary: rpm/build-stamp -e "s|%VERSION%|$(VBOX_VERSION_STRING)|g" \ -e "s|%GROUP%|$(if $(VBOX_WITHOUT_HARDENING),vboxusers,root)|g" \ vboxdrv.sh.in > $(archdir)/vboxdrv.init - sed \ - -e 's|%NOLSB%|yes|g' \ - -e 's|%DEBIAN%||g' \ - -e 's|%PACKAGE%|virtualbox|g' \ - vboxballoonctrl-service.sh.in > $(archdir)/vboxballoonctrl-service.init - sed \ - -e 's|%NOLSB%|yes|g' \ - -e 's|%DEBIAN%||g' \ - -e 's|%PACKAGE%|virtualbox|g' \ - vboxautostart-service.sh.in > $(archdir)/vboxautostart-service.init - sed \ - -e 's|%NOLSB%|yes|g' \ - -e 's|%DEBIAN%||g' \ - -e 's|%PACKAGE%|virtualbox|g' \ - vboxweb-service.sh.in > $(archdir)/vboxweb-service.init - cp debian/VBox.sh $(archdir) + cp vboxballoonctrl-service.sh $(archdir)/vboxballoonctrl-service.init + cp vboxautostart-service.sh $(archdir)/vboxautostart-service.init + cp vboxweb-service.sh $(archdir)/vboxweb-service.init + cp VBox.sh $(archdir) mv rpm/VirtualBox-$(ver) rpm/$(rpmname) tar -cjf rpm/VirtualBox.tar.bz2 -C rpm $(rpmname) rm -f /usr/src/packages/RPMS/*/VirtualBox*rpm |