Hello community, here is the log from the commit of package go for openSUSE:Factory checked in at 2012-09-11 09:05:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/go (Old) and /work/SRC/openSUSE:Factory/.go.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "go", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/go/go.changes 2012-08-26 11:31:57.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.go.new/go.changes 2012-09-11 09:05:53.000000000 +0200 @@ -1,0 +2,19 @@ +Wed Sep 5 03:46:15 UTC 2012 - graham@andtech.eu + +- BNC#776058 + - Add new patch to prevent the go install tool trying to reinstall + std library packages that are dependencies of third party packages. + - Using touch on the precompiled archives introdoces additional + problems with the go install tool. Instead, we simply don't mark + std library files as stale when a third party package is evaluated + for installation. The behaviour remains unchanged for the root + user and while it is inadvisable to manually reinstall standard + libraries using the openSUSE packages, we do not disallow it. +- Spec changes + - Remove redundant requires for ed/bison + - Minor tweaks for cross distro builds based on FC/Mageia/Mandriva +- Macro changes + - Tweak the BRP strip macro to work on RHEL based distros +- Add go-wiki xml widget + +------------------------------------------------------------------- New: ---- go-install-dont-reinstall-stdlibs.patch go-wiki-gadget.xml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ go.spec ++++++ --- /var/tmp/diff_new_pack.4I8ohE/_old 2012-09-11 09:06:00.000000000 +0200 +++ /var/tmp/diff_new_pack.4I8ohE/_new 2012-09-11 09:06:00.000000000 +0200 @@ -29,6 +29,7 @@ Source2: go.sh Source3: macros.go Source4: godoc.service +Source6: go-wiki-gadget.xml Source5: README-openSUSE # PATCH-FIX-OPENSUSE adjust documentation paths for API/doc server Patch1: godoc-path-locations.patch @@ -40,9 +41,9 @@ Patch5: verbose-build.patch # PATCH-FIX-OPENSUSE fix vim Godoc and Import helpers/autocomplete Patch6: opensuse-vim.patch +# PATCH-FIX-OPENSUSE BNC#776058 +Patch7: go-install-dont-reinstall-stdlibs.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: bison -BuildRequires: ed %if 0%{?suse_version} >= 1210 BuildRequires: systemd %endif @@ -59,6 +60,11 @@ %systemd_requires %endif +# fc pukes on the debug info in the command binaries +%if 0%{?fedora} +%define debug_package %{nil} +%endif + %description Go is an expressive, concurrent, garbage collected systems programming language that is type safe and memory safe. It has pointers but no pointer arithmetic. @@ -100,12 +106,12 @@ %prep %setup -q -n %{name} -echo %{requiretest} %patch1 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 cp %{SOURCE4} . cp %{SOURCE5} . @@ -212,9 +218,6 @@ %service_add_post godoc.service %endif -%post -n go-doc -find %{_libdir}/go/pkg -type f -exec touch {} + - %preun %if 0%{?suse_version} >= 1210 %service_del_preun godoc.service @@ -237,13 +240,13 @@ %ifarch %arm %{_libdir}/go/pkg/tool/linux_%{go_arch}/5* %endif +%{_datadir}/go/ %{_bindir}/go* %{_libdir}/go/ -%{_datadir}/go/ %config %{_sysconfdir}/bash_completion.d/go %config %{_sysconfdir}/profile.d/go.sh %config %{_sysconfdir}/rpm/macros.go -%if 0%{?suse_version} >= 1210 +%if 0%{?suse_version} >= 1210 || 0%{?fedora} >= 16 %{_unitdir}/godoc.service %endif ++++++ go-install-dont-reinstall-stdlibs.patch ++++++ diff --git a/src/cmd/go/pkg.go b/src/cmd/go/pkg.go index 54d65f9..a6c93f4 100644 --- a/src/cmd/go/pkg.go +++ b/src/cmd/go/pkg.go @@ -476,6 +476,13 @@ func isStale(p *Package, topRoot map[string]bool) bool { return true } + // openSUSE bnc#776058 + // Only root user can reinstall a std library from a dependancy, all other + // users should *never* have to do this. + if os.Getuid() != 0 && p.Standard { + return false + } + olderThan := func(file string) bool { fi, err := os.Stat(file) return err != nil || fi.ModTime().After(built) ++++++ macros.go ++++++ --- /var/tmp/diff_new_pack.4I8ohE/_old 2012-09-11 09:06:00.000000000 +0200 +++ /var/tmp/diff_new_pack.4I8ohE/_new 2012-09-11 09:06:00.000000000 +0200 @@ -24,7 +24,6 @@ %undefine __os_install_post \ %define __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib/rpm/[^/]*/?brp-strip-static-archive %{__strip}!!g') - # Prepare the expected Go package build environement. # We need a $GOPATH: go help gopath # We need a valid importpath: go help packages @@ -127,6 +126,7 @@ if [ "$(ls -A $TMPBIN)" ]; then \ install -m755 $TMPBIN/* %{buildroot}%{_bindir} \ fi \ +%go_disable_brp_strip_static_archive \ %{nil} %gofix() \ -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org