Niels Nesse eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
..
config eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
testsuite eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
.gitignore eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
COPYING.LIB eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
ChangeLog eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
ChangeLog.jit eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
Makefile.in eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
README eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
_doprnt.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
aclocal.m4 eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
alloca.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
argv.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
asprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
at-file.texi eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
atexit.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
basename.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
bcmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
bcopy.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
bsearch.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
bzero.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
calloc.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
choose-temp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
clock.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
concat.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
config.h-vms eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
config.in eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
configure eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
configure.ac eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
configure.com eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
copying-lib.texi eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
copysign.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
cp-demangle.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
cp-demangle.h eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
cp-demint.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
cplus-dem.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
crc32.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
d-demangle.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
dwarfnames.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
dyn-string.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
fdmatch.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
ffs.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
fibheap.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
filename_cmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
floatformat.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
fnmatch.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
fnmatch.txh eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
fopen_unlocked.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
functions.texi eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
gather-docs eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getcwd.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getopt.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getopt1.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getpagesize.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getpwd.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
getruntime.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
gettimeofday.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
hashtab.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
hex.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
index.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
insque.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
lbasename.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
libiberty.texi eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
lrealpath.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
maint-tool eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
make-relative-prefix.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
make-temp-file.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
makefile.vms eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
md5.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memchr.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memcmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memcpy.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memmem.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memmove.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
mempcpy.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
memset.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
mkstemps.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
msdos.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
objalloc.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
obstack.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
obstacks.texi eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
partition.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-common.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-common.h eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-djgpp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-msdos.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-one.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-unix.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pex-win32.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pexecute.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
pexecute.txh eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
physmem.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
putenv.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
random.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
regex.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
rename.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
rindex.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
safe-ctype.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
setenv.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
setproctitle.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
sha1.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
sigsetmask.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object-coff.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object-common.h eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object-elf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object-mach-o.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object-xcoff.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
simple-object.txh eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
snprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
sort.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
spaces.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
splay-tree.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
stack-limit.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
stpcpy.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
stpncpy.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strcasecmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strchr.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strdup.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strerror.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strncasecmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strncmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strndup.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strnlen.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strrchr.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strsignal.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strstr.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strtod.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strtol.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strtoll.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strtoul.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strtoull.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
strverscmp.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
timeval-utils.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
tmpnam.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
unlink-if-ordinary.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vasprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vfork.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vfprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vprintf-support.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vprintf-support.h eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vsnprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
vsprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
waitpid.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xasprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xatexit.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xexit.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xmalloc.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xmemdup.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xstrdup.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xstrerror.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xstrndup.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren
xvasprintf.c eb72d50f44 Import gcc 5.2.0 from tarball vor 9 Jahren

README

This directory contains the -liberty library of free software.
It is a collection of subroutines used by various GNU programs.
Current members include:

getopt -- get options from command line
obstack -- stacks of arbitrarily-sized objects
strerror -- error message strings corresponding to errno
strtol -- string-to-long conversion
strtoul -- string-to-unsigned-long conversion

We expect many of the GNU subroutines that are floating around to
eventually arrive here.

The library must be configured from the top source directory. Don't
try to run configure in this directory. Follow the configuration
instructions in ../README.

Please report bugs to "gcc-bugs@gcc.gnu.org" and send fixes to
"gcc-patches@gcc.gnu.org". Thank you.

ADDING A NEW FILE
=================

There are two sets of files: Those that are "required" will be
included in the library for all configurations, while those
that are "optional" will be included in the library only if "needed."

To add a new required file, edit Makefile.in to add the source file
name to CFILES and the object file to REQUIRED_OFILES.

To add a new optional file, it must provide a single function, and the
name of the function must be the same as the name of the file.

* Add the source file name to CFILES in Makefile.in and the object
file to CONFIGURED_OFILES.

* Add the function to name to the funcs shell variable in
configure.ac.

* Add the function to the AC_CHECK_FUNCS lists just after the
setting of the funcs shell variable. These AC_CHECK_FUNCS calls
are never executed; they are there to make autoheader work
better.

* Consider the special cases of building libiberty; as of this
writing, the special cases are newlib and VxWorks. If a
particular special case provides the function, you do not need
to do anything. If it does not provide the function, add the
object file to LIBOBJS, and add the function name to the case
controlling whether to define HAVE_func.

Finally, in the build directory of libiberty, configure with
"--enable-maintainer-mode", run "make maint-deps" to update
Makefile.in, and run 'make stamp-functions' to regenerate
functions.texi.

The optional file you've added (e.g. getcwd.c) should compile and work
on all hosts where it is needed. It does not have to work or even
compile on hosts where it is not needed.

ADDING A NEW CONFIGURATION
==========================

On most hosts you should be able to use the scheme for automatically
figuring out which files are needed. In that case, you probably
don't need a special Makefile stub for that configuration.

If the fully automatic scheme doesn't work, you may be able to get
by with defining EXTRA_OFILES in your Makefile stub. This is
a list of object file names that should be treated as required
for this configuration - they will be included in libiberty.a,
regardless of whatever might be in the C library.