2010-12-03 12:34:57 +08:00
|
|
|
See ../README.
|
|
|
|
|
|
|
|
This is the runtime support library for the Go programming language.
|
|
|
|
This library is intended for use with the Go frontend.
|
|
|
|
|
2015-03-14 02:53:13 +08:00
|
|
|
This library should not be stripped when it is installed. Go code
|
|
|
|
relies on being able to look up file/line information, which comes
|
|
|
|
from the debugging info using the libbacktrace library.
|
2010-12-03 12:34:57 +08:00
|
|
|
|
2015-03-14 02:53:13 +08:00
|
|
|
The library has only been tested on GNU/Linux using glibc, and on
|
|
|
|
Solaris. It should not be difficult to port to other operating
|
|
|
|
systems.
|
2010-12-03 12:34:57 +08:00
|
|
|
|
|
|
|
Directories:
|
|
|
|
|
|
|
|
go
|
2015-03-14 02:53:13 +08:00
|
|
|
A copy of the Go library from http://golang.org/, with several
|
|
|
|
changes for gccgo.
|
2010-12-03 12:34:57 +08:00
|
|
|
|
|
|
|
runtime
|
|
|
|
Runtime functions, written in C, which are called directly by the
|
|
|
|
compiler or by the library.
|
|
|
|
|
|
|
|
Contributing
|
|
|
|
============
|
|
|
|
|
|
|
|
To contribute patches to the files in this directory, please see
|
|
|
|
http://golang.org/doc/gccgo_contribute.html .
|
|
|
|
|
2010-12-04 03:08:11 +08:00
|
|
|
The master copy of these files is hosted at
|
2010-12-04 03:03:38 +08:00
|
|
|
http://code.google.com/p/gofrontend . Changes to these files require
|
2010-12-04 04:41:15 +08:00
|
|
|
signing a Google contributor license agreement. If you are the
|
2010-12-04 03:03:38 +08:00
|
|
|
copyright holder, you will need to agree to the individual contributor
|
|
|
|
license agreement at
|
2010-12-03 12:34:57 +08:00
|
|
|
http://code.google.com/legal/individual-cla-v1.0.html. This agreement
|
|
|
|
can be completed online.
|
|
|
|
|
|
|
|
If your organization is the copyright holder, the organization will
|
|
|
|
need to agree to the corporate contributor license agreement at
|
|
|
|
http://code.google.com/legal/corporate-cla-v1.0.html.
|
|
|
|
|
|
|
|
If the copyright holder for your code has already completed the
|
|
|
|
agreement in connection with another Google open source project, it
|
|
|
|
does not need to be completed again.
|
2019-05-09 06:07:40 +08:00
|
|
|
|
|
|
|
Debugging
|
|
|
|
=========
|
|
|
|
|
|
|
|
This describes how to test libgo when built as part of gccgo.
|
|
|
|
|
|
|
|
To test a specific package, cd to the libgo build directory
|
|
|
|
(TARGET/libgo) and run `make PKG/check`. For example, `make
|
|
|
|
bytes/check`.
|
|
|
|
|
|
|
|
To see the exact commands that it runs, including how the compiler is
|
|
|
|
invoked, run `make GOTESTFLAGS=--trace bytes/check`. This will
|
|
|
|
display the commands if the test fails. If the test passes, the
|
|
|
|
commands and other output will be visible in a file named
|
|
|
|
check-testlog in a subdirectory with the name of the package being
|
|
|
|
checked. In the case of bytes/check, this will create
|
|
|
|
bytes/check-testlog.
|
|
|
|
|
|
|
|
To leave the test program behind, run `make GOTESTFLAGS=--keep
|
|
|
|
bytes/check`. That will leave a gotestNNNN/test directory in the
|
|
|
|
libgo build directory. In that directory you can run
|
|
|
|
`LD_LIBRARY_PATH=../../.libs ./a.out -test.short` to run the tests.
|
|
|
|
You can run specific failing tests using a -test.run option. You can
|
|
|
|
see the tests being run with the -test.v option. You can run the
|
|
|
|
program under a debugger such as gdb.
|