Hello community, here is the log from the commit of package go for openSUSE:Factory checked in at Fri Oct 7 00:47:13 CEST 2011.
-------- --- openSUSE:Factory/go/go.changes 2011-09-23 02:01:29.000000000 +0200 +++ go/go.changes 2011-10-06 10:16:44.000000000 +0200 @@ -1,0 +2,115 @@ +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. + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- go-0.0.r59.tar.bz2 go-fix-werrors.patch New: ---- VERSION gdb-printer.patch go-0.0.r60.2+hg20110510.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ go.spec ++++++ --- /var/tmp/diff_new_pack.ilXYXQ/_old 2011-10-07 00:47:10.000000000 +0200 +++ /var/tmp/diff_new_pack.ilXYXQ/_new 2011-10-07 00:47:10.000000000 +0200 @@ -1,7 +1,4 @@ # -# spec file for package go -# -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2011, Sascha Peilicke <[email protected]> # # All modifications and additions to the file contributed by third parties @@ -13,26 +10,24 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ -# - - - Name: go -Version: 0.0.r59 -Release: 1 +Version: 0.0.r60.2+hg20110510 +Release: 0 Summary: A compiled, garbage-collected, concurrent programming language Group: Development/Languages/Other -License: BSD3c -Url: http://golang.org +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-UPSTREAM fix various compiler warnings -#Patch2: go-fix-werrors.patch +# PATCH-FIX-OPENSUSE set correct location of gdb pretty printer +Patch2: gdb-printer.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: ed BuildRequires: bison @@ -55,8 +50,6 @@ safety of a static language. %package doc - - Summary: Go documentation Group: Documentation/Other Requires: %{name} = %{version} @@ -65,8 +58,6 @@ Go examples and documentation. %package vim - - Summary: Go syntax files for Vim Group: Productivity/Text/Editors Requires: %{name} = %{version} @@ -75,8 +66,6 @@ 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} @@ -85,8 +74,6 @@ 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} @@ -97,14 +84,33 @@ %prep %setup -q -n %{name} %patch1 -p1 -#%%patch2 -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 -HOST_EXTRA_CFLAGS="%{optflags} -Wno-error" ./make.bash +export GDB_PRINTER="%{gdb_printer}" +HOST_EXTRA_CFLAGS="%{optflags} -Wno-error -D GDB_PRINTER='\"$GDB_PRINTER\"'" ./make.bash %install export GOROOT="%{buildroot}%{_libdir}/%{name}" @@ -150,21 +156,12 @@ # fix bnc#686557, contains image licensed under non-commercial license rm doc/talks/go_talk-20091030.pdf -# install RPM macros and set proper 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 +# 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}/ @@ -176,9 +173,6 @@ %fdupes %{buildroot}%{_prefix} %endif -%clean -rm -rf %{buildroot} - %files %defattr(-,root,root,-) %doc AUTHORS CONTRIBUTORS LICENSE PATENTS README @@ -205,12 +199,7 @@ %files vim %defattr(-,root,root,-) -%dir %{_datadir}/vim -%dir %{_datadir}/vim/site -%dir %{_datadir}/vim/site/ftdetect -%dir %{_datadir}/vim/site/syntax -%{_datadir}/vim/site/syntax/go.vim -%{_datadir}/vim/site/ftdetect/gofiletype.vim +%{_datadir}/vim %files emacs %defattr(-,root,root,-) ++++++ VERSION ++++++ release.r60.1 9497 ++++++ 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 ++++++ --- /var/tmp/diff_new_pack.ilXYXQ/_old 2011-10-07 00:47:10.000000000 +0200 +++ /var/tmp/diff_new_pack.ilXYXQ/_new 2011-10-07 00:47:10.000000000 +0200 @@ -1,7 +1,7 @@ diff -ru a/src/cmd/godoc/godoc.go b/src/cmd/godoc/godoc.go ---- a/src/cmd/godoc/godoc.go 2011-08-02 09:44:36.104812881 +0200 -+++ b/src/cmd/godoc/godoc.go 2011-08-02 09:54:43.389050505 +0200 -@@ -82,6 +82,10 @@ +--- 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 ) @@ -9,14 +9,15 @@ + docroot = "/usr/share/doc/packages/go-doc/doc" + srcroot = "/usr/share/go/" +) - ++ func initHandlers() { paths := filepath.SplitList(*pkgPath) -@@ -93,9 +97,9 @@ + for _, t := range build.Path { +@@ -90,9 +95,9 @@ } fsMap.Init(paths) -- fileServer = http.FileServer(http.Dir(*goroot)) +- 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)) @@ -24,9 +25,9 @@ + pkgHandler = httpHandler{"/pkg/", filepath.Join(srcroot, "src/pkg"), true} } - -@@ -646,7 +650,7 @@ - + func registerPublicHandlers(mux *http.ServeMux) { +@@ -531,7 +536,7 @@ + } func readTemplate(name string) *template.Template { - path := filepath.Join(*goroot, "lib", "godoc", name) @@ -34,8 +35,8 @@ if *templateDir != "" { defaultpath := path path = filepath.Join(*templateDir, name) -@@ -835,13 +839,18 @@ - +@@ -702,13 +707,18 @@ + } func serveFile(w http.ResponseWriter, r *http.Request) { + // openSUSE: serv docs from root of go-doc package install location @@ -51,8 +52,7 @@ 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"), "doc/root.html") ++ serveHTMLDoc(w, r, filepath.Join(docroot, "doc", "root.html"), "root.html") return case "/doc/root.html": -Only in b/src/cmd/godoc: .godoc.go.swp continue with "q"... Remember to have fun... -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
