Hello community,

here is the log from the commit of package go for openSUSE:12.1:Update:Test 
checked in at 2011-12-12 21:12:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.1:Update:Test/go (Old)
 and      /work/SRC/openSUSE:12.1:Update:Test/.go.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "go", Maintainer is ""

Changes:
--------
New Changes file:

--- /dev/null   2010-08-26 16:28:41.000000000 +0200
+++ /work/SRC/openSUSE:12.1:Update:Test/.go.new/go.changes      2011-12-12 
21:13:05.000000000 +0100
@@ -0,0 +1,484 @@
+-------------------------------------------------------------------
+Tue Oct 18 13:58:40 UTC 2011 - [email protected]
+
+- Update to r60.3
+- Fixes bug in the reflect package
+  * disallow Interface method on Value obtained via unexported name
+
+-------------------------------------------------------------------
+Thu Oct  6 08:14:24 UTC 2011 - [email protected]
+
+- Update to r60.2
+- Fixes memory leak in certain map types
+
+-------------------------------------------------------------------
+Wed Oct  5 14:34:10 UTC 2011 - [email protected]
+
+- Tweaks for gdb debugging
+- go.spec changes:
+  - move %go_arch definition to %prep section
+  - pass correct location of go specific gdb pretty printer and
+    functions to cpp as HOST_EXTRA_CFLAGS macro
+  - install go gdb functions & printer
+- gdb-printer.patch
+  - patch linker (src/cmd/ld/dwarf.c) to emit correct location of go
+    gdb functions and pretty printer
+
+-------------------------------------------------------------------
+Tue Sep 27 08:57:23 UTC 2011 - [email protected]
+
+- Add file 'VERSION' which is otherwise generated at runtime to fix
+  building
+
+-------------------------------------------------------------------
+Fri Sep  2 08:59:17 UTC 2011 - [email protected]
+
+- Update to weekly.2001-09-01 version
+  * archive/tar: support symlinks.
+  * big: fix nat.scan bug. (thanks Evan Shaw)
+  * bufio: handle a "\r\n" that straddles the buffer. add openbsd. avoid
+    redundant bss declarations. fix unused parameters. fix windows/amd64
+    build with newest mingw-w64.
+  * bytes: clarify that NewBuffer is not for beginners.
+  * cgo: explain how to free something. fix GoBytes. fixes callback for windows
+    amd64. note that CString result must be freed.
+  * effective_go: convert to use tmpltohtml.
+  * exp/norm: reduced the size of the byte buffer used by reorderBuffer
+    by half by reusing space when combining. a few minor fixes to support the
+    implementation of norm. added implementation for []byte versions of 
methods.
+  * exp/template/html: add some tests for ">" attributes. added handling for 
URL
+    attributes. differentiate URL-valued attributes (such as href). reworked
+    escapeText to recognize attr boundaries.
+  * exp/template: moved from exp to the main tree.
+  * exp/wingui: made compatible with windows/amd64.
+  * flag: add Parsed, restore Usage.
+  * gc: add openbsd. escape analysis. fix build on Plan 9. fix div bug. fix
+    pc/line table. fix some spurious leaks. make static initialization more
+    static. remove JCXZ; add JCXZW, JCXZL, and JCXZQ instructions. shuffle 
+    #includes. simplify escape analysis recursion.
+  * go/ast cleanup: base File/PackageExports on FilterFile/FilterPackage code.
+    adjustments to filter function. fix ast.MergePackageFiles to collect infos
+    about imports. generalize ast.FilterFile.
+  * go/build: add test support & use in gotest. separate test imports out when 
scanning.
+  * go/parser: fix type switch scoping. fix type switch scoping.
+  * gob: explain that Debug isn't useful unless it's compiled in.
+  * gobuilder: increase log limit.
+  * godashboard: fix utf-8 in user names.
+  * godoc: first step towards reducing index size. add dummy playground.js to
+    silence godoc warning at start-up. added systematic throttling to indexing
+    goroutine. fix bug in zip.go. support for reading/writing (splitted) index
+    files. use virtual file system when generating package synopses.
+  * gofix: forgot to rename the URL type. osopen: fixed=true when changing 
O_CREAT.
+  * goinstall: error out with paths that end with '/'. report lack of $GOPATH
+    on errors. select the tag that is closest to runtime.Version.
+  * http: add MaxBytesReader to limit request body size. add file protocol
+    transport. adjust test threshold for larger suse buffers. delete error
+    kludge. on invalid request, send 400 response. return 413 instead of 400
+    when the request body is too large. support setting Transport's TLS client
+    config.
+  * image/tiff: add a decode benchmark. decoder optimization.
+  * image: add PalettedImage interface, and make image/png recognize it.
+  * io: add TeeReader.
+  * json: add struct tag option to wrap literals in strings.
+          calculate Offset for Indent correctly.
+          fix decode bug with struct tag names with ,opts being ignored.
+  * ld: handle Plan 9 ar format. remove duplicate bss definitions.
+  * libmach: support reading symbols from Windows .exe for nm.
+  * math: fix Pow10 loop. (thanks Volker Dobler)
+  * mime: ParseMediaType returns os.Error now, not a nil map. media type
+    formatter. text charset defaults.
+  * misc/dashboard: remove limit for json package list.
+  * misc/emacs: refine label detection.
+  * net: add ParseMAC function. change the internal form of IPMask for IPv4.
+    disable "tcp" test on openbsd. fix windows build. join and leave a IPv6
+    group address, on a specific interface. make use of IPv4len, IPv6len.
+    move internal string manipulation routines to parse.go.
+  * os: disable Hostname test on OpenBSD. fix WNOHANG Waitmsg.
+  * reflect: add Value.Bytes, Value.SetBytes methods.
+  * rpc: add benchmark for async rpc calls.
+  * runtime: add openbsd 386 defs.h. add runtime support for openbsd 386. add
+    runtime prefix to showframe. ctrlhandler for windows amd64. fix stack 
+    cleanup on windows/amd64. fix void warnings. go interface to cdecl 
calbacks.
+    handle string + char literals in goc2c. make arm work on Ubuntu Natty qemu.
+    openbsd thread tweaks. simplify stack traces. speed up cgo calls. use cgo
+    runtime functions to call windows syscalls. windows/amd64 callbacks fixed
+    and syscall fixed to allow using it in callbacks.
+  * strconv: put decimal on stack.
+  * spec: update section on Implementation Differences.
+  * syscall: SOMAXCONN should be 0x7fffffff at winsock2. add openbsd 386. 
handle
+    RTM_NEWROUTE in ParseNetlinkRouteAttr on Linux. handle routing entry in
+    ParseRoutingSockaddr on BSD variants. openbsd amd64 syscall support. use 
the
+    vdso page on linux x86 for faster syscalls instead of int $0x80.
+  * template/parse: give if, range, and with a common representation.
+  * template: grammar fix for template documentation. range over channel. 
remove
+    else and end nodes from public view.
+  * test: put GOROOT/bin before all others in run.
+  * time: fix Plan 9 build. fix zone during windows test.
+  * type switches: test for pathological case.
+  * version.bash: update VERSION on -save if already present.
+  * websocket: implements new version of WebSocket protocol.
+  * windows/386: clean stack after syscall.
+  * xml: marshal "parent>child" tags correctly.
+
+-------------------------------------------------------------------
+Tue Aug  2 07:47:10 UTC 2011 - [email protected]
+
+- Update to release r59:
+  * Restricted usage of goto statement
+  * Package reflect supports a new struct tag scheme that enables sharing of
+    struct tags between multiple packages.
+  * Package sort's IntArray type has been renamed to IntSlice, and similarly
+    for Float64Slice and StringSlice
+  * Package strings's Split function has itself been split into Split and
+    SplitN. SplitN is the same as the old Split. The new Split is equivalent
+    to SplitN with a final argument of -1. 
+  * Goinstall now installs packages and commands from arbitrary remote
+    repositories (not just Google Code, Github, and so on). See the goinstall
+    documentation for details. 
+  More at http://golang.org/doc/devel/release.html#r59
+
+-------------------------------------------------------------------
+Wed Jul 20 18:14:05 UTC 2011 - [email protected]
+
+- Update to 2011-07-20 mercurial version:
+  * ELF section header overlap fixed, GNU strip doesn't break binaries
+    anymore
+
+-------------------------------------------------------------------
+Wed Jul 20 08:10:44 UTC 2011 - [email protected]
+
+- Update to weekly.2011-07-19 mercurial version:
+  * archive/zip: add Writer, add Mtime_ns function to get modified time in
+    sensible format.
+  * cgi: close stdout reader pipe when finished.
+  * cgo: add missing semicolon in generated struct,
+  * codereview: fix for Mercurial 1.9.
+  * dashboard: list "most installed this week" with rolling count.
+  * debug/elf: read ELF Program headers.
+  * debug/proc: remove unused package.
+  * doc/talks/io2010: update with gofix and handle the errors.
+  * exp/eval, exp/ogle: remove packages eval and ogle.
+  * exp/regexp/syntax: add Prog.NumCap.
+  * exp/template: API changes, bug fixes, and tweaks.
+  * flag: make -help nicer.
+  * fmt: Scan(&int) was mishandling a lone digit.
+  * gc: fix closure bug, fix to build with clang, make size of struct{} and
+    [0]byte 0 bytes , some enhancements to printing debug info.
+  * gif: fix local color map and coordinates.
+  * go/build: include processing of .c files for cgo packages, less aggressive
+    failure when GOROOT not found.
+  * go/printer: changed max. number of newlines from 3 to 2.
+  * gob: register more slice types
+  * godoc: support for file systems stored in .zip files.
+  * hash/crc32: add SSE4.2 support.
+  * html: update section references in comments to the latest HTML5 spec.
+  * http: drain the pipe output in TestHandlerPanic to avoid logging deadlock,
+    fix Content-Type of file extension, implement http.FileSystem for zip 
files,
+    let FileServer work when path doesn't begin with a slash, support for
+    periodic flushing in ReverseProxy.
+  * image/draw: add benchmarks.
+  * json: add omitempty struct tag option, allow using '$' and '-' as the 
struct
+    field's tag encode \r and \n in strings as e.g. "\n", not "\u000A" escape 
+    < and > in any JSON string for XSS prevention.
+  * ld: allow seek within write buffer< add a PT_LOAD PHDR entry for the PHDR
+  * os: plan9: add Process.Signal as a way to send notes
+  * os: don't permit Process.Signal after a successful Wait.
+  * reflect: add Value.NumMethod, panic if Method index is out of range for a
+    type.
+  * runtime: faster entersyscall, exitsyscall, fix panic for make(chan 
[0]byte),
+    fix subtle select bug, make TestSideEffectOrder work twice, several
+    parallelism-related optimizations and fixes, string-related optimizations,
+    track running goroutine count.
+  * strconv: handle [-+]Infinity in atof.
+  * sync: add fast paths to WaitGroup, improve RWMutex performance.
+  * syscall: add Flock on Linux, parse and encode SCM_RIGHTS and 
SCM_CREDENTIALS
+  More at http://golang.org/doc/devel/release.html#r58.1
+
+-------------------------------------------------------------------
++++ 287 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:12.1:Update:Test/.go.new/go.changes

New:
----
  VERSION
  _link
  gdb-printer.patch
  go-0.0.r60.3+hg20111018.tar.bz2
  go-godoc-path-locations.patch
  go.changes
  go.sh
  go.spec
  macros.go
  rpmlintrc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ go.spec ++++++
#
# Copyright (c) 2011, Sascha Peilicke <[email protected]>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

Name:           go
Version:        0.0.r60.3+hg20111018
Release:        0
Summary:        A compiled, garbage-collected, concurrent programming language
Group:          Development/Languages/Other
License:        BSD-3-Clause
URL:            http://golang.org
Source0:        go-%{version}.tar.bz2
Source1:        rpmlintrc
Source2:        go.sh
Source3:        macros.go
# This file is otherwise generated at build-time from the .hg directory, which 
was
# stripped from the tarball to save space. TODO: Update contents after version 
update!
Source4:        VERSION
# PATCH-FIX-OPENSUSE adjust documentation paths
Patch1:         go-godoc-path-locations.patch
# PATCH-FIX-OPENSUSE set correct location of gdb pretty printer
Patch2:         gdb-printer.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  ed
BuildRequires:  bison
BuildRequires:  mercurial
%if 0%{?suse_version} > 1020
BuildRequires:  fdupes
Recommends:     go-doc
%endif
Provides:       libcgo = %{version}
Provides:       go-devel-static = %{version}
Provides:       go-devel = %{version}
Obsoletes:      go-devel < %{version}
ExclusiveArch:  %ix86 x86_64 arm

%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.
Go has fast builds, clean syntax, garbage collection, methods for any type, and
run-time reflection. It feels like a dynamic language but has the speed and
safety of a static language.

%package doc
Summary:        Go documentation
Group:          Documentation/Other
Requires:       %{name} = %{version}

%description doc
Go examples and documentation.

%package vim
Summary:        Go syntax files for Vim
Group:          Productivity/Text/Editors
Requires:       %{name} = %{version}

%description vim
Vim syntax highlighting scheme for the Go programming language.

%package emacs
Summary:        Go language syntax files for Emacs
Group:          Productivity/Text/Editors
Requires:       %{name} = %{version}

%description emacs
Emacs syntax highlighting scheme for the Go programming language.

%package kate
Summary:        Go syntax files for Kate and KWrite editors
Group:          Productivity/Text/Editors
Requires:       %{name} = %{version}

%description kate
Kate syntax highlighting scheme for the Go programming language.

%prep
%setup -q -n %{name}
%patch1 -p1
%patch2 -p1
cp %{SOURCE4} .

# setup go_arch (BSD-like scheme)
%ifarch %ix86
sed -i 's|GOARCH|386|' %{SOURCE3}
%define go_arch 386
%endif
%ifarch x86_64
sed -i 's|GOARCH|amd64|' %{SOURCE3}
%define go_arch amd64
%endif
%ifarch %arm
sed -i 's|GOARCH|arm|' %{SOURCE3}
%define go_arch arm
%endif

# let the DWARF emitter add correct path to the go pretty printer
%define gdb_printer %{_libdir}/go/pkg/linux_%{go_arch}/runtime/runtime-gdb.py

%build
export GOROOT="`pwd`"
export GOBIN="$GOROOT/bin"
mkdir -p "$GOBIN"
cd src
export GDB_PRINTER="%{gdb_printer}"
HOST_EXTRA_CFLAGS="%{optflags} -Wno-error -D GDB_PRINTER='\"$GDB_PRINTER\"'" 
./make.bash

%install
export GOROOT="%{buildroot}%{_libdir}/%{name}"
install -Dm644 misc/bash/go %{buildroot}%{_sysconfdir}/bash_completion.d/go
install -Dm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/profile.d/go.sh
install -Dm644 misc/emacs/go-mode-load.el 
%{buildroot}%{_datadir}/emacs/site-lisp/go-mode-load.el
install -Dm644 misc/emacs/go-mode.el 
%{buildroot}%{_datadir}/emacs/site-lisp/go-mode.el
install -Dm644 misc/vim/syntax/go.vim 
%{buildroot}%{_datadir}/vim/site/syntax/go.vim
install -Dm644 misc/vim/ftdetect/gofiletype.vim 
%{buildroot}%{_datadir}/vim/site/ftdetect/gofiletype.vim
install -Dm644 misc/kate/go.xml 
%{buildroot}%{_datadir}/kde4/apps/katepart/syntax/go.xml
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_sbindir}
cp -r bin/* %{buildroot}%{_bindir}
mv %{buildroot}%{_bindir}/goinstall %{buildroot}%{_sbindir}/goinstall
rm -f %{buildroot}%{_bindir}/{hgpatch,quietgcc}
mkdir -p $GOROOT/src
install -m644 src/Make.{ccmd,clib,cmd,common,inc,pkg} $GOROOT/src

# source files for goinstall, godoc, etc
install -d %{buildroot}%{_datadir}/go
for ext in *.{go,c,h}; do
  find src -name ${ext} -exec install -Dm644 \{\} 
%{buildroot}%{_datadir}/go/\{\} \;
done

# replace $GOROOT in several scripts
sed -i 's|GOROOT=.*$|GOROOT=%{_libdir}/go|g' %{buildroot}%{_bindir}/gomake
sed -i 's|GOROOT=.*$|GOROOT=%{_libdir}/go|g' %{buildroot}%{_bindir}/gotry

install -Dm644 lib/{lib9.a,libbio.a,libmach.a} %{buildroot}%{_libdir}
cp -r lib/godoc $GOROOT/lib
cp -r pkg $GOROOT

# documentation and examples
# fix documetation permissions (rpmlint warning)
find doc/ misc/ -type f -exec chmod 0644 '{}' \;
# remove unwanted arch-dependant binaries (rpmlint warning)
#rm doc/codelab/wiki/{htmlify.bin,srcextract.bin}
rm -rf misc/cgo/test/{_*,*.o,*.out,*.6,*.8}
rm -f misc/dashboard/builder/{gobuilder,*6,*.8}
rm -f misc/goplay/{goplay,*.6,*.8}
rm misc/swig/{callback/run,stdio/hello}
rm -rf misc/cgo/test/{_*,*.o,*.out,*.6,*.8}
# fix bnc#686557, contains image licensed under non-commercial license
rm doc/talks/go_talk-20091030.pdf

# install RPM macros ($GOARCH prepared in %%prep section)
install -Dm644 %{SOURCE3} %{buildroot}%{_sysconfdir}/rpm/macros.go

# install go specific gdb pretty printer and functions
install -Dm644 src/pkg/runtime/runtime-gdb.py 
%{buildroot}%{_libdir}/go/pkg/linux_%{go_arch}/runtime

# break hard links
rm %{buildroot}%{_libdir}/go/pkg/linux_%{go_arch}/{cgocall,runtime}.h
ln -s %{_datadir}/go/src/pkg/runtime/{cgocall,runtime}.h 
%{buildroot}%{_libdir}/go/pkg/linux_%{go_arch}/

# Disable brp-strip-static-archive breaks build
%define __os_install_post %(echo '%{__os_install_post}' | sed -e 
's!/usr/lib/rpm/[^/]*/?brp-strip-static-archive %{__strip}!!g')

%if 0%{?suse_version} > 1020
%fdupes %{buildroot}%{_prefix}
%endif

%files
%defattr(-,root,root,-)
%doc AUTHORS CONTRIBUTORS LICENSE PATENTS README
%ifarch %ix86
%{_bindir}/8*
%endif
%{_bindir}/6*
%{_bindir}/cgo
%{_bindir}/ebnflint
%{_bindir}/go*
%{_sbindir}/goinstall
%{_libdir}/lib9.a
%{_libdir}/libbio.a
%{_libdir}/libmach.a
%{_libdir}/go/
%{_datadir}/go/
%config %{_sysconfdir}/bash_completion.d/go
%config %{_sysconfdir}/profile.d/go.sh
%config %{_sysconfdir}/rpm/macros.go

%files doc
%defattr(-,root,root,-)
%doc doc misc

%files vim
%defattr(-,root,root,-)
%{_datadir}/vim

%files emacs
%defattr(-,root,root,-)
%{_datadir}/emacs/site-lisp/go-mode*.el

%files kate
%defattr(-,root,root,-)
%dir %{_datadir}/kde4
%dir %{_datadir}/kde4/apps
%dir %{_datadir}/kde4/apps/katepart
%dir %{_datadir}/kde4/apps/katepart/syntax
%{_datadir}/kde4/apps/katepart/syntax/go.xml

%changelog
++++++ VERSION ++++++
release.r60.3 10091
++++++ _link ++++++
<link project="openSUSE:12.1" package="go" 
baserev="76e8286af3401f6bc4c7f747c5debcbc">
  <patches>
    <branch/>
  </patches>
</link>
++++++ gdb-printer.patch ++++++
diff -r fd30c132d1bd src/cmd/ld/dwarf.c
--- a/src/cmd/ld/dwarf.c        Mon Sep 19 12:32:07 2011 +1000
+++ b/src/cmd/ld/dwarf.c        Wed Oct 05 16:30:58 2011 +0200
@@ -1602,10 +1602,16 @@
 
        for (i = 1; i < histfilesize; i++) {
                if ((c = strstr(histfile[i], "runtime/runtime_defs.go")) != 
nil) {
+#ifndef GDB_PRINTER
                        l = c - histfile[i];
                        memmove(gdbscript, histfile[i], l);
                        memmove(gdbscript + l, "runtime/runtime-gdb.py", 
strlen("runtime/runtime-gdb.py") + 1);
                        break;
+#endif
+#ifdef GDB_PRINTER
+                       memmove(gdbscript, GDB_PRINTER, strlen(GDB_PRINTER) + 
1);
+                       break;
+#endif
                }
        }
 }
++++++ go-godoc-path-locations.patch ++++++
diff -ru a/src/cmd/godoc/godoc.go b/src/cmd/godoc/godoc.go
--- a/src/cmd/godoc/godoc.go    2011-09-22 10:15:24.000000000 +0200
+++ b/src/cmd/godoc/godoc.go    2011-09-22 10:25:35.697267470 +0200
@@ -80,6 +80,11 @@
        pkgHandler httpHandler
 )
 
+const (
+       docroot = "/usr/share/doc/packages/go-doc/doc"
+       srcroot = "/usr/share/go/"
+)
+
 func initHandlers() {
        paths := filepath.SplitList(*pkgPath)
        for _, t := range build.Path {
@@ -90,9 +95,9 @@
        }
        fsMap.Init(paths)
 
-       fileServer = http.FileServer(fsHttp)
-       cmdHandler = httpHandler{"/cmd/", filepath.Join(*goroot, "src", "cmd"), 
false}
-       pkgHandler = httpHandler{"/pkg/", filepath.Join(*goroot, "src", "pkg"), 
true}
+       fileServer = http.FileServer(http.Dir(docroot))
+       cmdHandler = httpHandler{"/cmd/", filepath.Join(srcroot, "src/cmd"), 
false}
+       pkgHandler = httpHandler{"/pkg/", filepath.Join(srcroot, "src/pkg"), 
true}
 }
 
 func registerPublicHandlers(mux *http.ServeMux) {
@@ -531,7 +536,7 @@
 }
 
 func readTemplate(name string) *template.Template {
-       path := filepath.Join(*goroot, "lib", "godoc", name)
+       path := filepath.Join(*goroot, "lib/"+name)
        if *templateDir != "" {
                defaultpath := path
                path = filepath.Join(*templateDir, name)
@@ -702,13 +707,18 @@
 }
 
 func serveFile(w http.ResponseWriter, r *http.Request) {
+       // openSUSE: serv docs from root of go-doc package install location
+       if strings.HasPrefix(r.URL.Path, "/doc/") {
+               http.Redirect(w, r, "/"+ r.URL.Path[len("/doc"):], 
http.StatusMovedPermanently)
+               return
+       }
        relpath := r.URL.Path[1:] // serveFile URL paths start with '/'
-       abspath := absolutePath(relpath, *goroot)
+       abspath := absolutePath(relpath, docroot)
 
        // pick off special cases and hand the rest to the standard file server
        switch r.URL.Path {
        case "/":
-               serveHTMLDoc(w, r, filepath.Join(*goroot, "doc", "root.html"), 
"doc/root.html")
+               serveHTMLDoc(w, r, filepath.Join(docroot, "doc", "root.html"), 
"root.html")
                return
 
        case "/doc/root.html":
++++++ go.sh ++++++
# go toolchain env paths
gopath=lib
arch=386
if [ -x /usr/lib64/go ] ; then
  gopath=lib64
  arch=amd64
fi  

export GOOS="linux"
export GOARCH=$arch
export GOROOT=/usr/$gopath/go
export GOBIN=/usr/bin
++++++ macros.go ++++++
# Macros for Go module building.
#
# Copyright (c) 2011 Sascha Peilicke <[email protected]>
#

%go_ver         %(LC_ALL=C rpm -q --qf '%%{epoch}:%%{version}\\n' go | sed -e 
's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not")
%go_arch        GOARCH

%go_dir         %{_libdir}/go
%go_sitedir     %{_libdir}/go/pkg
%go_sitearch    %{_libdir}/go/pkg/linux_%{go_arch}

%go_requires    %(echo '%*' | LC_ALL=C xargs -r rpm -q --qf 'Requires: %%{name} 
>= %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v 
"is not")

%go_provides \
Provides:       %{name}-devel = %{version} \
Provides:       %{name}-devel-static = %{version}

%go_disable_brp_strip_static_archive \
%define __os_install_post %(echo '%{__os_install_post}' | sed -e 
's!/usr/lib/rpm/[^/]*/?brp-strip-static-archive %{__strip}!!g')

%go_make HOST_EXTRA_CFLAGS="%{optflags}" gomake
%go_make_install HOST_EXTRA_CFLAGS="%{optflags}" 
TARGDIR=%{buildroot}%{go_sitearch} gomake install
%go_make_test HOST_EXTRA_CFLAGS="%{optflags}" gomake test
++++++ rpmlintrc ++++++
addFilter("binaryinfo-readelf-failed")  # go binaries are suposedly 
ELF-compliant
addFilter("statically-linked-binary")   # go doesn't yet support dynamic linking
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to