Hello community, here is the log from the commit of package virtualbox for openSUSE:Factory checked in at Fri Feb 11 02:33:41 CET 2011. -------- --- virtualbox/virtualbox.changes 2011-01-31 02:57:23.000000000 +0100 +++ /mounts/work_src_done/STABLE/virtualbox/virtualbox.changes 2011-02-08 08:41:54.000000000 +0100 @@ -1,0 +2,8 @@ +Tue Feb 8 07:36:53 UTC 2011 - cshorler@googlemail.com + +- The python package isn't installed correctly, and contains an + unnecessary shared library due to a build / config bug. It is + also missing pre-compiled python (pyc). +- added vbox-python-detection.diff and vbox-xpcom-kmk.diff + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- vbox-python-detection.diff vbox-xpcom-kmk.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ virtualbox.spec ++++++ --- /var/tmp/diff_new_pack.R6QseM/_old 2011-02-11 02:33:02.000000000 +0100 +++ /var/tmp/diff_new_pack.R6QseM/_new 2011-02-11 02:33:02.000000000 +0100 @@ -43,7 +43,7 @@ # ExclusiveArch: %ix86 x86_64 Version: 4.0.2 -Release: 2 +Release: 3 Summary: VirtualBox is an Emulator License: GPLv2+ Group: System/Emulators/PC @@ -82,6 +82,9 @@ #file :http://www.virtualbox.org/browser/trunk/src/VBox/Devices/PC/vbox.ds #see thread : http://lists.freebsd.org/pipermail/freebsd-acpi/2010-October/006795.html Patch6: vbox-smc-napa.diff +#fix build of Python and dev package on openSUSE 11.3 +Patch7: vbox-xpcom-kmk.diff +Patch8: vbox-python-detection.diff #PATCH-FIX-OPENSUSE implement messagebox (VBoxPermissionMessage app), which is displayed, when user #try to start VirtualBox and is not memeber of vboxusers group Patch99: vbox-permissions_warning.diff @@ -202,6 +205,8 @@ %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 +%patch8 -p1 %patch99 -p1 %patch100 %patch101 @@ -220,11 +225,15 @@ # --nofatal try to avoid build fail caused by missing makeself package ./configure \ --disable-kmods \ - --with-gcc=/usr/bin/gcc-4.3 \ - --with-g++=/usr/bin/g++-4.3 \ + --with-gcc=gcc-4.3 \ + --with-g++=g++-4.3 \ --disable-java \ --disable-docs \ --nofatal + +# configure actually warns we should source env.sh (which seems like it could influence the build...) +source env.sh + # # VBOX_PATH_PACKAGE_DOCS set propper path for link to pdf in .desktop file # VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= just disable some functionality in gui @@ -277,10 +286,9 @@ ################################# echo "create directory structure" ################################# +%__install -d -m 755 %{buildroot}/sbin %__install -d -m 755 %{buildroot}%{_bindir} %__install -d -m 755 %{buildroot}%{_sbindir} -%__install -d -m 755 %{buildroot}/sbin -%__install -d -m 755 %{buildroot}%{_datadir}/virtualbox %__install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls %__install -d -m 755 %{buildroot}%{_datadir}/pixmaps %__install -d -m 755 %{buildroot}%{_datadir}/applications @@ -290,7 +298,8 @@ #since 11.3 we don't use hal to detect vbox mouse %__install -d -m 755 %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty %endif -%__install -d -m 755 %{buildroot}%{_vbox_instdir} +%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +#%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/glue %__install -d -m 755 %{buildroot}%{_vbox_instdir}/components %__install -d -m 755 %{buildroot}%{_libdir}/dri %__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/drivers @@ -300,7 +309,6 @@ %__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox %__install -d -m 755 %{buildroot}%{_sysconfdir}/udev/rules.d %__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d -%__install -d -m 755 %{buildroot}%{python_sitelib}/virtualbox #################################################################################### echo "entering virtualbox-kmp-guest and virtualbox-kmp-host install section" @@ -417,9 +425,13 @@ # install languages %__install -m 644 nls/* %{buildroot}%{_datadir}/virtualbox/nls/ popd + +# the build process tells us the desktop file is missing a semicolon...(repackage?) +%__sed 's/^MimeType.*[^;]$/&;/' out/linux.*/release/bin/virtualbox.desktop > %{_tmppath}/virtualbox.desktop # install desktop file -%__install -m 644 out/linux.*/release/bin/virtualbox.desktop \ - %{buildroot}%{_datadir}/applications/%{name}.desktop +%__install -m 644 %{_tmppath}/virtualbox.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop +%suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop 'System Emulator' + # create a menu entry %__install -m 644 out/linux.*/release/bin/VBox.png \ %{buildroot}%{_datadir}/pixmaps/ @@ -429,7 +441,9 @@ %__install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/default/virtualbox #install wrapper script %__install -m 644 %{S:9} %{buildroot}%{_bindir}/VirtualBox + # modify and install the vboxdrv init script +# TODO: some of this stuff breaks the fillup macros below? %__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" src/VBox/Installer/linux/vboxdrv.sh.in %__install -m 744 src/VBox/Installer/linux/vboxdrv.sh.in \ %{buildroot}%{_sysconfdir}/init.d/vboxdrv @@ -442,13 +456,29 @@ %__install -d -m 755 %{buildroot}%{_var}/adm/fillup-templates install -m 700 %{S:13} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.vbox -%suse_update_desktop_file -i %{buildroot}%{_datadir}/applications/%{name}.desktop System Emulator +###################################################### +echo "entrering python-virtualbox install section" +###################################################### +pushd out/linux.*/release/bin/sdk/installer +VBOX_INSTALL_PATH=%{_vbox_instdir} python vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES +popd +%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +%__cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +%py_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python ###################################################### -echo "entrering python-virtualbox and virtualbox-devel install section" +echo "entering virtualbox-devel install section" ###################################################### -%__mv out/linux.*/release/bin/sdk/ \ - %{buildroot}%{_vbox_instdir} +%__cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings + +pushd out/linux.*/release/bin/sdk/bindings/xpcom +%__cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +%__cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +%__cp -r cbinding %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +%__cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +popd + +%__cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings ###################################################### # run fdupes @@ -496,7 +526,6 @@ %else %verify_permissions -e %{_vbox_instdir}/VBoxBFE -e %{_vbox_instdir}/VBoxHeadless -e %{_vbox_instdir}/VBoxSDL -e %{_vbox_instdir}/VirtualBox %endif -#-e %{_vbox_instdir}/VBoxNetDHCP %clean [ -d "%{buildroot}" -a "%{buildroot}" != "" ] && %__rm -rf "%{buildroot}" @@ -614,30 +643,29 @@ %{_sbindir}/rcvboxadd # -%files -n python-%{name} -%defattr(-,root, root) +%files -n python-%{name} -f %{_tmppath}/SITE_FILES +%defattr(-, root, root) %dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/xpcom/python -%{_vbox_instdir}/VBoxPython.so %if 0%{?suse_version} > 1130 -%{_vbox_instdir}/VBoxPython2_7.so +%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so %else -%{_vbox_instdir}/VBoxPython2_6.so +%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_6.so %endif -#path with vboxapi -%{_vbox_instdir}/sdk/installer -# %files devel %defattr(-,root, root) +%dir %{_vbox_instdir}/sdk +%dir %{_vbox_instdir}/sdk/bindings +%dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/VirtualBox.xidl %{_vbox_instdir}/sdk/bindings/xpcom/cbinding %{_vbox_instdir}/sdk/bindings/xpcom/idl %{_vbox_instdir}/sdk/bindings/xpcom/include %{_vbox_instdir}/sdk/bindings/xpcom/samples %{_vbox_instdir}/sdk/bindings/auth -%{_vbox_instdir}/sdk/bindings/glue +#%{_vbox_instdir}/sdk/bindings/glue/java %changelog ++++++ vbox-python-detection.diff ++++++ --- VirtualBox-4.0.2_OSE.orig/src/libs/xpcom18a4/python/gen_python_deps.py 2011-01-14 20:15:09.000000000 +0000 +++ VirtualBox-4.0.2_OSE/src/libs/xpcom18a4/python/gen_python_deps.py 2011-02-07 05:36:42.427567000 +0000 @@ -68,7 +68,7 @@ else: multi = 1 - if multi == 0: + if not multi: prefixes = ["/usr"] versions = [str(sys.version_info[0])+'.'+str(sys.version_info[1])] @@ -86,22 +86,23 @@ for v in versions: for p in prefixes: c = checkPair(p, v, dllpre, dllsuff, bitness_magic) - if c is not None: + if c: known[v] = c break - keys = known.keys() - # we want default to be the lowest versioned Python - keys.sort() - d = None # We need separator other than newline, to sneak through $(shell) sep = "|" - for k in keys: - if d is None: - d = k - vers = k.replace('.', '') - print_vars(vers, known[k], sep, bitness_magic) - if d is not None: - print_vars("DEF", known[d], sep, bitness_magic) + + if not known: + # this type of problem should be detected in configure + # print_vars("DEF", defaultpaths, sep, bitness_magic) + pass + if multi: + for ver, paths in known.items(): + print_vars(ver.replace('.', ''), paths, sep, bitness_magic) + else: + ver = versions[0] + paths = known[ver] + print_vars(ver.replace('.', ''), paths, sep, bitness_magic) if __name__ == '__main__': main(sys.argv) ++++++ vbox-xpcom-kmk.diff ++++++ --- VirtualBox-4.0.2_OSE.orig/src/libs/xpcom18a4/Makefile.kmk 2011-01-14 20:19:30.000000000 +0000 +++ VirtualBox-4.0.2_OSE/src/libs/xpcom18a4/Makefile.kmk 2011-02-05 18:09:05.797482000 +0000 @@ -471,9 +471,11 @@ xpidl_CFLAGS = \ $(libIDL_config_cflags) xpidl_LDFLAGS = \ - $(libIDL_config_libs) + $(filter-out -l%,$(libIDL_config_libs)) xpidl_LDFLAGS.linux = \ $(VBOX_LD_as_needed) + xpidl_LIBS = \ + $(patsubst -l%,%,$(filter -l%,$(libIDL_config_libs))) endif # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org