Commit Graph

366 Commits

Author SHA1 Message Date
Roland McGrath
e0a3ed4ff9 * Makefile (subdir-target-args): New variable.
($(all-subdirs-targets)): Use it in place of -C option.
	* Rules: Use $(..) instead of ../ if it's already defined.
	* Makeconfig (subdir-srcdirs): New variable.
	* csu/Makefile (all-Banner-files): Use it.

	* configure.in (--enable-add-ons): Set to "yes" by default.
	Handle absolute add-on directory names when looking for configure
	fragments.  Also look for sysdeps/*/preconfigure fragments in add-ons.
	Require add-on configure to set $libc_add_on_canonical, use
	that in $add_ons_sfx.  Substitute add_on_subdirs with computed list
	of subdir names each add-on configure set in libc_add_on_subdirs.
	* configure: Regenerated.
	* Makefile (%/preconfigure: %/preconfigure.in): New pattern rule.
	* config.make.in (add-on-subdirs): New substituted variable.
	* Makeconfig (all-subdirs): Include $(add-on-subdirs).
	Remove $(add-ons), $(sysdep-subdirs).
	Don't filter out $(sysdep-inhibit-subdirs).
	($(common-objpfx)sysd-dirs): Target removed.  Don't include it.
	($(common-objpfx)sysd-sorted): Rewritten to feed Depend and Subdirs
	files together to gen-sorted.awk, and $(subdirs) via -v.
	(subdirs): Remove magic reordering for mach and hurd.
	* scripts/gen-sorted.awk: Use subdirs from command line.
	Process Subdirs and Depend files directly.
	Let Subdirs files use "first dir" and "inhibit dir".
	Always move elf to the end of the list.
	* hurd/Depend: New file.
	* sysdeps/mach/Subdirs: Use "first mach".

	* Makefile (dist-separate): Remove linuxthreads.
	(dist-separate-linuxthreads): Variable removed.
	(glibc-%.tar rule): Use $(sysdeps-add-ons).

	* Makerules ($(common-objpfx)Versions.v.i): Use $(subdirs),
	not $(all-subdirs).
	(sysdep-makefiles): Use $(sysdirs).
	(sysdirs): Remove export.
	($(+sysdir_pfx)sysd-rules): Handle absolute directory names in
	$(config-sysdirs).
	(+sysdir_pfx): Variable removed.
	(sysd-rules): Use $(common-objpfx) in place of it.
	(sysdirs): Variable moved to ...
	* Makeconfig (sysdirs): ... here.
	Handle absolute directory names in $(config-sysdirs).
	(full_config_sysdirs): Variable removed.
	* csu/Makefile: Use $(sysdirs) in vpath directive.
	* math/Makefile (ulps-file): Use $(sysdirs).
	* sysdeps/gnu/Makefile (errlist-c): Likewise.
	($(objpfx)errlist-compat.c): Likewise.
	* Makeconfig (all-Subdirs-files): Likewise.
	($(common-objpfx)config.status): Likewise.

	* configure.in (sysnames): Handle absolute add-on directory names.
	(sysdeps_add_ons): New variable, AC_SUBST it.
	Compute which add-ons contributed sysdeps directories.
	* configure: Regenerated.
	* config.make.in (sysdeps-add-ons): New substituted variable.
	* Makerules (+sysdep_dirs, +sysdep-includes): Variables moved ...
	* Makeconfig: ... to here.
	(+sysdep_dirs): Append $(sysdeps-add-ons) here.
	(+includes): Remove $(objpfx) include, already in $(+sysdep_dirs).
	Remove $(includes).
	(sysdep-makeconfigs): Use $(+sysdep_dirs).
	($(common-objpfx)shlib-versions.v.i): Likewise.

	* Makeconfig: Remove hair to set Makeconfig-add-on.

	* sysdeps/unix/Makefile (sysdirs): Remove export.
	(asm_CPP): Variable removed.
	($(common-objpfx)sysd-syscalls): Pass them directly for the script.

	* sysdeps/posix/Makefile: New file.
	* Makerules (L_tmpnam, TMP_MAX, L_ctermid, L_cuserid): Set non-posix
	values here with ?=.

	* stdlib/gen-mpn-copy: File removed.
	* stdlib/Makefile (distribute): Remove it.
	* configure.in: Don't grok --with-gmp.
	* configure: Regenerated.

	* configure.in (libc_cv_idn): Don't check it; libidn/configure does it.
	* configure: Regenerated.

	* bare: Directory removed, saved in ports repository.
2006-02-28 07:11:04 +00:00
Roland McGrath
2f663a980c * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h [__ASSEMBLER__]: Don't
include problematic headers for assembler.

	* Makerules ($(+sysdir_pfx)sysd-rules): Don't emit m_%.c rules,
	instead emit m_%.o compilation rules from s_%.? source files.
	* math/Makefile ($(objpfx)m_%$o: s_%.c): New rule using o-iterator.
2006-01-19 07:29:40 +00:00
Roland McGrath
f0cf0902ea * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules to install
into $(inst_includedir)/%.h from sysdirs.
	[headers]: Change static pattern rule for installing
	$(headers) to do only those not matching %.h.
	($(inst_includedir)/%.h: $(objpfx)%.h): Add this pattern rule instead.
	($(inst_includedir)/%.h: %.h): Likewise.
	($(inst_includedir)/%.h: $(..)include/%.h): Likewise.

	* Makefile ($(inst_includedir)/gnu/stubs.h):
	Add $(make-target-directory).

	* stdlib/Makefile (headers): Restore headers removed in last change.

2006-01-16  Jakub Jelinek  <jakub@redhat.com>

	* math/e_exp2l.c: Don't include stdio.h, errno.h, stub-tag.h, include
	math_private.h.
	(__ieee754_exp2l): Compute for now as expl (M_LN2l * x)
	instead of failing.
	(exp2l): Remove stub_warning.

2006-01-15  Jakub Jelinek  <jakub@redhat.com>

	* io/tst-faccessat.c (do_test): Don't fail if geteuid () == 0.
2006-01-17 04:31:22 +00:00
Ulrich Drepper
d9266ea02f * Makerules: Define build-module-asneeded.
* iconvdata/extra-module.mk: Use build-module-asneeded.
	needed.

2006-01-09  Richard Henderson  <rth@redhat.com>

	* iconvdata/extra-module.mk ($(objpfx)$(mod).so): Depend on ld.so.
	* sysdeps/alpha/__longjmp.S: Use PTR_DEMANGLE.
	* sysdeps/alpha/setjmp.S: Likewise.  Avoid __sigjmp_save for rtld;
	tailcall in libc.so.
	* sysdeps/unix/sysv/linux/alpha/sysdep.h (PTR_MANGLE): Define.
	(PTR_MANGLE2): Define.

2006-01-11  Ulrich Drepper  <drepper@redhat.com>
2006-01-11 22:18:24 +00:00
Roland McGrath
9de06f3c77 * po/.cvsignore: List libc.pot.files, and not any .pot names.
* manual/maint.texi (Porting): Don't mention Dist files.
	* sysdeps/alpha/soft-fp/Dist: File removed.
	* sysdeps/alpha/Dist: File removed.
	* sysdeps/i386/i686/Dist: File removed.
	* sysdeps/i386/soft-fp/Dist: File removed.
	* sysdeps/i386/Dist: File removed.
	* sysdeps/mips/soft-fp/Dist: File removed.
	* sysdeps/mips/mips64/soft-fp/Dist: File removed.
	* sysdeps/mips/mips64/Dist: File removed.
	* sysdeps/mips/Dist: File removed.
	* sysdeps/wordsize-32/Dist: File removed.
	* sysdeps/m68k/fpu/switch/Dist: File removed.
	* sysdeps/m68k/fpu/Dist: File removed.
	* sysdeps/powerpc/powerpc64/Dist: File removed.
	* sysdeps/powerpc/soft-fp/Dist: File removed.
	* sysdeps/powerpc/powerpc32/fpu/Dist: File removed.
	* sysdeps/powerpc/powerpc32/Dist: File removed.
	* sysdeps/powerpc/fpu/Dist: File removed.
	* sysdeps/powerpc/Dist: File removed.
	* sysdeps/unix/common/Dist: File removed.
	* sysdeps/unix/bsd/bsd4.4/Dist: File removed.
	* sysdeps/unix/bsd/Dist: File removed.
	* sysdeps/unix/sysv/linux/alpha/Dist: File removed.
	* sysdeps/unix/sysv/linux/i386/Dist: File removed.
	* sysdeps/unix/sysv/linux/mips/mips64/Dist: File removed.
	* sysdeps/unix/sysv/linux/mips/Dist: File removed.
	* sysdeps/unix/sysv/linux/m68k/Dist: File removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: File removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: File removed.
	* sysdeps/unix/sysv/linux/powerpc/aix/Dist: File removed.
	* sysdeps/unix/sysv/linux/powerpc/Dist: File removed.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Dist: File removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/Dist: File removed.
	* sysdeps/unix/sysv/linux/sparc/Dist: File removed.
	* sysdeps/unix/sysv/linux/ia64/Dist: File removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/Dist: File removed.
	* sysdeps/unix/sysv/linux/s390/Dist: File removed.
	* sysdeps/unix/sysv/linux/s390/s390-32/Dist: File removed.
	* sysdeps/unix/sysv/linux/sh/Dist: File removed.
	* sysdeps/unix/sysv/linux/x86_64/Dist: File removed.
	* sysdeps/unix/sysv/linux/hppa/Dist: File removed.
	* sysdeps/unix/sysv/linux/Dist: File removed.
	* sysdeps/unix/sysv/Dist: File removed.
	* sysdeps/unix/Dist: File removed.
	* sysdeps/generic/Dist: File removed.
	* sysdeps/sparc/sparc32/soft-fp/Dist: File removed.
	* sysdeps/sparc/sparc32/sparcv9/Dist: File removed.
	* sysdeps/sparc/sparc32/sparcv8/Dist: File removed.
	* sysdeps/sparc/sparc32/Dist: File removed.
	* sysdeps/sparc/sparc64/soft-fp/Dist: File removed.
	* sysdeps/sparc/sparc64/Dist: File removed.
	* sysdeps/sparc/Dist: File removed.
	* sysdeps/gnu/Dist: File removed.
	* sysdeps/ia64/fpu/Dist: File removed.
	* sysdeps/ia64/Dist: File removed.
	* sysdeps/mach/mips/Dist: File removed.
	* sysdeps/mach/hurd/alpha/Dist: File removed.
	* sysdeps/mach/hurd/i386/Dist: File removed.
	* sysdeps/mach/hurd/mips/Dist: File removed.
	* sysdeps/mach/hurd/powerpc/Dist: File removed.
	* sysdeps/mach/hurd/Dist: File removed.
	* sysdeps/s390/s390-64/Dist: File removed.
	* sysdeps/s390/Dist: File removed.
	* sysdeps/s390/s390-32/Dist: File removed.
	* sysdeps/sh/Dist: File removed.
	* sysdeps/posix/Dist: File removed.
	* sysdeps/ieee754/dbl-64/Dist: File removed.
	* sysdeps/ieee754/ldbl-128/Dist: File removed.
	* sysdeps/ieee754/flt-32/Dist: File removed.
	* sysdeps/ieee754/Dist: File removed.
	* sysdeps/x86_64/soft-fp/Dist: File removed.
	* sysdeps/x86_64/Dist: File removed.
	* sysdeps/hppa/Dist: File removed.

	* Makerules (common-clean): Don't remove distinfo file.
	($(objpfx)distinfo): Target removed.
	* manual/Makefile (mostlyclean): Don't remove distinfo file.
	(glibc-targets): Remove echo-distinfo.

	* scripts/list-sources.sh: New file.
	* Makefile (TAGS): New target.
	* po/Makefile (libc.pot, libc.pot.files): New targets.
	* Makeconfig (XGETTEXT): New variable.
	* Makerules ($(..)po/%.pot): Rule removed.
	(TAGS): Target removed.
	* Rules (subdir_TAGS): Target removed.
	* MakeTAGS: File removed.

	* Makefile (iconvdata/% localedata/% po/% manual/%): Depend on FORCE.
	* Makeconfig ($(all-Depend-files)): New targets with no-op commands.
2006-01-08 06:46:10 +00:00
Ulrich Drepper
7735afa212 * Makeconfig: Define CXXFLAGS. Split out warnings from +gccwarn which
are not understood by the C++ compiler.
	* Makerules: Add rules to build C++ code for test cases.
	* include/stdlib.h: Protect for inclusion in C++ code.
	* include/time.h: Likewise.

	* test-skeleton.c (timeout_handler): Rewrite ts initialization for
	C++ compatibility.
2005-12-23 01:55:26 +00:00
Roland McGrath
ba389ce307 2005-12-22 Roland McGrath <roland@redhat.com>
* Makerules [gen-as-const-headers] (tests): Add one test per .sym
	file, not just one.
	($(objpfx)test-as-const.c): Target replaced with ...
	($(objpfx)test-as-const-%.c): ... this pattern rule.
	(generated): Add those files.
2005-12-22 23:38:16 +00:00
Roland McGrath
0c7c6d531f * sysdeps/unix/sysv/linux/i386/ucontext_i.h: File removed.
* sysdeps/unix/sysv/linux/i386/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/s390/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/x86_64/ucontext_i.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) = stdlib]:
	(gen-as-const-headers): Add it.
	* sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
	* stdlib/tst-ucontext-off.c: File removed.
	* stdlib/Makefile (tests): Remove it.

	* scripts/gen-as-const.awk: Support generating a test program.
	* Makerules [gen-as-const-headers] (tests): Add test-as-const.
	[gen-as-const-headers] ($(objpfx)test-as-const.c): New target.
2005-12-22 05:18:34 +00:00
Ulrich Drepper
b6ab06cef4 2005-12-13 Ulrich Drepper <drepper@redhat.com> 2005-12-14 08:43:25 +00:00
Roland McGrath
fe60d146c7 * sysdeps/unix/sysv/linux/sh/bits/mman.h: Define MREMAP_FIXED. 2005-10-16 11:38:59 +00:00
Roland McGrath
aed48a2a23 2005-10-16 Daniel Jacobowitz <dan@codesourcery.com>
Roland McGrath  <roland@redhat.com>

	* Makerules [module-names] (extra-modules-build): New variable.
	($(extra-modules-build:%=$(objpfx)%.so)): New static pattern rule.
	Depend on libc.so and libc_nonshared.a.
	* dlfcn/Makefile ($(test-modules)): Remove static pattern rule.
	* elf/Makefile (modules-names-nobuild): New variable, add filtmod1.
	($(test-modules)): Remove static pattern rule.
2005-10-16 09:25:59 +00:00
Roland McGrath
ae46b677f0 [BZ #869]
2005-07-22  Roland McGrath  <roland@redhat.com>
	[BZ #869]
	* Makerules ($(objpfx)stubs): Fix last change.
2005-07-22 07:10:10 +00:00
Roland McGrath
90a62401c6 [BZ #869]
2005-07-18  Roland McGrath  <roland@redhat.com>
	[BZ #869]
	* Makerules ($(objpfx)stubs): Do cd into $(objdir) to reduce size of
	objdump command line.
2005-07-19 03:54:55 +00:00
Roland McGrath
c440fa7584 2005-03-05 Jakub Jelinek <jakub@redhat.com>
* Makerules ($(inst_libdir)/libc.so): Use $(slibdir) instead of
	$(inst_slibdir) in AS_NEEDED directive.
2005-03-05 19:24:32 +00:00
Ulrich Drepper
c366c93475 * Makerules (libc.so): Add AS_NEEDED line for dynamic linker. 2005-02-24 02:13:19 +00:00
Ulrich Drepper
d3f5f87569 (libc.so): Add AS_NEEDED line for dynamic linker. 2005-02-24 02:09:38 +00:00
Roland McGrath
561bcb8086 [BZ #157]
* include/libc-symbols.h (stub_warning): Emit a marker section called
	.gnu.glibc-stub.NAME.
	* Makerules ($(objpfx)stubs): Depend on object files, not dep files.
	Use objdump to collect those marker section names.
	($(common-objpfx)shlib.lds): Discard .gnu.glibc-stub.* sections.
2005-02-11 00:29:55 +00:00
Roland McGrath
9d0547ce8e * Makerules ($(common-objpfx)Versions.all): Grok new leading column in
soversions.i.
2005-02-10 21:24:36 +00:00
Ulrich Drepper
a334319f65 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Jakub Jelinek
0ecb606cb6 2.5-18.1 2007-07-12 18:26:36 +00:00
Ulrich Drepper
cbdb12dec1 Update.
2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>

	* Makeconfig (libunwind): New.
	(libgcc_eh): Add $(libunwind).
	(gnulib): Always set to -lgcc $(libgcc_eh).
	(static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
	(libc.so-gnulib): New.
	* Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
	$(static-gnulib).
	* configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
	uses -lunwind for static binaries.
2004-12-15 18:54:41 +00:00
Roland McGrath
220addf73a 2004-10-22 Roland McGrath <roland@frob.com>
* Makefile (%.bz2, %.gz): Move these pattern rules ...
	* Makerules: ... to here.
2004-10-23 20:10:40 +00:00
Roland McGrath
d2e75f652a * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
later sets from output.
	* Makerules (check-abi): Pass option to set that with value of
	LIB-abi-frozen variable if one is set.

	* abilist/libcidn.abilist: New file (empty).
2004-08-31 06:17:48 +00:00
Ulrich Drepper
2dd18ce2b2 Update.
* include/string.h (ffs): Add libc_hidden_builtin_proto.
	* sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
	* sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
	* sysdeps/alpha/ffs.S (ffs): Likewise.
	* sysdeps/s390/ffs.c (ffs): Likewise.
	* sysdeps/powerpc/ffs.c (ffs): Likewise.
	* sysdeps/i386/ffs.c (ffs): Likewise.
	* sysdeps/i386/i686/ffs.c (ffs): Likewise.
	* sysdeps/m68k/ffs.c (ffs): Likewise.
	* sysdeps/generic/ffs.c (ffs): Likewise.
	* sysdeps/m88k/ffs.c (ffs): Likewise.
	* sysdeps/am29k/ffs.c (ffs): Likewise.
	* sysdeps/i960/ffs.c (ffs): Likewise.
	* sysdeps/x86_64/ffs.c (ffs): Likewise.

	* Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
2004-07-05 17:36:34 +00:00
Roland McGrath
b960842876 2004-06-18 Roland McGrath <roland@frob.com>
* Makerules (compile-mkdep-flags): Add -MT $@.
	* Makefile (dist, tag-for-dist): New targets.
	(files-for-dist, tag-of-stem): New variables.
	(glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
	Make tar files using cvs export.
	(%.bz2, %.gz, tag-%): New pattern rules.
	(distribute): Variable removed.
	(+subdir_targets): Remove distinfo targets.
	(echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
	(rpm/%): Pattern rule removed.
	* rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
	* Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
	Targets removed.
	* Makerules (dist, subdir_distinfo): Targets removed.
	($(objpfx)distinfo): Depend on $(distribute).
	* Make-dist: File removed.
2004-06-20 01:42:52 +00:00
Ulrich Drepper
feca5e0be0 Update.
2004-03-30  H.J. Lu  <hongjiu.lu@intel.com>

	* Makeconfig (link-libc-static): Use $(static-gnulib) instead
	of $(gnulib).
	(libgcc_eh): New variable.
	(gnulib): Use it variable.
	(static-gnulib): New variable.
	* Makerules (LDLIBS-c.so): Use $(static-gnulib) instead of $(gnulib).
	* config.make.in (have-as-needed): New variable.
	* configure.in: Check if linker supports --as-needed.
2004-04-03 08:53:24 +00:00
Roland McGrath
db2f05ba83 * Makerules ($(common-objpfx)shlib.lds): Don't use \n in rhs of sed
substitutions; the semicolon terminators are enough for ld anyway.

	* elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
	dynamically sized auto array in function already using alloca.
	* locale/programs/ld-ctype.c (ctype_output): Likewise.
	* locale/programs/ld-time.c (time_output): Likewise.
	* elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
	IOV array size.
	* locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
	when also using dynamically-sized auto array.
	* locale/programs/locfile.c (locfile_read): Likewise.
	* locale/programs/repertoire.c (repertoire_read): Likewise.
	* nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
	* locale/programs/locarchive.c (enlarge_archive): Likewise.
	* posix/annexc.c (check_header): Likewise.

	* iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
	strlen ("") gets optimized away just as well.
	* intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
	* wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
2004-03-25 03:54:03 +00:00
Ulrich Drepper
b30542fb71 Update.
2004-03-08  Ulrich Drepper  <drepper@redhat.com>

	* Makerules: Use extra-modules.mk if modules-names is defined.
	* extra-modules.mk: New file.
	* dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
	* elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
	* csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
	compiler.
	* Makefile (distribute): Add symbol-hacks.h.
	* sysdeps/generic/symbol-hacks.h: New file.
	* sysdeps/wordsize-32/symbol-hacks.h: New file.
	* sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
	__moddi3, __udivdi3, and __umoddi3.
	* include/libc-symbols.h: Include <symbol-hacks.h>.
2004-03-08 21:31:23 +00:00
Ulrich Drepper
4df8c11d26 Update.
* configure.in: Recognize --enable-bind-now.
	* elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
	in ld.so.
	* Makerules (LDFLAGS-c.so): Add -z now if so configured.
	* elf/Makefile ($(objpfx)ld.so): Likewise.
	* config.make.in (bind-now): New definition.
2004-03-06 09:51:56 +00:00
Roland McGrath
1feda3ed29 2004-01-13 Segher Boessenkool <boessen@de.ibm.com>
* Makerules (gen-as-const): Don't silently continue on failure.
2004-01-15 01:54:31 +00:00
Ulrich Drepper
ed20b3d9cc Update.
2004-01-13  Ulrich Drepper  <drepper@redhat.com>

	* Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
	LDFLAGS.so and LDFLAGS-rtld.
	(+link): Add relro-LDFLAGS.
	* Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
	__libc_thread_subfreeres sections after .jcr section.
	* config.make.in: Add have-z-relro.
	* configure.in: Add check for -z relro option.
	* include/link.h (struct link_map): Add relro_addr and relro_size
	members.
	* elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
	* elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
	part of loaded segments read-only.
	* elf/elf.h: Define PT_GNU_RELRO.
	* elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
	(dl_main): Recognize PT_GNU_RELRO of the application.  Call
	_dl_debug_initialize and initialize l_info[DT_DEBUG] before
	relocations.
2004-01-13 08:36:54 +00:00
Roland McGrath
c1e781ae7c * Makerules (shlib.lds): Make sure that ld doesn't try to link
anything while generating the linker script.
2003-11-01 00:36:04 +00:00
Ulrich Drepper
8dab36a119 Update.
2003-09-12  Ulrich Drepper  <drepper@redhat.com>

	* grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
	CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
	CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
	* inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
	CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
	* io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
	Likewise.
	* misc/Makefile (CFLAGS-err.c): Likewise.
	* posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
	CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
	CFLAGS-glob64.c): Likewise.
	* pwd/Makefile (CFLAGS-getpw.c): Likewise.
	* shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
	CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
	* stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
	* sunrpc/Makefile (CFLAGS-openchild.c): Likewise.

	* stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.

	* libio/stdio.h: Remove __THROW from cuserid prototype.

	* locale/loadarchive.c: Use only non-cancelable interfaces.
	* resolv/herror.c (herror): Likewise.

	* malloc/hooks.c: Before using IO stream mark stream so it uses
	only non-cancelable interfaces.
	* malloc/malloc.c: Likewise.
	* posix/getopt.c: Likewise.


2003-09-11  Jakub Jelinek  <jakub@redhat.com>

	* Makerules (LDFLAGS-c.so): Remove -u __register_frame.

2003-09-12  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/stdio_ext.h: Mark most functions with __THROW.

	* misc/err.h: Remove __THROW from all prototypes.

	* posix/getopt.h (__THROW): Define if not already defined.  Add
	__THROW to the getopt functions.

2003-09-11  Ulrich Drepper  <drepper@redhat.com>

	* io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
	(CFLAGS-fts.c): Likewise.
	* io/fcntl.h: Remove __THROW from lockf prototypes.
	* io/fts.h: Remove most __THROW.
2003-09-12 22:37:19 +00:00
Ulrich Drepper
1a379ea0c7 Update.
2003-07-21  Ulrich Drepper  <drepper@redhat.com>

	* Makerules (build-module-helper): Add -z defs unless explicitly said
	not to do it.
	* dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
	which has undefined symbols.
	* elf/Makefile: Likewise.
2003-07-21 22:40:24 +00:00
Roland McGrath
f291538ffc 2003-06-12 Roland McGrath <roland@redhat.com>
* Makerules ($(objpfx)stubs): Rewrite sed magic.
2003-06-12 11:30:23 +00:00
Roland McGrath
7cd72ad380 2003-05-11 Andreas Schwab <schwab@suse.de>
* Makerules: Always use -MP together with -MD.
	(sed-remove-dotot): Substitute $(..) also at start of line.
	($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
	Generated defines with a single compiler call.
	Use $(sed-remove-dotdot).
	* mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
	of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
	* sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
	Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
	* sysdeps/unix/sysv/linux/mips/Makefile
	($(objpfx)syscall-%.h): Likewise.
2003-05-28 21:05:12 +00:00
Roland McGrath
7f3a54bdf9 2003-05-05 Roland McGrath <roland@redhat.com>
* Makerules (common-before-compile): New variable.
	($(common-objpfx)%.make): Depend on that instead of $(before-compile).
	($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
	to after all setting of before-compile.
2003-05-05 19:13:59 +00:00
Roland McGrath
b710b53daf 2003-05-04 Roland McGrath <roland@redhat.com>
* Makerules (+make-deps): Fix target matching.
	Use $(sed-remove-dotdot).
2003-05-04 23:05:44 +00:00
Roland McGrath
d8f6e441e1 2003-05-02 Roland McGrath <roland@redhat.com>
* Makerules (do-stamp): Do $(make-target-directory).
2003-05-02 07:19:19 +00:00
Roland McGrath
d73f5331ce 2003-05-01 Roland McGrath <roland@redhat.com>
* Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
	(compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
	(compile-command.s, compile-command.c): Likewise.
	($(objpfx)%.d): All such pattern rules removed.
	($(+sysdir_pfx)sysd-rules): Don't generate them.
	($(common-objpfx)dummy.d): Target removed.
	(make-dummy-dep): Variable removed.
	(generate-md5): Likewise.
	(%.d: %.dt): New pattern rule.
	(+depfiles): Use $(wildcard) function to get just existing *.d files
	and .d files for existing *.dt files.
	(common-clean): Remove all *.d and *.dt files.
	(before-compile): Add $(objpfx). when it doesn't exist,
	regardless of $(no_deps).
	* elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
	(rtld-depfiles): Use .os.d instead of .d names.
	Include existing *.d files and .d files for existing *.dt files.
	* Makerules ($(common-objpfx)%.make): Protect with [! subdir].
	Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
2003-05-02 02:20:45 +00:00
Roland McGrath
20792f9946 * configure.in: Search for AUTOCONF unconditionally.
Just don't complain about missing it under --without-cvs.
	* configure: Regenerated.

	* include/libc-symbols.h (__symbol_set_attribute): New macro,
	give hidden for [SHARED] and weak for [! SHARED].
	(symbol_set_declare): Use that.  Never need weak_extern these days.
	* Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
	Depend on $(..)Makerules.
2003-04-30 04:18:12 +00:00
Ulrich Drepper
a7ed068ebc Update.
2003-04-27  Ulrich Drepper  <drepper@redhat.com>

	* Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
	define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
2003-04-27 08:18:54 +00:00
Roland McGrath
5ae340e35b (LDSEDCMD-c.so): Variable removed. 2003-04-26 23:41:17 +00:00
Roland McGrath
358cad7c11 * Makerules ($(common-objpfx)shlib.lds): New target.
(common-generated): Add it.
	(build-shlib, build-module): Use that instead of generating every time.
	($(common-objpfx)libc.so): Depend on it.
	(lib%.so rule): Likewise.
	(build-module-helper-objlist): Remove %.lds.
	* iconvdata/extra-module.mk ($(objpfx)$(mod).so):
	Depend on $(common-objpfx)shlib.lds.
	* dlfcn/Makefile ($(test-modules)): Likewise.
2003-04-26 23:38:49 +00:00
Roland McGrath
fd54683c97 * Makerules (check-abi) [$(enable-check-abi) = warn]:
Ignore exit status from diff.
	* configure.in (enable_check_abi): Document possible value "warn".
	Change default to no for now.
	* configure: Regenerated.

	* sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
	macro calls and a #include <stub-tag.h> at the end.
	* Makerules ($(objpfx)stubs): Tweak sed commands.

	* sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
	caller column for *xattr syscalls, since they are in sysdeps/generic.

	* sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
	* sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid

2003-03-26  Roland McGrath  <roland@redhat.com>

	* Makerules (check-abi-config): Use /thread instead of /tls when
	use-thread and not just use-tls is set.

	* Makerules (update-abi): Put quotes around $(update-abi-config).

	* elf/Makefile (check-abi): Depend on check-abi-ld.
	(update-abi): Depend on update-abi-ld.
2003-03-27 09:48:09 +00:00
Roland McGrath
7dbde9db6b 2003-03-25 Roland McGrath <roland@redhat.com>
* config.make.in (enable-check-abi): New variable from configure.
	* configure.in (enable_check_abi): New substituted variable,
	controlled by --{enable,disable}-check-abi (default yes).
	* configure: Regenerated.
	* Makerules [$(enable-check-abi) = yes] (tests): Put this condition
	on check-abi dependency.
2003-03-26 01:15:07 +00:00
Roland McGrath
9465949559 * abilist: New directory of libfoo.abilist files maintained using
scripts/merge-abilist.awk and "make update-abi" rules.
	* Makefile (distribute): Add abilist/*.abilist.
	* Makerules [$(build-shared) = yes] [$(subdir)] (tests):
	Depend on check-abi.
2003-03-19 08:27:55 +00:00
Roland McGrath
073e82bfae 2003-03-10 Roland McGrath <roland@redhat.com>
* configure.in: New check for -g on .S files.
	* configure: Regenerated.
	* config.make.in (have-cpp-asm-debuginfo): New variable.
	* config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
	* Makeconfig (ASFLAGS): New variable, if undefined and
	$(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
	* Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
2003-03-10 09:10:43 +00:00
Roland McGrath
7a0c303ef9 * Makerules: Fix last change to use $($(subdir)-version) when set. 2003-02-22 21:47:19 +00:00
Roland McGrath
cc8bfce987 * Makerules (install-lib-nosubdir): Depend on installed
libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
	regardless of the libfoo.so target's dependencies.
2003-02-22 20:32:58 +00:00
Roland McGrath
2afbfec453 2003-02-21 Roland McGrath <roland@redhat.com>
* Makerules: Filter $(install-lib-ldscripts) out of list of targets
	for libfoo.so that need $(make-link) rules.
2003-02-21 09:30:54 +00:00
Roland McGrath
643931fb35 2003-02-20 Roland McGrath <roland@redhat.com>
* Makerules: Clean up conditional around include of tls.make.
	* Make-dist: Export generating=t to prevent using that.
	(+distinfo): Likewise for $(shell $(MAKE) ...) runs.
2003-02-21 03:02:16 +00:00
Roland McGrath
c06b8d60f4 2003-02-15 Roland McGrath <roland@frob.com>
* sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
	use target mach-before-compile instead of generated.
	(mach-before-compile): New target.
	* Makerules: Disable use of tls.make if $(generating) is set.
	* mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
	* sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
	mach-shortcuts.h so mach/ generation happens before hurd/.
2003-02-15 22:59:19 +00:00
Roland McGrath
0e56981e16 2003-01-15 Roland McGrath <roland@redhat.com>
* Makerules: Use -include for tls.make, suppresses warning.
	Move gen-as-const-headers rules up so before-compile is set in time.
	(sed-remove-dotdot): Fix to work right for subdirs or top dir.
2003-01-15 20:24:04 +00:00
Roland McGrath
9ae1033217 * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
$(objpfx) directories, and get rid of vpath directives.  The previous
	arrangement resulted in files being written to the source directories
	when run in a clean build.  Find all .abilist files in $(..)abilist/.
	(update-abi-%): Likewise.
	(generated): Don't add .symlist files, they'll be intermediates.

	* sysdeps/generic/init-first.c: Add a comment.

	* elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.

	* scripts/gen-as-const.awk: Grok lone "--" as a separator between
	#includes and expressions.

	* scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
	config list when it already contains cpu-.*-os.* without / part.

	* Makerules (sed-remove-dotdot): New variable.
	($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
	($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
	(check-abi-config): New variable, append /tls or /notls to the tuple.
	(check-abi-%): Use that for -v config value.
	Find .abilist files in abilist/libfoo.abilist, not in subdir.
	* Rules: Move bits/stdio_lim.h generation rules to Makerules.
2003-01-15 08:08:20 +00:00
Ulrich Drepper
73398a44bb Update.
* Makerules (build-shlib-helper): Don't use -z defs linker option
	if no-z-defs is defined either.

2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
	file.

2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.

2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2003-01-12 23:13:14 +00:00
Ulrich Drepper
aff4519d38 Update.
2003-01-11  Jim Meyering  <jim@meyering.net>

	* io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
	[HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
	Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
	[!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
	[!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
	[!_LIBC] (internal_function, dirent64, MAX): Define.
	(__set_errno): Define if not already defined.
	(open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
	the basename, not the entire file name.
	(process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
	the basename, not the entire file name.

2003-01-12  Ulrich Drepper  <drepper@redhat.com>

	* string/tester.c (test_strcpy): Disable last added strcpy until
	it is fixed.

2003-01-11  Philip Blundell  <philb@gnu.org>

	* sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.

2003-01-11  Andreas Schwab  <schwab@suse.de>

	* Makerules: Add vpath for %.dynsym and %.so so that the
	implicit rule chaining for check-abi works.

2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
	Add non-PIC case.

2003-01-11  Jakub Jelinek  <jakub@redhat.com>

	* elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
	[__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
	gp is used early.
	[__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
	* elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
	Ensure libc.so in DT_NEEDED.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
	CHECK_STATIC_TLS before l_tls_offset use.
	* sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
	Likewise.
	* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
	Allocate TLS_PRE_TCB_SIZE bytes below result.
	(_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): If
	TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
	segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
	bytes below result and add tcb_offset to memsz.
	* sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
	* sysdeps/ia64/dl-machine.h: Include tls.h.
	(elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
	too.
	(elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
	Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
	* sysdeps/ia64/libc-tls.c: New file.

2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>

	* sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
	* sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
	Fix type.  Move definition out of #if.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
	support.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
	ftruncate64, pread64, pwrite64, truncate64 entries.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
	(INLINE_SYSCALL): New version that supports function call like
	syscalls.  Add __builtin_expect.
	(LOADARGS_n): Add argument size safety checks.
	(INTERNAL_SYSCALL): New Macro.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
	redefinition of elf_fpreg_t and elf_fpregset_t.

2003-01-12  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Add several asserts.  Correct and
	simplify test for unloading.  If loader of a DSO is unloaded do not
	use its scope anymore.  Fall back to own scope and adjust opencounts.
	Fix several comments.
	* elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
	the l_searchlist, not only for l_initfini.

	* elf/dl-lookup.c (add_dependencies): Avoid creating relocation
	dependencies if objects cannot be removed.  Remove object with the
	definition as not unloadable if necessary.

	* elf/reldep6.c: Create relocation dependency before closing the first
	module.

2003-01-10  Guido Gnther  <agx@sigxcpu.org>
	* elf/Makefile: Add rules to build and run reldep9 test.
	* elf/reldep9.c: New file.
	* elf/reldep9mod1.c: New file.
	* elf/reldep9mod2.c: New file.
	* elf/reldep9mod3.c: New file.

2003-01-09  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile: Add rules to build and run nodelete2 test.
	* elf/nodelete2.c: New file.
	* elf/nodel2mod1.c: New file.
	* elf/nodel2mod2.c: New file.
	* elf/nodel2mod3.c: New file.

2003-01-09  Jakub Jelinek  <jakub@redhat.com>
2003-01-12 10:11:16 +00:00
Ulrich Drepper
a7f7b879fb Update.
2003-01-04  Jakub Jelinek  <jakub@redhat.com>

	* internals.h (LIBC_THREAD_GETMEM, LIBC_THREAD_SETMEM): Define
	even if NOT_IN_libc is defined.
2003-01-05 10:21:08 +00:00
Roland McGrath
f4281cc49b 2002-12-31 Roland McGrath <roland@redhat.com>
* Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
	Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
	(S-CPPFLAGS): Add -DASSEMBLER here instead.
	(generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
2002-12-31 21:14:21 +00:00
Roland McGrath
c7371e6e47 * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
pattern for prepending $(..) so it doesn't affect $(foo).
2002-12-29 21:01:00 +00:00
Roland McGrath
bd847b5ab2 second typo in prior commit 2002-12-27 23:13:05 +00:00
Roland McGrath
aad08dbad9 2002-12-27 Roland McGrath <roland@redhat.com>
* scripts/gen-as-const.awk: New file.
	* Makefile (distribute): Add it.
	* Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
	(before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
	to the list.
	(+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
2002-12-27 23:05:53 +00:00
Roland McGrath
1c68c264bb Remove bogus CRs at end of all lines. Hope they do not come back. 2002-12-27 20:13:29 +00:00
Roland McGrath
fbe1491afa 2002-12-27 Andreas Schwab <schwab@suse.de>
* Makerules ($(common-objpfx)%.make): Filter through
	$(sed-remove-objpfx).
2002-12-27 00:35:00 +00:00
Roland McGrath
c823a4d21b * scripts/abilist.awk: Produce a more compact format, divided into
stanzas for each version set, the set name listed only once.
	* scripts/extract-abilist.awk: New file.
	* scripts/merge-abilist.awk: New file.
	* Makerules (check-abi-%, update-abi-%): New pattern rules.
	(update-abi, check-abi): New targets.
	* Makefile (+subdir_targets): Add subdir_{check,update}-abi.

	* Makerules (%.symlist): Use LC_ALL=C when running awk script.
2002-12-23 11:17:18 +00:00
Ulrich Drepper
9634cf9d4f Update.
2002-12-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
	macros instead of doing the calls directly.
	* sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
	targets.

2002-12-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
	* sysdeps/ieee754/bits/nan.h: Likewise.

	* sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
	__syscall_wait4, __syscall_ioctl, __syscall_write): Add.
2002-12-16 20:52:36 +00:00
Roland McGrath
cc1b826866 2002-12-07 Roland McGrath <roland@redhat.com>
* Makerules ($(common-objpfx)format.lds): New target.
	(common-generated): Add it.
	($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
	* scripts/output-format.sed: New file.
	* Makefile (distribute): Add it.
2002-12-07 21:55:12 +00:00
Roland McGrath
92712dee68 * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
* sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.

2002-11-15  Roland McGrath  <roland@redhat.com>

	* math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
	from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
	(+make-include-of-dep): New canned sequence.

	* stdlib/canonicalize.c (__realpath): Check for malloc failure.
	From Dmitry V. Levin <ldv@altlinux.org>.
2002-11-15 22:51:30 +00:00
Roland McGrath
53da80ab88 * sysdeps/generic/errno.c (__libc_errno): Remove alias.
* inet/herrno.c (__libc_h_errno): Likewise.
	* resolv/res_libc.c (__libc_res): Likewise.
	[USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
	(__res_state) [! USE___THREAD]: Don't define as weak.
	* csu/Versions: Revert last change.
	* resolv/Versions: Revert last change.

	* Makerules ($(common-objpfx)%.make): New pattern rule.
	* tls.make.c: New file.
	* Makefile (distribute): Add it.
2002-11-15 03:37:24 +00:00
Roland McGrath
6c0b2972dc * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
(%.symlist): Likewise.
2002-11-14 20:26:56 +00:00
Roland McGrath
a5da623834 2002-11-14 Roland McGrath <roland@redhat.com>
* Makerules (%.dynsym): Remove $(objpfx) from target and dep.
2002-11-14 20:25:45 +00:00
Roland McGrath
c9e032d55f [$(subdir) = elf] (tests): Depend on libc.symlist.
(generated, common-generated): Add those files.
2002-11-14 04:19:34 +00:00
Roland McGrath
6e3d59bc05 * scripts/abilist.awk: New file.
* Makefile (distribute): Add it.
	* Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
	(tests): Depend on .symlist file for each $(install-lib.so-versioned).
	[! subdir] (tests): Depend on libc.symlist.
	(generated): Add those files.
	* aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
	* configure: Regenerated.
	* config.make.in (OBJDUMP): New variable, substituted by configure.

	* malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
	(mallochook, reallochook): Set them up.
	(checkhdr): Check HDR->magic2 value.
	(freehook): Reset HDR->magic2.
	(memalignhook): New static function.
	(old_memalign_hook): New static variable.
	(mcheck, reallochook): Set __memalign_hook to memalignhook.
2002-11-14 03:59:56 +00:00
Roland McGrath
adee0e1f17 * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
the beginning of generated target commands.

	* csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
	dependencies for these in case implicit rule search skipped the
	nonexistent source directory.
	* sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
	files with $(object-suffixes) as targets too.
	* Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
	and a target for it using $(make-target-directory).

	* Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.

	* sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
	* sysdeps/generic/bits/pthreadtypes.h: ... here.
2002-11-11 02:34:36 +00:00
Roland McGrath
c877418f2e * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
New macros.
	* elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
	text_set_element.
	* elf/dl-libc.c (free_mem): Likewise.
	* iconv/gconv_conf.c (free_mem): Likewise.
	* iconv/gconv_db.c (free_mem): Likewise.
	* iconv/gconv_dl.c (free_mem): Likewise.
	* iconv/gconv_cache.c (free_mem): Likewise.
	* intl/finddomain.c (free_mem): Likewise.
	* intl/dcigettext.c (free_mem): Likewise.
	* locale/setlocale.c (free_mem): Likewise.
	* misc/fstab.c (fstab_free): Likewise.
	* nss/nsswitch.c (free_mem): Likewise.
	* posix/regcomp.c (free_mem): Likewise.
	* resolv/gai_misc.c (free_res): Likewise.
	* stdlib/fmtmsg.c (free_mem): Likewise.
	* sunrpc/clnt_perr.c (free_mem): Likewise.
	* sysdeps/generic/setenv.c (free_mem): Likewise.
	* sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
	* sysdeps/pthread/aio_misc.c (free_res): Likewise.
	* time/tzset.c (free_mem): Likewise.
	* malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
	* locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
	* malloc/set-freeres.c (__libc_freeres): Likewise.

	* login/getutent.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutent): Allocate buffer the first time it is run.
	* login/getutid.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutid): Allocate buffer the first time it is run.
	* login/getutline.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutline): Allocate buffer the first time it is run.
	* malloc/mtrace.c (malloc_trace_buffer): Change into char *.
	(mtrace): Allocate malloc_trace_buffer.
	* resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
	* resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
	* string/strerror.c: Include libintl.h and errno.h.
	(buf): New variable.
	(strerror): Only allocate buffer if actually needed (unknown error).
	* time/tzfile.c (transitions): Add libc_freeres_ptr.
	(freeres): Remove.

2002-10-25  Jakub Jelinek  <jakub@redhat.com>

	* include/libc-symbols.h (libc_freeres_ptr): New macro.
	* malloc/set-freeres.c (__libc_freeres_ptrs): Define using
	symbol_set_define.
	(__libc_freeres): Free all pointers in that section.
	* Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
	commands when creating .lds script.
	(LDSEDCMD-c.so): New variable.
	* inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rcmd_af): Use strdup to allocate ahostbuf.
	* inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rexec_af): Use strdup to allocate ahostbuf.
	* stdio-common/reg-printf.c (printf_funcs): Remove.
	(__printf_arginfo_table): Change into printf_arginfo_function **.
	Add libc_freeres_ptr.
	(__register_printf_function): Allocate __printf_arginfo_table
	and __printf_function_table the first time it is called.
	* stdio-common/printf-parse.h (__printf_arginfo_table): Change into
	printf_arginfo_function **.
	(parse_one_spec): Add __builtin_expect.
	* grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
	(string_space, map): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
	(buffer): Add libc_freeres_ptr.
	(free_mem): Remove for _LIBC.
	* nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* nss/getXXent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
	(free_mem): Remove.
	* shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
	libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
	libc_freeres_ptr.
	(free_mem): Remove.

2002-10-30  Jakub Jelinek  <jakub@redhat.com>

	* malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
	instead of duplicating the whole function in libc.
2002-11-01 20:44:15 +00:00
Roland McGrath
0a951d0e31 * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
instead of += to append, to be sure $(lib) gets expanded at defn time.
	(libof-$(cpp-src)): New variable, define this instead.
	* extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
	(lib): Don't use override.
	(CPPFLAGS-$(lib)): New variable, put -D's here.
	* Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
	Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
	LIB found by $(libof-*) for basename, target, or source.
	* Makerules (CPPFLAGS-nonlib): New variable.
	* nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
	* locale/Makefile (lib): Likewise.
	* sunrpc/Makefile (lib): Likewise.

	* sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
	* sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
	* sysdeps/unix/sysv/linux/pathconf.h: New file.
	(statfs_link_max): New function, guts from fpathconf.c.
	* sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
	* sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
	* sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
	to use the linux/pathconf.c code by #include rather than duplication.
	* sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.

2002-10-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
	Use __libc_errno only for libc itself.
2002-10-16 22:09:55 +00:00
Roland McGrath
28654d2a06 2002-10-05 Roland McGrath <roland@redhat.com>
* Makeconfig (CFLAGS): Prepend -std=gnu99.
	* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
	Remove superfluous rm command, whose @ plus make bugs hid
	all these commands from the make output.
2002-09-30  Roland McGrath  <roland@redhat.com>

	* elf/rtld-Rules: New file.
	* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
	$(objpfx)rtld-libc.a): New targets.
	(generated): Add them.
	(reloc-link): Remove -o $@ from the variable.
	($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
	(distribute): Add rtld-Rules.
	(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
	(common-mostlyclean, common-clean): Clean up rtld-* files.
	* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
2002-10-11 10:50:51 +00:00
Roland McGrath
724d8c3f0e * elf/Makefile (test-extras): Define this instead of test-srcs.
* Makerules (all-nonlib): Include $(test-extras) too.
2002-09-23 17:43:42 +00:00
Roland McGrath
0f283ffc5e * sysdeps/generic/libc-tls.c (__pthread_initialize_minimal): Pass
TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN instead of 0, 1.

	* include/getopt.h: Include <features.h> before <posix/getopt.h>.

	* locale/findlocale.c (_nl_remove_locale): Don't search in
	_nl_locale_file_list if DATA->alloc is ld_archive.
	Use _nl_unload_locale to do the rest of the work.

	* locale/loadarchive.c (_nl_load_locale_from_archive): Set usage_count
	of new structure to UNDELETABLE.

	* wctype/wctype.h (iswalnum, iswalpha, iswcntrl, iswdigit, iswlower,
	iswgraph, iswprint, iswpunct, iswspace, iswupper, iswxdigit, iswblank,
	towlower, towupper): Macros removed.
	* ctype/ctype.h (__tobody): Put parens around macro argument.
	(__isctype): Macro removed.
	(__ctype_b, __ctype_tolower, __ctype_toupper): Decls removed.
	(isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
	ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
	tolower, toupper): Macros and inlines removed.
	* include/ctype.h [! NOT_IN_libc]
	(isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
	ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
	tolower, toupper): Define here instead, using _NL_CURRENT.
	* ctype/ctype.c (__ctype_tolower, __ctype_toupper): Define as macros
	using _NL_CURRENT.
	* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Likewise.
	* ctype/ctype-info.c (__ctype_b, __ctype_tolower, __ctype_toupper):
	Renamed these to __ctype_old_*. Define old names only for SHLIB_COMPAT.
	(__ctype32_b, __ctype32_tolower, __ctype32_toupper): Likewise.
	(__ctype32_wctrans, __ctype32_wctrans, __ctype32_width): Removed.
	* locale/lc-ctype.c (_nl_postload_ctype): Use renamed variables,
	conditional on SHLIB_COMPAT.  Don't set removed variables at all.
	* wctype/wcfuncs.c: Use _NL_CURRENT instead of those globals.
	* wcsmbs/wcwidth.h (internal_wcwidth): Likewise.
	* resolv/res_init.c [RESOLVSORT] (sort_mask): Renamed sort_mask_chars.
	(ISSORTMASK): Update use.
	* intl/localealias.c [__GNUC__]: #undef alloca before #define.
	* nss/nss_files/files-XXX.c (last_use): Rename `none' to `nouse'.
	(_nss_files_getENTNAME_r): Likewise.
	* nss/nss_files/files-alias.c (last_use, _nss_files_getaliasent_r):
	Likewise.

	* Makerules (all-nonlib): Renamed from all-tests.
	Include $(others) here too.
	* locale/Makefile (CPPFLAGS-locale, CPPFLAGS-localedef,
	CPPFLAGS-ld-ctype, CPPFLAGS-ld-time, CPPFLAGS-ld-numeric,
	CPPFLAGS-ld-monetary, CPPFLAGS-ld-collate, CPPFLAGS-ld-identification,
	CPPFLAGS-charmap, CPPFLAGS-locarchive, CPPFLAGS-linereader,
	CPPFLAGS-charmap-dir): Variables removed.  Instead, catch all
	the program modules via cppflags-iterator.mk.
	* sunrpc/Makefile (CPPFLAGS-rpc_main): Variable removed.
	Instead, catch all rpcgen-objs via cppflags-iterator.mk.

	* posix/tst-getconf.sh: If no third arg, work with static linking.
2002-09-01 12:39:40 +00:00
Roland McGrath
a816b435dd * Makerules (cpp-srcs-left): When setting this to run
cppflags-iterator.mk, must append .c to $(tests) and $(xtests)
	words.  Combine the two loops into one on the concatenated list,
	including those as well as $(test-srcs).

	* elf/dl-minimal.c (__libc_memalign): Guts of malloc moved here,
	since we align here with optimally minimal waste anyway.
	(malloc): Just call that.

	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Set l_tls_offset to
	the right variable.

	* elf/dl-load.c (_dl_map_object_from_fd): Use p_vaddr, not p_offset,
	to compute memory location for l_tls_initimage.
	* elf/rtld.c (_dl_start): Likewise.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.

	* libio/oldiopopen.c: Move #include's before #if SHLIB_COMPAT,
	because the .d file is generated in the non-shared case and
	so fails to catch them otherwise.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): New function,
	split out of _dl_allocate_tls.
	(_dl_allocate_tls_init): Likewise.
	(_dl_allocate_tls): Call those.
	* sysdeps/generic/ldsodefs.h: Declare them with attribute_hidden.
	* elf/rtld.c (dl_main): Call them separately instead of calling
	_dl_allocate_tls.  Delay _dl_allocate_tls_init until after relocation
	is finished, so that the initializer data has been relocated before we
	copy it into the main thread's TLS block.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Fix off-by-one error in
	loop conditions, prevented the last used module from being initialized.
2002-08-05 01:21:25 +00:00
Ulrich Drepper
c238ecf709 Update.
2002-04-20  Ulrich Drepper  <drepper@redhat.com>

	* Makefile: Add handling of xtests and xcheck targets.
	* MakeTAGS: Likewise.
	* Makeconfig: Likewise.
	* Makerules: Likewise.
	* Rules: Likewise.
	* sunrpc/Makefile (xtests): Add thrsvc if thread library available.
	* sunrpc/thrsvc.c: New file.  By Zack Weinberg.
2002-04-20 20:36:26 +00:00
Ulrich Drepper
6b87a5642c Update.
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown.
	* sysdeps/unix/sysv/aix/chown.c: Likewise.
	* sysdeps/unix/grantpt.c: Use INTUSE for __chown calls.
	* sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define
	__chown_internal.
	* sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise.

	* intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext.
	* intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE.
	* intl/ngettext.c: Likewise.

	* include/sys/socket.h: Declare __connect_internal and define
	__connect macro if not NOT_IN_libc.
	* sysdeps/mach/hurd/connect.c: Use INTDEF for __connect.
	* sysdeps/unix/sysv/aix/connect.c: Likewise.
	* sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias.

	* include/unistd.h: Declare __close_internal and define __close macro
	if not NOT_IN_libc.
	* libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2,
	WJUMP3): Add extra parenthesis to avoid expanding element names with
	macors like __close.
	* sysdeps/unix/syscalls.list: Add __close_internal alias.

	* include/unistd.h: Declare __dup2_internal and define __dup2 macro
	if not NOT_IN_libc.
	* sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2.
	* sysdeps/posix/dup2.c: Use INTDEF for __dup2.
	* sysdeps/unix/syscalls.list: Add __dup2_internal alias.

	* include/unistd.h: Declare __fork_internal and define __fork macro
	if not NOT_IN_libc.
	* sysdeps/mach/hurd/fork.c: Use INTDEF for __fork.
	* sysdeps/unix/sysv/aix/fork.c: Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias.

	* include/stdio_ext.h: Declare __fsetlocking_internal and define
	__fsetlocking macro to use it if not NOT_IN_libc.
	* libio/__fsetlocking.c: Use INTDEF for __fsetlocking.

	* libio/__fbufsize.c: Correct copyright.
	* libio/__flbf.c: Likewise.
	* libio/__fpending.c: Likewise.
	* libio/__fpurge.c: Likewise.
	* libio/__freadable.c: Likewise.
	* libio/__freading.c: Likewise.
	* libio/__fsetlocking.c: Likewise.
	* libio/__fwritable.c: Likewise.
	* libio/__fwriting.c: Likewise.

	* include/stdio.h: Declare __asprintf_internal and define __asprintf
	macro to use it if not NOT_IN_libc.
	* stdio-common/asprintf.c: Use INTDEF for __asprintf.

	* include/mntent.h: Declare __setmntent_internal,
	__getmntent_r_internal, __endmntent_internal.  Define __setmntent,
	__getmntent_r, and __endmntent macros to use these functions if not
	NOT_IN_libc.
	* misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and
	__endmntent.

	* include/math.h: Declare __finite_internal, __finitef_internal, and
	__finitel_internal.  Redefine isfinite macro if in libc or libm using
	these functions.
	* sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls.
	* sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls.
	* sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls.
	* sysdeps/i386/fpu/s_finite.S: Define _internal alias.
	* sysdeps/i386/fpu/s_finitef.S: Likewise.
	* sysdeps/i386/fpu/s_finitel.S: Likewise.
	* sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
	* sysdeps/ieee754/flt-32/s_finitef.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.

	* include/fcntl.h: Declare __fcntl_internal.  Define __fcntl macro
	to use this function if not NOT_IN_libc.
	* libio/iofdopen.c (_IO_fcntl): Use INTUSE.
	* sysdeps/generic/fcntl.c: Use INTDEF for __fcntl.
	* sysdeps/mach/hurd/fcntl.c: Likewise.
	* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.

	* include/argz.h: Declare __argz_count_internal and
	__argz_stringify_internal.
	* intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and
	__argz_stringify.
	* string/argz-count.c: Use INTDEF for __argz_count.
	* string/argz-stringify.c: Use INTDEF for __argz_stringify.

	* include/stdlib.h: Declare __cxa_atexit_internal and define
	__cxa_atexit macro if not NOT_IN_libc.
	* stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit.
	* dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c.

	* assert/assert.c: Use INTDEF for __assert_fail.
	* assert/__assert.c: Use INTUSE for call to __assert_fail.
	* include/assert.h: Declare __assert_fail_internal.
2002-04-09 20:36:24 +00:00
Ulrich Drepper
776cc5d31c Update.
2002-04-08  Ulrich Drepper  <drepper@redhat.com>

	* Makerules: Use cppflags-iterator.mk to add defines for all test
	source files.
2002-04-08 21:43:57 +00:00
Roland McGrath
212baf8d3a revert accidental check-in 2002-03-14 23:35:43 +00:00
Roland McGrath
951641e7a3 2002-03-14 Roland McGrath <roland@frob.com>
* Makerules ($(common-objpfx)Versions.v.i): Depend on abi-versions.h.
	* Makeconfig (%.v.i, %.v): New implicit rules.
	(preprocess-versions): Variable removed.
	($(common-objpfx)shlib-versions.v.i): New target giving just the
	shlib-versions input files as dependencies.
	($(common-objpfx)soversions.i): Depend on that instead of the input
	files.  Use it as input instead of using a pipeline.
	(postclean-generated): Append soversions.i, shlib-versions.v, and
	shlib-versions.v.i here.
	* Makerules ($(common-objpfx)Versions.def.v.i): New target giving just
	the Versions.def input files as dependencies.
	($(common-objpfx)Versions.v.i): Likewise for Versions files.
	($(common-objpfx)Versions.all): Depend on that instead of the input
	files.  Use it as input instead of using a pipeline.
	($(common-objpfx)sysd-versions): Likewise with Versions.v.i.
	(postclean-generated): Append those .v and .v.i files here.
2002-03-14 23:32:50 +00:00
Ulrich Drepper
74bd2300b5 Update.
2001-10-02  Jakub Jelinek  <jakub@redhat.com>
	    H.J. Lu  <hjl@gnu.org>

	* configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
	if gcc supports this flag.
	(EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
	(gcc3): Allow glibc to be compiled with gcc 3.x.
	* config.h.in (EXPORT_UNWIND_FIND_FDE): Add.
	* config.make.in (static-libgcc, unwind-find-fde): Add.
	* Makerules (build-shlib-helper, build-module-helper): Use it.
	* scripts/versions.awk: Make sure GLIBC_ versions come first.
	* elf/soinit.c (__libc_global_ctors): Set tbases and dbases if
	necessary.
	(_fini): Call __deregister_frame_info_bases if
	__register_frame_info_bases was used to register.
	* elf/Versions (__register_frame_info, __deregister_frame_info): Add
	for GLIBC_2.0.
	(__register_frame_info_bases, __register_frame_info_table_bases,
	__deregister_frame_info_bases, _Unwind_Find_FDE): Add for GLIBC_2.2.5.
	* elf/Makefile (routines): Add unwind-dw2-fde.
	(shared-only-routines): Add unwind-dw2-fde.
	* sysdeps/alpha/gccframe.h: New file.
	* sysdeps/arm/gccframe.h: New file.
	* sysdeps/generic/framestate.c: New file.
	* sysdeps/generic/dwarf2.h: New file.
	* sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0.
	* sysdeps/generic/unwind-dw2-fde.c: New file.
	* sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file.
	* sysdeps/generic/unwind-dw2-fde.h: New file.
	* sysdeps/generic/unwind-dw2.c: New file.
	* sysdeps/generic/unwind-pe.h: New file.
	* sysdeps/generic/unwind.h: New file.
	* sysdeps/hppa/gccframe.h: New file.
	* sysdeps/i386/gccframe.h: New file.
	* sysdeps/m68k/gccframe.h: New file.
	* sysdeps/mips/gccframe.h: New file.
	* sysdeps/powerpc/gccframe.h: New file.
	* sysdeps/s390/gccframe.h: New file.
	* sysdeps/sh/gccframe.h: New file.
	* sysdeps/sparc/gccframe.h: New file.
	* sysdeps/vax/gccframe.h: New file.
	* sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
	Set on all architectures except ia64.
	* sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set
	for i386.
	* sysdeps/mach/hurd/i386/Versions (__register_frame_info,
	__deregister_frame_info): Move to elf/Versions.
	* sysdeps/unix/sysv/linux/m68k/Versions: Likewise.
	* sysdeps/unix/sysv/linux/arm/Versions: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
	* sysdeps/unix/sysv/linux/i386/Versions: Likewise.
	* sysdeps/unix/sysv/linux/mips/Versions: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
	* sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate.
	* sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.

	* sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New file.
	* sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file.
	* sysdeps/generic/strnlen.c: New file.
2001-11-16 01:27:24 +00:00
Ulrich Drepper
6c3ebebd1e Update.
2001-08-29  Ulrich Drepper  <drepper@redhat.com>

	* nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received
	first is from a previous call.
	Patch by Alexander Belopolsky <alexb@rentec.com> for [PR libc/3670].

2001-08-29  Andreas Schwab  <schwab@suse.de>

	* sysdeps/ia64/fpu/libm-test-ulps: Updated.

2001-08-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config.make.in (INSTALL_SCRIPT): Define.
	* Makeconfig (INSTALL_SCRIPT): Define.
	* Makerules (do-install-script): New macro to install scripts using
	INSTALL_SCRIPT.
	(install-bin-script): New rule to install scripts with
	do-install-script.
	(install-bin-script-nosubdir): New rule.
	(install-no-libc.a-nosubdir): Add install-bin-script-nosubdir.
	(distinfo-vars): Add $(install-bin-script).
	* Rules (others): Likewise.
	* Makefile (glibcbug): Install with install-bin-script.
	* debug/Makefile (xtrace): Likewise.
	(catchsegv): Likewise.
	* elf/Makefile (ldd): Likewise.
	* malloc/Makefile (mtrace): Likewise.
	* timezone/Makefile (tzselect): Likewise.

2001-08-29  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass
	ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
	_dl_lookup_versioned_symbol () and _dl_lookup_symbol ().

	Add it to LDFLAGS.so, LDFLAGS-rtld, and +link.
2001-08-29 23:31:38 +00:00
Andreas Jaeger
0ca2a5698b Fix typo.
2001-08-28  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* Makerules: Fix a typo: MD% -> MD5.
2001-08-29 07:23:19 +00:00
Ulrich Drepper
994431ed53 Update.
* Makerules [AIX] (build-shlib-helper): Precede linker options
	with -Wl.

	* Makeconfig (config-LDFLAGS): Add ld.so only for ELF.
2001-07-08 15:07:16 +00:00
Andreas Jaeger
41bdb6e20c Update to LGPL v2.1.
2001-07-06  Paul Eggert  <eggert@twinsun.com>

	* manual/argp.texi: Remove ignored LGPL copyright notice; it's
	not appropriate for documentation anyway.
	* manual/libc-texinfo.sh: "Library General Public License" ->
	"Lesser General Public License".

2001-07-06  Andreas Jaeger  <aj@suse.de>

	* All files under GPL/LGPL version 2: Place under LGPL version
	2.1.
2001-07-06 04:58:11 +00:00
Ulrich Drepper
ad10cac8a4 Update.
2001-05-09  Michael Keezer  <mkeezer@redhat.com>

	* Makeconfig: Added AIX-ld support for DSO.
	* Makerules: Likewise.
	* dlfcn/Makefile (defaultmod1.so): Added libc_nonshared.
	(defaultmod2.so): Likewise.
	* debug/Makefile: Conditionalize use of elf/ld.so.
	* iconvdata/Makefile: Moved LDFLAG rpath/soname info into Makeconfig.

	* sysdeps/unix/sysv/aix/Makefile: Added dl-support.c and dl-error.c.
	* sysdeps/unix/sysv/aix/Makefile: Made (f/g)rsave(0/1) &
	(f/g)prrest(0/1) static only.
	* sysdeps/unix/sysv/aix/gettimeofday.c: Removed #if 0.
	* sysdeps/unix/sysv/aix/start.c: Define __dso_handle if not ELF but
	shared.
	* sysdeps/unix/sysv/aix/setitimer.c: New file.
	* sysdeps/unix/sysv/aix/sleep.c: New file.
	* sysdeps/unix/sysv/aix/usleep.c: New file.
	* sysdeps/unix/sysv/aix/dl-addr.c: New file.
	* sysdeps/unix/sysv/aix/dl-error.c: New file.
	* sysdeps/unix/sysv/aix/dl-support.c: New file.
	* sysdeps/unix/sysv/aix/powerpc/register-dump.h: New file.

	(BODY for TO_LOOP): Keep track of Unicode 3.1 language tag. I f "ja",
	prefer conversion to Japanese character sets.  If "zh", prefer
	conversion to GB2312. I f "ko", prefer conversion to KSC5601.  Small
2001-06-20 07:10:50 +00:00
Roland McGrath
c7414a8e30 * sysdeps/unix/sysv/linux/i386/sigaction.c (restore, restore_rt):
Declare these without `static', to avoid warning that we haven't
	defined them.

	* Makerules (build-module-helper-objlist): New variable,
	broken out of build-module.  Insert --whole-archive/--no-whole-archive
	immediately each *_pic.a file in the link object list.
	(whole-archive): New variable, used by that.
	(build-module-objlist): New variable using build-module-helper-objlist.
	(build-module, build-module-helper): Use it.
	(build-shlib-objlist): New variable using build-module-helper-objlist.
	(build-shlib): Use that.
	* sysdeps/mach/hurd/Makefile ($(link-rpcuserlibs)): Likewise.
2001-06-18 01:09:45 +00:00
Roland McGrath
083973f34e * csu/Makefile ($(objpfx)g$(start-installed-name)): Turn this into a
static pattern rule also that also covers
	$(objpx)g$(static-start-installed-name).
	[$(start-installed-name) != $(static-start-installed-name)]
	(extra-objs, omit-deps, install-lib): Add
	$(static-start-installed-name) and g$(static-start-installed-name).
	* sysdeps/mach/hurd/i386/Makefile: Don't add crt0.o to those here;
	just setting static-start-installed-name is now sufficient.
	(extra-objs): Add static-start.o here.
	(CFLAGS-initfini.s): Remove obsolete variable.
	* sysdeps/mach/hurd/i386/Makeconfig: New file.
	Define static-start-installed-name here.

	* Makeconfig: Include existing $(full_config_sysdirs:=/Makeconfig).
	* Make-dist (+sysdep-tsrcs): Look for Makeconfig files.

	* Makerules ($(+sysdir_pfx)sysd-Makefile): Remove this target and
	associated hair.  Instead, just use $(wildcard ...) in the include.

	* configure.in (critic_missing, aux_missing): Collect in these vars
	the names of the missing programs, and include them in the error msgs.
	* configure: Regenerated.
2001-05-14 23:32:39 +00:00
Ulrich Drepper
49547c68f9 Update.
2001-04-19  Alan Modra  <amodra@one.net.au>

	* Makerules (libc_pic.os): Add $(LDFLAGS-c_pic.os).
	* sysdeps/hppa/Makefile (LDFLAGS-c_pic.os): Define.
	(CFLAGS-.os): Remove.

	* sysdeps/unix/sysv/linux/hppa/sysdep.h (CALL_MCOUNT): Update comment.

	* sysdeps/unix/sysv/linux/hppa/sys/ucontext.h (NGREG, NFPREG,
	gregset): Correct for new kernel definitions.

2001-04-19  Alan Modra  <alan@linuxcare.com.au>

	* sysdeps/hppa/elf/initfini.c: Change dlt reg save to r3 and
	generate unwind info by hand.

2001-04-19  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64): Optimize a bit.

	* configure.in: Correct regular expression for msgfmt.
	Patch by Bruno Haible <haible@ilog.fr>.
2001-04-20 06:06:55 +00:00
Ulrich Drepper
2f53aec963 Update.
2001-04-02  Andreas Schwab  <schwab@suse.de>

	* Makerules (build-module): Make sure exit codes get checked
	properly and remove unnecessary slashes.
2001-04-18 16:03:07 +00:00
Ulrich Drepper
b5d51280fe Update.
2001-03-19  Andreas Schwab  <schwab@suse.de>

	* Makerules (build-shlib): Make sure exit codes get checked
	properly.
2001-03-19 01:23:36 +00:00
Ulrich Drepper
639c324856 Update.
2001-03-18  Ulrich Drepper  <drepper@redhat.com>

	* Makerules (build-shlib): Remove unnecessary slashes introduced in
	last change.

	* configure.in: Test for -Bgroup option of linker.
	* config.make.in: Define have-Bgroup.

	* conform/data/unistd.h-data: Require gethostname.
	* posix/unistd.h: Make gethostname prototype available for
	__USE_XOPEN2K.

	* crypt/Makefile: When generating DSO link with libc_nonshared.a.
	* debug/Makefile: Likewise.
	* dlfcn/Makefile: Likewise.
	* hesiod/Makefile: Likewise.
	* iconvdata/extra-module.mk: Likewise.
	* locale/Makefile: Likewise.
	* login/Makefile: Likewise.
	* math/Makefile: Likewise.
	* nis/Makefile: Likewise.
	* nss/Makefile: Likewise.
	* resolv/Makefile: Likewise.
	* rt/Makefile: Likewise.

	* posix/unistd.h (gethostname): Change type of second parameter
	back to size_t as per upcoming XPG6.
2001-03-18 21:34:58 +00:00
Ulrich Drepper
a986484f67 Update.
2001-03-12  Jakub Jelinek  <jakub@redhat.com>

	* csu/Makefile (abi-tag.h): Define OS and version separately, allow
	version to be overriden from config.h.
	* csu/abi-note.S: Use OS and version separately, include config.h.
	* elf/dl-load.c (_dl_osversion): New.
	(_dl_map_object_from_fd): Kill some warnings.
	(open_verify): Check .note.ABI-tag of the library if present.
	* elf/Makefile (CPPFLAGS-dl-load.c): Add -I$(csu-objpfx).
	* elf/cache.c (struct cache_entry): Add osversion.
	(print_entry): Print osversion.
	(print_cache): Pass osversion to it.
	(compare): Sort according to osversion.
	(save_cache): Set osversion.
	(add_to_cache): Add osversion argument.
	* sysdeps/generic/ldconfig.h (add_to_cache, process_file,
	process_elf_file): Add osversion argument.
	* elf/readlib.c (process_file): Likewise.
	* sysdeps/generic/readelflib.c (process_elf_file): Likewise.
	* sysdeps/unix/sysv/linux/ia64/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* sysdeps/unix/sysv/linux/i386/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* sysdeps/unix/sysv/linux/sparc/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* elf/ldconfig.c (manual_link): Pass it.
	(search_dir): Issue diagnostic if two libs with the same soname in
	the same directory have different .note.ABI-tag.  Record osversion in
	dlib_entry and use it from there.
	(struct lib_entry): Remove.
	(struct dlib_entry): Add osversion.
	* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Check
	osversion.
	* sysdeps/generic/dl-cache.h (struct file_entry_new): Replace __unused
	field with osversion.
	* sysdeps/generic/ldsodefs.h (_dl_osversion): Declare.
	* sysdeps/unix/sysv/linux/init-first.c: Include ldsodefs.h.
	* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Save kernel
	version in _dl_osversion.
	* sysdeps/unix/sysv/linux/configure.in: Define __ABI_TAG_VERSION.
	* Makerules (build-shlib-helper, build-module-helper): New.
	(build-shlib, build-module-helper): Make sure .note.ABI-tag comes
	early.
	* config.h.in (__ABI_TAG_VERSION): Add.
	* elf/dl-minimal.c (__strtoul_internal): Set endptr on return.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
	Handle LD_ASSUME_KERNEL.
	* sysdeps/unix/sysv/linux/dl-librecon.h: New.
2001-03-16 07:40:05 +00:00
Ulrich Drepper
90feeaa2eb Update.
* Makerules (build-shlib): Work around different order of
	processing of -B option in different gcc versions.
2001-02-09 06:46:20 +00:00
Ulrich Drepper
5d9167133c Update.
2001-02-01  Ulrich Drepper  <drepper@redhat.com>

	* Makerules (build-shlib): Add $(extra-B-$(@F:lib%.so=%).so).
	* configure.in: Test for -z initfirst linker option.
	* config.make.in: Add have-z-initfirst.
	* elf/dl-init.c (_dl_init): Split out actual initialization code in
	new function call_init.  If _dl_initfirst is non-NULL initialize first.
	* elf/dl-load.c (_dl_map_from_fd): If DF_1_INITFIRST flag is set
	remember object in _dl_initfirst.
	* elf/soinit.c: Remove special support for calling
	__pthread_initialize_minimal.

	* conform/conformtest.pl: Add missing $prepend in type test.

	* elf/elf.h (SHT_CHECKSUM): New definition.

	* posix/tst-fnmatch.input: Add tests for [. .] in locales.
2001-02-02 06:19:24 +00:00