1
0
mirror of https://github.com/golang/go synced 2024-09-29 22:24:33 -06:00
Commit Graph

639 Commits

Author SHA1 Message Date
Yasuhiro Matsumoto
d7434816c1 misc/vim: make Godoc command work with "log.Print".
R=dsymonds
CC=golang-dev
https://golang.org/cl/7757043
2013-03-26 17:39:46 +11:00
Carl Shapiro
4cb921bbf1 runtime: store asmcgocall return PC where the ARM unwind expects it
The ARM implementation of runtime.cgocallback_gofunc diverged
from the calling convention by leaving a word of garbage at
the top of the stack and storing the return PC above the
locals.  This change stores the return PC at the top of the
stack and removes the save area above the locals.

Update #5124
This CL fixes first part of the ARM issues and added the unwind test.

R=golang-dev, bradfitz, minux.ma, cshapiro, rsc
CC=golang-dev
https://golang.org/cl/7728045
2013-03-25 14:10:28 -07:00
Dominik Honnef
4ad1a87f85 misc/emacs: Derive mode from prog-mode if possible
R=golang-dev, bradfitz
CC=adonovan, cw, golang-dev, patrick.allen.higgins
https://golang.org/cl/7956044
2013-03-25 08:58:13 -07:00
Oling Cat
80234d5c6b misc/kate: fix multiline raw string syntax highlighting error.
From VisualFC.
Fixes #4862.

R=golang-dev, minux.ma, r
CC=golang-dev
https://golang.org/cl/7568043
2013-03-23 15:16:58 -07:00
Dominik Honnef
c7ad7a1af4 misc/emacs: Kill gofmt error buffer if the buffer was formatted correctly already.
R=adonovan, cw, patrick.allen.higgins, bradfitz
CC=golang-dev
https://golang.org/cl/7844045
2013-03-21 20:03:27 -07:00
Ian Lance Taylor
eeb9822457 misc/swig: remove old broken Makefile
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7786046
2013-03-20 08:06:58 -07:00
Robert Griesemer
ddddd70cd2 misc/dashboard: show correct dir name in README
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7909043
2013-03-19 12:49:46 -07:00
Dominik Honnef
24f476409c misc/emacs: Add support for godef
godef[1][2] is a third party tool for printing information about
expressions, especially the location of their definition. This can be
used to implement a "jump to definition" function. Unlike
cross-language solutions like ctags, godef does not require an index,
operates on the Go AST instead of symbols and works across packages,
including the standard library.

This patch implements two new public functions: godef-describe (C-c
C-d) and godef-jump (C-d C-j). godef-describe describes the expression
at point, printing its type, and godef-jump jumps to its definition.

[1]: https://code.google.com/p/rog-go/source/browse/exp/cmd/godef/
[2]: go get code.google.com/p/rog-go/exp/cmd/godef

R=adonovan, cw, patrick.allen.higgins, sameer
CC=golang-dev
https://golang.org/cl/7781043
2013-03-19 11:29:28 -04:00
Joe Poirier
b7b4783622 misc/dist: fix Windows breakage
The files could use some attention on the
Windows side but better to wait until after
the upcoming release.

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/7621044
2013-03-18 08:56:38 +11:00
David Symonds
247bc72131 misc/dashboard/codereview: better debugging when some fetches fail.
R=rsc
CC=golang-dev
https://golang.org/cl/7836045
2013-03-15 14:45:00 +11:00
David Symonds
b7f29e259d misc/dashboard/codereview: add more people.
I picked everyone who has committed a CL on behalf of someone else in recent times.

R=r, rsc
CC=golang-dev
https://golang.org/cl/7836044
2013-03-15 14:33:00 +11:00
Jeff R. Allen
8c2b6226f7 misc/pprof: fix address lookup regression on Linux
Just use "go tool addr2line" no matter what, since we know
it works for all OSs.

Fixes #4818.

R=rsc, r
CC=golang-dev
https://golang.org/cl/7526047
2013-03-13 09:40:38 -07:00
Dominik Honnef
69eb345727 misc/emacs: Fix indentation for code following multiline function declarations
Correctly indent the body of functions that have been declared
over multiple lines. See http://play.golang.org/p/MHMwNDbFyf for
an example.

Previously, the body of the function would be indented as deep as
the continuation line of the function declaration. Now it gets
indented as deep as the func keyword.

R=adonovan, cw, patrick.allen.higgins
CC=golang-dev
https://golang.org/cl/7628043
2013-03-12 21:37:18 -07:00
Benny Siegert
f878b67b0f misc/bbedit, misc/notepadplus: remove executable bits from files.
R=golang-dev, dave, iant
CC=golang-dev
https://golang.org/cl/7765043
2013-03-12 14:29:25 -07:00
Russ Cox
a25c403b3a cmd/pprof: never use c++filt
The copy of c++filt shipped on OS X is six years old,
and in our case it does far more mangling than it
does demangling. People on non-OS X systems will
have a working nm --demangle, so this won't affect them.

$ sw_vers
ProductName:	Mac OS X
ProductVersion:	10.8.2
BuildVersion:	12C2034
$ c++filt --version
GNU c++filt 070207 20070207
Copyright 2005 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License.  This program has absolutely no warranty.
$

$ go tool nm -n revcomp | grep quoteWith
   4f560 T strconv.quoteWith
$ go tool nm -n revcomp | grep quoteWith  | c++filt
   f560 T strconv.quoteWith
$

$ nm -n revcomp | grep quoteWith
000000000004f560 t _strconv.quoteWith
$ nm -n revcomp | grep quoteWith | c++filt
000000000004f560 unsigned short _strconv.quoteWith
$

Fixes #4818.

R=golang-dev, r, bradfitz
CC=golang-dev
https://golang.org/cl/7729043
2013-03-11 18:15:23 -04:00
Andrew Gerrand
77d6cf1cd5 misc/dashboard: add go.blog sub-repo to dashboard
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/7690043
2013-03-11 11:06:21 +11:00
Dominik Honnef
77ddbf1ff0 misc/emacs: Rewrite gofmt to use own function for applying patch instead of using diff-mode.
Instead of relying on gofmt's diff output (which is a unified
    diff), we manually invoke diff -n and produce an RCS format diff,
    which can easily be parsed in Emacs, with the go--apply-rcs-patch
    function.

    This fixes undocumented issues with the old implementation such as
    skipping over hunks of changes, and it fixes the documented issue
    of not being able to handle file names that include whitespace.

    It can also apply the patch on a buffer that has no file name
    attached at all.

    Last but not least, it greatly simplifies the gofmt function
    itself.

Fixes #4766.
Fixes #4475.

R=adonovan, cw, patrick.allen.higgins, sameer
CC=golang-dev
https://golang.org/cl/7516046
2013-03-07 13:12:37 -05:00
Russ Cox
8aafb44b0b runtime: fix cgo callbacks on windows
Fixes #4955.

R=golang-dev, alex.brainman
CC=golang-dev
https://golang.org/cl/7563043
2013-03-07 09:18:48 -05:00
Alex Brainman
2f23f90dab runtime,misc/cgo/test: disable broken tests so we can test the rest
R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/7486048
2013-03-06 15:19:01 -05:00
Russ Cox
77deeda717 misc/cgo/test: do not stop on first error
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7529043
2013-03-06 15:03:28 -05:00
Dominik Honnef
cf8434fa31 misc/emacs: Add compatibility for GNU Emacs 23 and XEmacs >=21.5.32
This CL adds compatibility for GNU Emacs 23 (fixing fontification
issues) and XEmacs >=21.5.32 (fixing a lot of issues). Earlier
versions of XEmacs will not be supported because they do not
support POSIX character classes. Because of that, we also make use
of a lot of functions that were added in 21.5.32.

A known and currently unfixable issue with XEmacs is that go-mode
will not always fontify identifiers that use unicode correctly.

All changes for XEmacs are annotated in the diff.

Note: go--position-bytes is not currently used anywhere, but will
be in a future CL.

Fixes #4927.

R=golang-dev, adonovan, cw, patrick.allen.higgins, sameer
CC=golang-dev
https://golang.org/cl/7456051
2013-03-06 14:35:29 -05:00
Dominik Honnef
a969f3c247 misc/emacs: Add tab completion for godoc command, completing from known installed packages
R=golang-dev, adonovan, bradfitz, cw, patrick.allen.higgins, sameer, ugorji
CC=golang-dev
https://golang.org/cl/7373051
2013-03-04 15:31:57 -05:00
Russ Cox
7c68f7876a misc/dashboard/builder: make -fail mode faster
Don't check out the repository if we're just going to fail everything.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7453048
2013-03-04 10:31:01 -05:00
Shenghou Ma
0acda4e87d misc/dashboard/app: make the builders test go.talks and go.exp
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/7419048
2013-03-03 03:17:14 +08:00
Tyler Bunnell
65983695fb misc/dist: handle previous installation
The installer package will now detect a previous installation and warn the user
that the previous installation will be deleted. If the user continues, the
installer will delete the previous installation and install the package as
usual.

Fixes #4293.

R=adg
CC=golang-dev
https://golang.org/cl/7427044
2013-02-28 16:09:48 +11:00
Andrew Gerrand
76e4a03352 misc/osx: remove legacy packaging scripts
These are superseded by the tool at misc/dist.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/7420044
2013-02-28 10:39:09 +11:00
Dominik Honnef
b302d68ebc misc/emacs: Greatly improve go-mode for Emacs.
The original go-mode is plagued with odd behaviour, lack of
behaviour typical to modes in Emacs and bugs.

This change rewrites great parts of go-mode (basically only
keeping the gofmt and godoc functions).

Additionally it adds new features such as manipulating package
imports.

For more information please see
https://groups.google.com/group/golang-nuts/browse_frm/thread/3a9d6dae3369c0b5/1efe65e2f7afb190

Fixes #3618.
Fixes #4240.
Fixes #4322.
Fixes #4671.
Fixes #4726.

R=golang-dev, fullung, sameer, cw, arthur, proppy, adonovan, rsc, bradfitz
CC=golang-dev
https://golang.org/cl/7314113
2013-02-26 13:48:32 -05:00
Dave Cheney
4036d876ea misc/dashboard/builder: various cleanups
* allow commit watcher to be disabled, useful for small slow builders who will never be the first to notice a commit.
* builders always update their local master working copy before cloning a specific revision.
* refactor hg repo operations into a new type, Repo.

R=adg, shanemhansen, luitvd
CC=golang-dev
https://golang.org/cl/7326053
2013-02-21 13:11:58 +11:00
Russ Cox
6c976393ae runtime: allow cgo callbacks on non-Go threads
Fixes #4435.

R=golang-dev, iant, alex.brainman, minux.ma, dvyukov
CC=golang-dev
https://golang.org/cl/7304104
2013-02-20 17:48:23 -05:00
Steven Elliot Harris
43da336b15 misc/emacs: Present "godoc" documentation buffers using view-mode.
Mimic the Emacs convention of presenting read-only files meant
for browsing using view-mode, rather than Fundamental mode
which mistakenly allows editing of the "godoc" content.
Fixes #4322.

R=golang-dev, bradfitz, sameer
CC=golang-dev
https://golang.org/cl/7231055
2013-02-20 14:42:37 -08:00
Robert Griesemer
3ee87d02b0 cmd/godoc: use go/build to determine package and example files
Also:
- faster code for example extraction
- simplify handling of command documentation:
  all "main" packages are treated as commands
- various minor cleanups along the way

For commands written in Go, any doc.go file containing
documentation must now be part of package main (rather
then package documentation), otherwise the documentation
won't show up in godoc (it will still build, though).

For commands written in C, documentation may still be
in doc.go files defining package documentation, but the
recommended way is to explicitly ignore those files with
a +build ignore constraint to define package main.

Fixes #4806.

R=adg, rsc, dave, bradfitz
CC=golang-dev
https://golang.org/cl/7333046
2013-02-19 11:19:58 -08:00
David Symonds
8ecc4cb41e misc/vim: update installation instructions to work better with some Linux distributions.
Fixes #3308.

R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/7301086
2013-02-18 14:03:47 +11:00
Russ Cox
6d888f1e1b build: clang support
This works with at least one version of clang
that existed at one moment in time.
No guarantees about clangs past or future.

To try:
        CC=clang all.bash

It does not work with the Xcode clang,
because that clang fails at printing a useful answer
to:
        clang -print-libgcc-file-name
The clang that works prints a full path name for
that command, not just "libgcc.a".

Fixes #4713.

R=iant, minux.ma
CC=golang-dev
https://golang.org/cl/7323068
2013-02-15 13:37:43 -08:00
Dave Cheney
ea0292c61b misc/dashboard/builder: record build result on dashboard
This is part one of two changes intended to make it easier to debug builder failures.

runOutput allows us to control the io.Writer passed to a subcommand. The intention is to add additional debugging information before and after the build which will then be capture and sent to the dashboard.

In this proposal, the only additional information is the build status. See http://build.golang.org/log/e7b5bf435b4de1913fc61781b3295fb3f03aeb6e

R=adg
CC=golang-dev
https://golang.org/cl/7303090
2013-02-15 10:44:29 +11:00
Andrew Gerrand
a801c8813d misc/dashboard: add missing return value
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7300084
2013-02-11 18:01:18 +11:00
Dave Cheney
f1c409b98b misc/dashboard/app: trim old builds from the history
The dashboard is currently failing to store results of new builds for some keys, notable the go.codereview sub repository. This is causing the builders to mark the entire triggering commit as failed. With the help of David Symonds we think it is because the results value has breached the 1mb datastore limit on AppEngine.

R=dsymonds, adg
CC=golang-dev
https://golang.org/cl/6858094
2013-02-05 20:50:20 +11:00
Russ Cox
b0a29f393b runtime: cgo-related fixes
* Separate internal and external LockOSThread, for cgo safety.
* Show goroutine that made faulting cgo call.
* Never start a panic due to a signal caused by a cgo call.

Fixes #3774.
Fixes #3775.
Fixes #3797.

R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/7228081
2013-02-01 08:34:41 -08:00
Francesc Campoy
ba41978516 go/misc/dist: Keep file modes when copying.
R=adg
CC=golang-dev
https://golang.org/cl/7221055
2013-01-29 15:17:39 -08:00
Francesc Campoy
6c035469b5 go/misc: Adding go-tour to the generated packages for every distribution.
R=adg, minux.ma
CC=golang-dev
https://golang.org/cl/6976045
2013-01-28 21:46:49 -08:00
Andrew Gerrand
df21f06fdf misc/dashboard/builder: synchronize accesses to goroot, always -commit
This prevents the occasional issue when Mercurial screws up the locking
itself, and by moving the locking into this process we can use the
goroot for other things (such as automatically updating the builder
binary).

It also asks all builders to poll for new commits.

R=bradfitz, dave, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/7178046
2013-01-25 10:06:18 +11:00
Andrew Gerrand
60b9cd535c misc/dashboard/godashboard: delete
This code is obsolete and unmaintained.

R=bradfitz
CC=golang-dev
https://golang.org/cl/7135056
2013-01-18 13:47:01 +11:00
Andrew Gerrand
f31f9a61c5 misc/dashboard/codereview: add campoy to list of gophers
R=dsymonds
CC=golang-dev
https://golang.org/cl/7106044
2013-01-14 09:54:56 +11:00
Sameer Ajmani
f14f458640 misc/emacs: update go-mode syntax table and comment handling as
suggested by pkleiweg.

Fixes #3471.

R=adonovan, pkleiweg, rsc
CC=golang-dev
https://golang.org/cl/7060056
2013-01-09 10:26:34 -05:00
Dave Cheney
47e5266a22 misc/dashboard/builder: set GOPATH before building subrepos
This proposal updates the dashboard builder to avoid relying on the (soon to be removed) support for using go get to download to $GOROOT. The result is

WORKSPACE=$(the value of the -buildRoot flag / $BUILDER_NAME + hg revision)
GOROOT=$WORKSPACE/go
GOPATH=$WORKSPACE

Required for CL 6941058.

R=minux.ma, adg
CC=golang-dev
https://golang.org/cl/7034049
2013-01-07 11:24:01 +11:00
Shenghou Ma
e09f1e7a46 misc/benchcmp: show byte allocation statistics
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6971048
2012-12-22 14:51:16 -05:00
Rémy Oudompheng
11a40cb34d misc/pprof: don't look for browser in current directory.
Taken from upstream pprof.

Fixes #4564.

R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/6952045
2012-12-21 20:40:44 +01:00
Joel Sing
708db79011 cgo: enable cgo on openbsd
Enable cgo on OpenBSD.

The OpenBSD ld.so(1) does not currently support PT_TLS sections. Work
around this by fixing up the TCB that has been provided by librthread
and reallocating a TCB with additional space for TLS. Also provide a
wrapper for pthread_create, allowing zeroed TLS to be allocated for
threads created externally to Go.

Joint work with Shenghou Ma (minux).

Requires change 6846064.

Fixes #3205.

R=golang-dev, minux.ma, iant, rsc, iant
CC=golang-dev
https://golang.org/cl/6853059
2012-12-21 01:43:19 +11:00
Shenghou Ma
1b18a6072e cmd/cgo: access errno from void C function
Fixes #3729.

R=rsc
CC=golang-dev
https://golang.org/cl/6938052
2012-12-18 00:26:08 +08:00
Brad Fitzpatrick
a257c753ac misc/dashboard: don't email about netbsd failures
Too flaky.

R=iant, rsc
CC=golang-dev
https://golang.org/cl/6925056
2012-12-12 11:33:03 -08:00
Russ Cox
9838774622 pprof: fix https URLs and 'profiler in use' errors
Fixes #3666.
Fixes #3680.

R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/6899054
2012-12-10 17:06:30 -05:00
Russ Cox
a93b15cad9 misc/emacs: fix go-mode hang
Fix suggested by serbaut.

Fixes #4445.

R=sameer
CC=golang-dev, serbaut
https://golang.org/cl/6842102
2012-11-27 12:21:10 -05:00
Dave Cheney
6a1036422f dashboard/builder: pass $CC to builder if set
R=adg, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/6843068
2012-11-22 08:41:02 +11:00
Vladimir Nikishenko
dd01e9281d cmd/cgo: fix alignment of bool.
Fixes #4417.

R=golang-dev, iant, minux.ma, bradfitz
CC=golang-dev, vova616
https://golang.org/cl/6782097
2012-11-21 13:04:38 -08:00
Andrew Gerrand
1395d3d9bf misc/git: add gofmt git pre-commit hook
R=golang-dev, bradfitz, ftrvxmtrx, franciscossouza, r, minux.ma
CC=golang-dev
https://golang.org/cl/6843044
2012-11-15 19:58:49 +01:00
Jeff R. Allen
d5449eafb9 misc/benchcmp: show memory statistics, when available
R=minux.ma, dave, extraterrestrial.neighbour, rsc
CC=golang-dev
https://golang.org/cl/6587069
2012-11-03 02:13:51 +08:00
Ian Lance Taylor
538a58bb75 misc/cgo/test: changes to pass when using gccgo
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6821067
2012-11-01 13:54:09 -07:00
Robert Griesemer
465b9c35e5 gofmt: apply gofmt -w src misc
Remove trailing whitespace in comments.
No other changes.

R=r
CC=golang-dev
https://golang.org/cl/6815053
2012-10-30 13:38:01 -07:00
Shenghou Ma
78a6f75241 cmd/ld: handle weak symbols
compiler_rt introduces a weak and hidden symbol compilerrt_abort_impl
into our pre-linked _all.o object, we have to handle it.

Fixes #4273.

R=iant, rsc, r
CC=golang-dev
https://golang.org/cl/6783050
2012-10-30 23:58:43 +08:00
Dave Cheney
be6afde348 misc/dashboard/builder: check http status before processing response
Occasionally GAE will return a 500 error response, don't treat this as a valid JSON body.

R=adg, dsymonds
CC=golang-dev
https://golang.org/cl/6775066
2012-10-31 02:24:08 +11:00
Andrew Radev
c8fe9c7606 misc/vim: fix reimport guard and remove K mapping.
The "did_ftplugin" lines were ineffective and the "K" mapping was too
invasive, which is why it was removed.

R=golang-dev, dsymonds, minux.ma
CC=golang-dev
https://golang.org/cl/6823044
2012-10-29 22:10:59 +11:00
David Symonds
b506c3e17a misc/dashboard/codereview: only accept "NOT LGTM" on the first line of a message.
Too many people quote entire emails and put their reply at the top ("top posting"),
so we shouldn't recognise review commands anywhere in the review text.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6815048
2012-10-29 22:03:58 +11:00
Shenghou Ma
3d00648dc1 gophertool: fix links
R=bradfitz
CC=golang-dev
https://golang.org/cl/6713043
2012-10-22 01:05:21 +08:00
Shenghou Ma
0c44488ad9 misc/dist: support packaging for NetBSD
R=adg
CC=golang-dev
https://golang.org/cl/6650053
2012-10-16 15:53:17 +08:00
Brad Fitzpatrick
bcf88de5ff pprof: filter out runtime.settype and fix --svg mode to produce valid XML
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6642043
2012-10-15 20:49:15 -07:00
Brad Fitzpatrick
08d66439b4 builder: label the race builder as "race"
R=golang-dev, adg, dave, rsc, minux.ma, dvyukov
CC=golang-dev
https://golang.org/cl/6648043
2012-10-15 20:30:41 -07:00
Shenghou Ma
24ab448c69 misc/cgo/test: add -ldl to LDFLAGS on Linux, ignore issue4029 on windows (fix build)
R=golang-dev
CC=golang-dev
https://golang.org/cl/6631054
2012-10-10 01:30:34 +08:00
Shenghou Ma
fa563ae82e cmd/ld, cmd/6l, cmd/8l: sort exported dynamic symbols for Darwin
Also corrected cmd/8l's .dynsym handling (differentiate between exported symbols and imported symbols)

        Fixes #4029.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6620075
2012-10-10 00:55:48 +08:00
David Symonds
f8b5838123 testing: change -test.benchtime to a flag.Duration.
Fixes #3902.

R=golang-dev, minux.ma, rsc, r
CC=golang-dev
https://golang.org/cl/6611059
2012-10-09 08:57:29 +11:00
Brad Fitzpatrick
9e811683f1 gophertool: make work with latest Chrome extension security restrictions
No JavaScript in HTML anymore.

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6619066
2012-10-07 17:56:10 -07:00
Brad Fitzpatrick
256daf2c85 misc/dashboard: set charset utf-8 on build log downloads
Fixes #4187

R=golang-dev, dave, minux.ma
CC=golang-dev
https://golang.org/cl/6587071
2012-10-03 08:16:27 -07:00
Russ Cox
0a006b4923 misc/cgo: prepare for 64-bit ints
In a few places, the existing cgo tests assume that a
Go int is the same as a C int. Making int 64 bits wide
on 64-bit platforms violates this assumption.
Change that code to assume that Go int32 and C int
are the same instead. That's still not great, but it's better,
and I am unaware of any systems we run on where it is not true.

Update #2188.

R=iant, r
CC=golang-dev
https://golang.org/cl/6552064
2012-09-24 14:58:45 -04:00
Joel Sing
9536480edc cgo: process DWARF info even when debug data is used for value
Always process the DWARF info, even when the const value is determined
using the debug data block. This ensures that the injected enum is
removed and future loads of the same constant do not trigger
inconsistent definitions.

Add tests for issues 2470 and 4054.
Fixes #4054.

R=golang-dev, fullung, dave, rsc, minux.ma
CC=golang-dev
https://golang.org/cl/6501101
2012-09-20 13:20:33 +10:00
Alex Brainman
81a9cc31c4 misc/cgo/test: do not run wasteCPU during TestParallelSleep unless on arm
R=golang-dev, r, minux.ma, dave, bradfitz
CC=golang-dev
https://golang.org/cl/6532052
2012-09-20 12:06:08 +10:00
David Symonds
adcf0a2aa0 misc/vim: fix Drop for imports after the first group.
Previously, an import block such as
	import (
        	"net"

                "stack"
        )
would not permit ":Drop stack" to work because we were aborting
the scan early, which is only correct when Import is in operation.

R=golang-dev, franciscossouza
CC=golang-dev
https://golang.org/cl/6532053
2012-09-20 08:11:07 +10:00
Shenghou Ma
674bbafce6 misc/cgo/stdio: make it work on Windows and also test it
use a function to get stdout and stderr, instead of depending
on a specific libc implementation.
also make test/run.go replace \r\n by \n before comparing
output.

        Fixes #2121.
        Part of issue 1741.

R=alex.brainman, rsc, r, remyoudompheng
CC=golang-dev
https://golang.org/cl/5847068
2012-09-20 00:27:23 +08:00
Andrew Gerrand
79de0d00ae misc/dist: generate tarballs for Mac OS X
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6503118
2012-09-17 16:59:16 -07:00
Andrew Gerrand
af832ac0b9 misc/dashboard/builder: reinstate 'go get -d' error handling hack
I thought this was redundant since the behavior of 'go get -d' had
changed. I was wrong. Should have tested more thoroughly.

R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/6500136
2012-09-17 11:21:02 -07:00
Andrew Gerrand
129b2bb19a misc/dashboard/builder: increase default command timeout
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6499127
2012-09-17 11:05:43 -07:00
Andrew Gerrand
f005fedfa9 misc/dashboard/builder: add timeout to all external command invocations
Fixes #4083.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6498136
2012-09-17 10:41:47 -07:00
Alex Brainman
db3c800d19 misc/dashboard/builder: use c:\ as default buildroot on windows
We have some tests (misc/cgo/test) that are disabled only because
they will fail to run on go builder - see issue 3358 for details.
This change will allow us to enable these tests.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6493118
2012-09-14 12:53:30 +10:00
Alex Brainman
7f075ece42 runtime: increase stack frame during cgo call on windows/amd64
Fixes #3945.

R=golang-dev, minux.ma
CC=golang-dev, vcc.163
https://golang.org/cl/6490056
2012-09-03 12:12:51 +10:00
Dave Cheney
d073677569 cgo/misc/test: burn CPU to improve sleep accuracy
Fixes #4008.

Run a background goroutine that wastes CPU to trick the
power management into raising the CPU frequency which,
by side effect, makes sleep more accurate on arm.

=== RUN TestParallelSleep
--- PASS: TestParallelSleep (1.30 seconds)
_cgo_gotypes.go:772:    sleep(1) slept for 1.000458s

R=minux.ma, r
CC=golang-dev
https://golang.org/cl/6498060
2012-08-31 20:17:59 +10:00
Shenghou Ma
e607380ff6 cmd/ld: handle a special case of scattered relocation 2/1 on Darwin/386
Fixes #1635.

R=golang-dev, dave, r
CC=golang-dev
https://golang.org/cl/6496043
2012-08-29 23:42:05 +08:00
Tobias Columbus
5e8de365dc misc/vim: fix for autocompletion
Vim autocompletion respects the $GOPATH variable and does not
    ignore dashes ('-'), dots ('.') and underscores ('_') like found
    in many remote packages.
    Environment variable $GOROOT is determined by calling
    'go env GOROOT' instead of relying on the user's environment
    variables.

    Fixes #3876
    Fixes #3882

R=golang-dev, franciscossouza, dsymonds, minux.ma
CC=golang-dev
https://golang.org/cl/6443151
2012-08-28 03:59:16 +08:00
Alex Brainman
58064a7cab pprof: make it work on windows again
- pprof is a perl script, so go command should invoke
  perl instead of trying to run pprof directly;
- pprof should use "go tool nm" unconditionally on windows,
  no one else can extract symbols from Go program;
- pprof should use "go tool nm" instead of "6nm".

Fixes #3879.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6445082
2012-08-18 17:03:32 +10:00
Shenghou Ma
9d303b8aac misc/cgo/life: remove -lmsvcrt to fix windows/amd64 build
I guess this is the problem as I can't reproduce the failure.

R=golang-dev, alex.brainman
CC=golang-dev
https://golang.org/cl/6465060
2012-08-17 09:10:01 +08:00
Shenghou Ma
551d8b9ff5 cmd/go: new cgo build procedure
This CL adds a step to the build procedure for cgo programs. It uses 'ld -r'
to combine all gcc compiled object file and generate a relocatable object file
for our ld. Additionally, this linking step will combine some static linking
gcc library into the relocatable object file, so that we can use libgcc,
libmingwex and libmingw32 without problem.

   Fixes #3261.
   Fixes #1741.
   Added a testcase for linking in libgcc.

TODO:
1. still need to fix the INDIRECT_SYMBOL_LOCAL problem on Darwin/386.
2. still need to enable the libgcc test on Linux/ARM, because 5l can't deal
with thumb libgcc.

Tested on Darwin/amd64, Darwin/386, FreeBSD/amd64, FreeBSD/386, Linux/amd64,
Linux/386, Linux/ARM, Windows/amd64, Windows/386

R=iant, rsc, bradfitz, coldredlemur
CC=golang-dev
https://golang.org/cl/5822049
2012-08-17 03:42:34 +08:00
Dave Cheney
1ac397f4b9 misc/cgo/test: remove unused Makefile
R=golang-dev, minux.ma, iant
CC=golang-dev
https://golang.org/cl/6459091
2012-08-16 20:19:54 +10:00
Alex Brainman
ef96d724e5 misc/cgo/life: explicitly specify library for assert function (fixes windows/amd64 build)
R=golang-dev, dave
CC=golang-dev, minux.ma
https://golang.org/cl/6461065
2012-08-09 17:00:31 +10:00
David Symonds
e803e1cfa6 misc/dashboard/codereview: fixes for non-reviewers.
Also rename the testing CGI argument from "email" to "user".

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6454117
2012-08-08 13:16:21 +10:00
Russ Cox
bacccefa8d misc/dashboard/codereview: fix obo
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6443091
2012-08-08 11:04:57 +10:00
Shenghou Ma
1e95429c3f misc/cgo/{life,stdio}, test/run.go: use test/run.go to do the cgo tests
Enhances test/run.go to support testing other directories
   Will enable stdio tests on Windows in a follow-up CL.

R=golang-dev, alex.brainman, rsc
CC=golang-dev
https://golang.org/cl/6220049
2012-08-07 09:38:35 +08:00
Russ Cox
ab058b3540 misc/dashboard/codereview: show first line of last message in thread
This line helps me to tell whether the CL is waiting for me or I'm waiting for the author.

Also:
 - vertical-align table cells so buttons are always aligned with CL headers.
 - add email= to show front page for someone else.

 Demo at http://rsc.gocodereview.appspot.com/.
 Until this is deployed for real, some recently changed CLs may be
 missing the 'first line of last message' part.

R=dsymonds
CC=golang-dev
https://golang.org/cl/6446065
2012-08-05 14:35:35 -04:00
Ian Lance Taylor
6fa38e5e0a cmd/go, go/build, misc/swig: add SWIG support to Go tool
R=adg, rsc, franciscossouza, seb.binet, gen.battle
CC=golang-dev
https://golang.org/cl/5845071
2012-08-03 18:08:43 -07:00
Mikio Hara
cbc3268d1d misc/cgo/test: fix darwin build
uuid_t is defined in unistd.h on OS X, unfortunately.

R=iant, rsc
CC=golang-dev
https://golang.org/cl/6455057
2012-07-31 20:59:06 +09:00
Russ Cox
09f1f5d76d misc/dashboard/codereview: add LastUpdate field to CL
To be filled in by a later CL. I deployed a test version to
App Engine to work on setting the values, so there are
a few records that have this field set already.

That field is breaking the live version, so I have pushed
a new copy with this 1-line change to the live version

I assumed that appengine/datastore was like every other
marshaling and unmarshaling package we have in Go
(for example, encoding/gob, encoding/json, encoding/xml,
and protobuf) and that if it loaded an unknown field it would
just ignore it. Apparently not. Sorry.

R=dsymonds
TBR=dsymonds
CC=golang-dev
https://golang.org/cl/6454064
2012-07-30 10:13:54 -04:00
David Symonds
2a9478ed64 misc/dashboard/codereview: pass user information to gobot when assigning reviewer.
R=bradfitz
CC=gobot, golang-dev, rsc
https://golang.org/cl/6457052
2012-07-30 14:41:04 +10:00
David Symonds
e53351013d misc/dashboard/codereview: switch to using gobot to update CL reviewer info.
R=rsc
CC=golang-dev
https://golang.org/cl/6453063
2012-07-30 14:13:12 +10:00
David Symonds
4168804639 misc/dashboard/codereview: bump user-specific table limits to 100.
R=rsc
CC=golang-dev
https://golang.org/cl/6457051
2012-07-30 14:11:51 +10:00
David Symonds
482ceeda6d misc/dashboard/codereview: interpret zero reviewers as the CL being closed.
This is the state when the CL has been submitted by someone other than
the CL author, but before the CL author has synched their client.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6458044
2012-07-30 13:51:21 +10:00
David Symonds
be629bf79e misc/dashboard/codereview: make all active CL tables hold up to 50 CLs.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6449060
2012-07-30 11:45:17 +10:00
David Symonds
3fe5f3353f misc/dashboard/codereview: fix tag nesting.
R=golang-dev, rsc, minux.ma
CC=golang-dev
https://golang.org/cl/6454062
2012-07-30 11:37:20 +10:00
David Symonds
3cc9d16792 misc/dashboard/codereview: recognize "NOT LGTM".
A "NOT LGTM" overrules a previous "LGTM" by the same person, and vice versa.
"NOT LGTM"s are shown in the same location as LGTMs, colored red.

R=rsc
CC=golang-dev
https://golang.org/cl/6453062
2012-07-30 10:54:50 +10:00
David Symonds
3294404900 misc/vim: fix :Import insertion heuristic.
If a factored import group has a blank line, assume it is dividing
separate groups of imports (e.g. standard library vs. site-specific).
        import (
                "bytes"
                "io"

                "mycorp/package"
        )

The most common case is inserting new standard library imports,
which are usually (stylistically) the first group, so we should drop
"net" in the above example immediately after "io".

Since this logic is getting non-trivial, add a test.

R=golang-dev, minux.ma, franciscossouza
CC=golang-dev
https://golang.org/cl/6445043
2012-07-30 08:48:51 +10:00
Ian Lance Taylor
f7f91a0506 misc/cgo/test: only run setgid test on GNU/Linux
Fixes #3874.

R=golang-dev, nj, r, minux.ma
CC=golang-dev
https://golang.org/cl/6446060
2012-07-28 10:40:51 -07:00
Ian Lance Taylor
c49af2ccaf misc/cgo/test: add test for issue 3871: cgo setgid hang on GNU/Linux
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6445049
2012-07-26 23:21:41 -07:00
David Symonds
a8ce9ab46c misc/dashboard/codereview: add admin-only link to force-update a CL.
R=nigeltao
CC=golang-dev
https://golang.org/cl/6431055
2012-07-23 12:41:23 +10:00
Shenghou Ma
b213891c06 misc/chrome/gophertool: fix manifest
according to http://code.google.com/chrome/extensions/browserAction.html,
it should use "default_popup" instead of "popup".

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/6349077
2012-07-05 16:52:13 -04:00
Shenghou Ma
33d2b495c5 cmd/cgo: generate definitions for GoSlice
Fixes #3741.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6308076
2012-06-30 12:40:07 +08:00
Jean-Marc Eurin
11cafa3a42 misc/emacs: Fix the gofmt patching when the TMPDIR is not the default.
The previous code assumed the gofmt output referred to /tmp but
that's not true if TMPDIR points somewhere else (like on Macs).
Fixes #3782.

R=sameer
CC=golang-dev
https://golang.org/cl/6346050
2012-06-29 12:49:31 -04:00
Amir Mohammad Saied
4c98584ecd misc/chrome/gophertool: Support for manifest version 1 is being phased out.
Manifest version 1 was deprecated in Chrome 18, and support will be phased
out according to the schedule available at:
http://code.google.com/chrome/extensions/manifestVersion.html

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6332053
2012-06-25 17:19:08 -04:00
Mats Lidell
cbcf358d29 misc/emacs: Replace replace-{string|regexp} for XEmacs compatible code
Use code to be used in lisp programs as suggested in the doc strings for
replace-{string|regexp}. Bonus: This code works for XEmacs.

R=golang-dev, sameer, jmeurin
CC=golang-dev
https://golang.org/cl/6296073
2012-06-21 13:01:54 -04:00
Jean-Marc Eurin
44a3a58e45 misc/emacs: Fix a failure when /tmp/<file>.go exists.
R=sameer
CC=golang-dev
https://golang.org/cl/6296060
2012-06-13 10:25:00 -04:00
Jean-Marc Eurin
d608b15db7 misc/emacs: Fix the automatic gofmt when creating a new file.
Patching the buffer with the output from gofmt -d only works if
the file already exists. If it doesn't, replace the content with
the output of gofmt.

R=sameer
CC=golang-dev
https://golang.org/cl/6302063
2012-06-11 13:12:28 -04:00
Andrew Gerrand
5528211158 misc/dashboard/app: fix build failure notifications
The datastore.Query methods once mutated the Query value, but now they return
a derivative query, so the Hash= and ParentHash= filters were not being
applied.

R=golang-dev, bradfitz, dsymonds
CC=golang-dev
https://golang.org/cl/6300058
2012-06-07 09:27:39 +10:00
Joel Sing
5131deeeb2 cgo: enable cgo on netbsd/386 and netbsd/amd64
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6261056
2012-06-05 01:43:04 +10:00
Joel Sing
b945b741e1 misc/cgo/stdio: split stdout/stderr into a separate file
Split stdout/stderr into a separate file so that can be handled
differently on some platforms. Both NetBSD and OpenBSD have defines
for stdout/stderr that require some coercion in order for cgo to
handle them correctly.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6247062
2012-06-05 01:38:55 +10:00
Ryan Barrett
062b609413 misc/emacs: make compilation-mode's next-error understand test failure output.
specifically, adds a go-test element to compilation-error-regexp-alist[-alist].
Fixes #3629.

R=golang-dev, rsc, sameer
CC=golang-dev, jba
https://golang.org/cl/6197091
2012-06-04 10:36:24 -04:00
Ryan Barrett
c9e698bdfb misc/emacs: stop go-mode from spuriously marking the buffer modified when it loads
R=golang-dev, sameer, bradfitz
CC=golang-dev, jba
https://golang.org/cl/6213056
2012-06-01 16:55:03 -04:00
David Symonds
935d8d16d4 misc/dashboard/codereview: handle abandoned CLs.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6257082
2012-06-01 10:55:55 +10:00
Rémy Oudompheng
c4a814f2da runtime/pprof, misc/pprof: correct profile of total allocations.
The previous heap profile format did not include buckets with
zero used bytes. Also add several missing MemStats fields in
debug mode.

R=golang-dev, rsc
CC=golang-dev, remy
https://golang.org/cl/6249068
2012-05-31 07:57:49 +02:00
Andrew Gerrand
735ec94591 misc/dashboard/app: add debug logging to notifyOnFailure; remove unused Result.OK function
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6258064
2012-05-31 14:09:50 +10:00
Andrew Gerrand
023a7e881c misc/dashboard/app: fix tests
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6244069
2012-05-31 14:09:24 +10:00
Mats Lidell
b8a02560de go-mode: Works for both GNU-Emacs and XEmacs-21.5
Fixes some portability issues between the Emacsen.

R=golang-dev, sameer, bradfitz, ryanb
CC=golang-dev
https://golang.org/cl/6206043
2012-05-30 16:04:29 -04:00
Jean-Marc Eurin
7b6111a9dd misc/emacs: Use patch output of gofmt instead of replacing the buffer.
This uses the patch output of gofmt (-d option) and applies each
chunk to the buffer, instead of replacing the whole buffer.  The
main advantage is that the undo history is kept across gofmt'ings,
so it can really be used as a before-save-hook.

R=sameer, sameer
CC=golang-dev
https://golang.org/cl/6198047
2012-05-30 14:18:58 -04:00
Peter Kleiweg
2d1fa08967 Emacs go-mode: don't indent the inside of strings.
Two fixes for indentation problems:

1. Properly recognize multi-line strings. These start with `, not ".

2. Don't indent a line if the beginning of the line is the end of a multi-line string. This happened for instance when inserting a closing bracket after a multi-line string.

R=sameer
CC=golang-dev
https://golang.org/cl/6157044
2012-05-29 16:30:06 -04:00
Peter Kleiweg
28e9e15802 Emacs go-mode: fix Emacs freeze-up when copy/pasting from string or comment.
Fixes #3509.
Fixes #2767.

R=golang-dev, sameer
CC=golang-dev
https://golang.org/cl/6139066
2012-05-29 12:40:12 -04:00
Brad Fitzpatrick
ca6b4d535f misc/dist: use archive/tar.FileInfoHeader
Fixes #3299

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6250056
2012-05-24 17:32:25 -07:00
Shenghou Ma
6dfe0162a6 misc/chrome/gophertool: lower CL number's lower bound and fix input focus on Mac
As our CL number could be as small as 152046, changed CL number's lower bound
to 150000. Hopefully our issue count won't reach 150000 any time soon.
Chrome on Mac OS X has very strange behavior regarding the focus, although we
force the focus to the input box on load, the page still come up with focus on
"issue". Set the tabindex of the input box as a workaround.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6212055
2012-05-17 04:22:44 +08:00
David Symonds
a90cbd741a misc/dashboard/codereview: add sameer.
R=r
CC=golang-dev
https://golang.org/cl/6203076
2012-05-15 08:38:05 +10:00
David Symonds
58bcec62c0 misc/dashboard/codereview: set In-Reply-To header to properly thread mail.
R=adg
CC=golang-dev
https://golang.org/cl/6208051
2012-05-14 10:05:39 +10:00
Jean-Marc Eurin
9d063816ef misc/emacs: Restore the window position after a successful gofmt.
This adds restoring the window position so that the buffer doesn't jump around after the erase/copy.

R=sameer
CC=golang-dev
https://golang.org/cl/5981055
2012-05-07 11:46:01 -04:00
Shenghou Ma
018bcc3535 runtime, misc/cgo/test: fix build for Linux/ARM
1. In CL 5989057, I made a mistake in the last minute change.
"MOVW.W R4, -4(SP)" should really be "MOVW.W R4, -4(R13)",
as 5l will rewrite offset for SP.
2. misc/cgo/test/issue1560.go tests for parallel sleep of 1s,
but on ARM, the deadline is frequently missed, so change sleep
time to 2s on ARM.

R=golang-dev, dave, rsc
CC=golang-dev
https://golang.org/cl/6202043
2012-05-05 01:35:13 +08:00
David Symonds
c44a22cc49 misc/dashboard/codereview: remove transitional code.
All current CLs have subject lines, so we don't need to check any more.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6196044
2012-05-04 16:40:24 +10:00
Andrew Gerrand
7a77645aa8 misc/dashboard/codereview: add copyright notices to Go files
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6177043
2012-05-03 09:22:45 +10:00
Rob Pike
ce30769ce3 misc/dashboard/codereview: LGTM favicon
R=dsymonds
CC=golang-dev
https://golang.org/cl/6158043
2012-05-02 13:48:49 +10:00
David Symonds
cc9a5c3be7 misc/dashboard/codereview: preserve CL ordering.
R=r
CC=golang-dev
https://golang.org/cl/6136056
2012-05-01 16:15:32 +10:00
David Symonds
83aa040c45 misc/dashboard/codereview: de-dup LGTMs.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6127066
2012-05-01 11:41:32 +10:00
David Symonds
dae2992c98 misc/dashboard/codereview: send mail immediately, and fill in time.Time fields.
If we delay the mail sending, we can't send as the current user.
If we don't fill in the time.Time fields, datastore.Put will fail
because the zero time.Time value is out of its range.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6136053
2012-05-01 11:33:25 +10:00
David Symonds
1bdb788b2e misc/dashboard/codereview: record Message-ID of code review thread mails.
This will allow us to properly thread "R=..." mails at a later time.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6135053
2012-04-30 22:47:51 +10:00
David Symonds
5d331964e7 misc/dashboard/codereview: add handy logout URL.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6135052
2012-04-30 22:47:06 +10:00
David Symonds
4335ec9eeb misc/dashboard/codereview: send mail to assigned reviewers if they aren't already looped in.
R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/6128054
2012-04-30 22:03:56 +10:00
David Symonds
24cce5c60c misc/dashboard/codereview: don't depend on map iteration order for unit calculation.
Fix auth requirements for /gc endpoint too.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6133049
2012-04-28 09:47:15 +10:00
David Symonds
fe252584f5 misc/dashboard/codereview: simplify parallel operations for front page, and capture timing info.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6128044
2012-04-27 23:16:54 +10:00
David Symonds
1a79053725 misc/dashboard/codereview: more abbreviated modification duration.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6131044
2012-04-27 17:12:09 +10:00
David Symonds
0175e3f1e0 misc/dashboard/codereview: new app.
This is live at http://gocodereview.appspot.com/.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/6134043
2012-04-27 16:36:02 +10:00
Andrew Gerrand
029d62f5c0 misc/dist: drop repetition in filenames, default to release tag
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6117066
2012-04-26 13:25:53 -07:00
Andrew Gerrand
b6522c43d5 dashboard: sort user interface by internal counter, not date
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/6114053
2012-04-25 13:01:08 -07:00
Mikkel Krautz
78e4d1752e misc/dist: more gophers for OS X installer
Replaces the default OS X installer background
with a more fitting image.

R=golang-dev
CC=golang-dev
https://golang.org/cl/6116043
2012-04-24 09:24:19 -07:00
Mikkel Krautz
c17d09a657 misc/dist: require 10.6 or later for OS X .pkgs
This changes the misc/dist program to generate OS X
packages using pkgbuild and productbuild.

The productbuild utility makes it easy to generate
packages with a custom Distribution file.  This allows
us to add an installcheck script that presents a
friendly message to users who are running on an old
version of Mac OS X.

The change also fixes a few issues with the
postinstall script:

 - In-repo version of the script has been made
   executable. Installers generated using the new
   tools couldn't execute it otherwise.

 - It now uses -d for checking for the existence
   of the Xcode specs directory.

 - The call to sudo.bash has been dropped since cov
   and prof aren't bundled with the binary
   distributions.

Fixes #3455.

Tested on 10.5.8, 10.6.0, 10.6.8 and 10.7.3.

R=adg, golang-dev
CC=golang-dev
https://golang.org/cl/5987044
2012-04-23 14:56:03 -07:00