]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgo/README
[C++] Protect call to copy_attributes_to_builtin (PR91505)
[thirdparty/gcc.git] / libgo / README
CommitLineData
e440a328 1See ../README.
2
3This is the runtime support library for the Go programming language.
4This library is intended for use with the Go frontend.
5
e2db44f2 6This library should not be stripped when it is installed. Go code
7relies on being able to look up file/line information, which comes
8from the debugging info using the libbacktrace library.
e440a328 9
e2db44f2 10The library has only been tested on GNU/Linux using glibc, and on
11Solaris. It should not be difficult to port to other operating
12systems.
e440a328 13
14Directories:
15
16go
e2db44f2 17 A copy of the Go library from http://golang.org/, with several
18 changes for gccgo.
e440a328 19
20runtime
21 Runtime functions, written in C, which are called directly by the
22 compiler or by the library.
23
e440a328 24Contributing
25============
26
27To contribute patches to the files in this directory, please see
28http://golang.org/doc/gccgo_contribute.html .
29
98d47964 30The master copy of these files is hosted at
f78a6a7e 31http://code.google.com/p/gofrontend . Changes to these files require
e9cc727a 32signing a Google contributor license agreement. If you are the
f78a6a7e 33copyright holder, you will need to agree to the individual contributor
34license agreement at
e440a328 35http://code.google.com/legal/individual-cla-v1.0.html. This agreement
36can be completed online.
37
38If your organization is the copyright holder, the organization will
39need to agree to the corporate contributor license agreement at
40http://code.google.com/legal/corporate-cla-v1.0.html.
41
42If the copyright holder for your code has already completed the
43agreement in connection with another Google open source project, it
44does not need to be completed again.
56d6b15c 45
46Debugging
47=========
48
49This describes how to test libgo when built as part of gccgo.
50
51To test a specific package, cd to the libgo build directory
52(TARGET/libgo) and run `make PKG/check`. For example, `make
53bytes/check`.
54
55To see the exact commands that it runs, including how the compiler is
56invoked, run `make GOTESTFLAGS=--trace bytes/check`. This will
57display the commands if the test fails. If the test passes, the
58commands and other output will be visible in a file named
59check-testlog in a subdirectory with the name of the package being
60checked. In the case of bytes/check, this will create
61bytes/check-testlog.
62
63To leave the test program behind, run `make GOTESTFLAGS=--keep
64bytes/check`. That will leave a gotestNNNN/test directory in the
65libgo build directory. In that directory you can run
66`LD_LIBRARY_PATH=../../.libs ./a.out -test.short` to run the tests.
67You can run specific failing tests using a -test.run option. You can
68see the tests being run with the -test.v option. You can run the
69program under a debugger such as gdb.