Retro68/gcc/libgo/README

70 lines
2.5 KiB
Plaintext
Raw Normal View History

2012-03-27 23:13:14 +00: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-08-28 15:33:40 +00: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.
2012-03-27 23:13:14 +00:00
2015-08-28 15:33:40 +00: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.
2012-03-27 23:13:14 +00:00
Directories:
go
2015-08-28 15:33:40 +00:00
A copy of the Go library from http://golang.org/, with several
changes for gccgo.
2012-03-27 23:13:14 +00: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 .
The master copy of these files is hosted at
http://code.google.com/p/gofrontend . Changes to these files require
signing a Google contributor license agreement. If you are the
copyright holder, you will need to agree to the individual contributor
license agreement at
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.
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.