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

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.