diff options
author | Thomas Fitzsimmons <fitzsim@redhat.com> | 2001-12-13 23:50:11 +0000 |
---|---|---|
committer | Thomas Fitzsimmons <fitzsim@redhat.com> | 2001-12-13 23:50:11 +0000 |
commit | 2e1a71756e754ada402efe9f5e2d6378dc11e496 (patch) | |
tree | 7df86f70bc78f4f8b0bcef05c1a4d677d8fc400f /newlib/README | |
parent | b92591a1fc53f2d5c42faaf438f697006bf63a82 (diff) | |
download | newlib-2e1a71756e754ada402efe9f5e2d6378dc11e496.zip newlib-2e1a71756e754ada402efe9f5e2d6378dc11e496.tar.gz newlib-2e1a71756e754ada402efe9f5e2d6378dc11e496.tar.bz2 |
* Makefile.shared: New file.
* libc/sys/linux/shared.ld: New file.
* libm/machine/*: New files.
* libm/machine/i386/*: New files.
* Makefile.am: Add libtool support. Change math and mathfp
references to variables.
* configure.host: Add variables for libtool support. Add
libm_machine_dir variable.
* configure.in: Add objectlist variables, for libtool
support. Add CC_FOR_BUILD tests.
* libc/Makefile.am: Add libtool support. Change crt0.o
reference to be a variable reference.
* libc/configure.in: Add libtool support. Change sublib
names to be lib${subdir}.la when using libtool.
* libc/ctype/Makefile.am: Add libtool support.
* libc/errno/Makefile.am: Likewise.
* libc/locale/Makefile.am: Likewise.
* libc/machine/Makefile.am: Likewise.
* libc/machine/configure.in: Likewise.
* libc/machine/i386/Makefile.am: Likewise.
* libc/machine/i386/configure.in: Likewise.
* libc/misc/Makefile.am: Likewise.
* libc/posix/Makefile.am: Likewise.
* libc/reent/Makefile.am: Likewise.
* libc/signal/Makefile.am: Likewise.
* libc/stdio/Makefile.am: Likewise.
* libc/stdlib/Makefile.am: Likewise.
* libc/string/Makefile.am: Likewise.
* libc/sys/Makefile.am: Likewise.
* libc/sys/configure.in: Likewise.
* libc/sys/linux/Makefile.am: Add libtool support. Change
awk reference to a variable reference. Change signal.h
reference to a variable reference.
* libc/sys/linux/configure.in: Add libtool support.
* libc/syscalls/Makefile.am: Likewise.
* libc/time/Makefile.am: Likewise.
* libc/unix/Makefile.am: Likewise.
* libm/Makefile.am: Add libtool support. Change math and
mathfp references to variables.
* libm/configure.in: Add libtool support. Add
LIBM_MACHINE_LIB variable.
* libm/common/Makefile.am: Add libtool support.
* libm/math/Makefile.am: Likewise.
* libm/mathfp/Makefile.am: Likewise.
Regenerate all Makefile.in, aclocal.m4, and configure.
Diffstat (limited to 'newlib/README')
-rw-r--r-- | newlib/README | 51 |
1 files changed, 42 insertions, 9 deletions
diff --git a/newlib/README b/newlib/README index bfc6ee2..e07d29b 100644 --- a/newlib/README +++ b/newlib/README @@ -1,4 +1,4 @@ - README for newlib-1.9.0 release + README for newlib-1.10.0 release (mostly cribbed from the README in the gdb-4.13 release) This is `newlib', a simple ANSI C library, math library, and collection @@ -17,8 +17,8 @@ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Unpacking and Installation -- quick overview ========================== -When you unpack the newlib-1.9.0.tar.gz file, you'll find a directory -called `newlib-1.9.0', which contains: +When you unpack the newlib-1.10.0.tar.gz file, you'll find a directory +called `newlib-1.10.0', which contains: COPYING config/ install-sh* mpw-configure COPYING.LIB config-ml.in libgloss/ mpw-install @@ -94,13 +94,13 @@ directory. If the path to `configure' would be the same as the argument to `--srcdir', you can leave out the `--srcdir' option; it will be assumed.) - For example, with version 1.9.0, you can build NEWLIB in a separate + For example, with version 1.10.0, you can build NEWLIB in a separate directory for a Sun 4 cross m68k-aout environment like this: - cd newlib-1.9.0 + cd newlib-1.10.0 mkdir ../newlib-m68k-aout cd ../newlib-m68k-aout - ../newlib-1.9.0/configure --host=sun4 --target=m68k-aout + ../newlib-1.10.0/configure --host=sun4 --target=m68k-aout make When `configure' builds a configuration using a remote source @@ -116,8 +116,8 @@ called `configure' (or one of its subdirectories). The `Makefile' that `configure' generates in each source directory also runs recursively. If you type `make' in a source directory such -as `newlib-1.9.0' (or in a separate configured directory configured with -`--srcdir=PATH/newlib-1.9.0'), you will build all the required libraries. +as `newlib-1.10.0' (or in a separate configured directory configured with +`--srcdir=PATH/newlib-1.10.0'), you will build all the required libraries. When you have multiple hosts or targets configured in separate directories, you can run `make' on them in parallel (for example, if @@ -214,13 +214,46 @@ prefer; but you may abbreviate option names if you use `--'. There is no convenient way to generate a list of all available hosts. +Shared newlib +============= + +newlib now uses libtool when it is being compiled natively (with +--target=i[3456]86-pc-linux-gnu) on an i[3456]86-pc-linux-gnu host. This +allows newlib to be compiled as a shared library. + +To configure newlib, do the following from your build directory: + +$(source_dir)/src/configure --with-newlib --prefix=$(install_dir) + +configure will recognize that host == target == +i[3456]86-pc-linux-gnu, so it will tell newlib to compile itself using +libtool. By default, libtool will build shared and static versions of +newlib. + +To compile a program against shared newlib, do the following (where +target_install_dir = $(install_dir)/i[3456]86-pc-linux-gnu): + +gcc -nostdlib $(target_install_dir)/lib/crt0.o progname.c -I $(target_install_dir)/include -L $(target_install_dir)/lib -lc -lm -lgcc + +To run the program, make sure that $(target_install_dir)/lib is listed +in the LD_LIBRARY_PATH environment variable. + +To create a static binary linked against newlib, do the following: + +gcc -nostdlib -static $(target_install_dir)/lib/crt0.o progname.c -I $(target_install_dir)/include -L $(target_install_dir)/lib -lc -lm + +libtool can be instructed to produce only static libraries. To build +newlib as a static library only, do the following from your build +directory: + +$(source_dir)/src/configure --with-newlib --prefix=$(install_dir) --disable-shared Reporting Bugs ============== The correct address for reporting bugs found in NEWLIB is "newlib@sources.redhat.com". Please email all bug reports to that -address. Please include the NEWLIB version number (e.g., newlib-1.9.0), +address. Please include the NEWLIB version number (e.g., newlib-1.10.0), and how you configured it (e.g., "sun4 host and m68k-aout target"). Since NEWLIB supports many different configurations, it is important that you be precise about this. |