From dank@kegel.com Wed Jun 15 09:12:43 PDT 2005 Fixes build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r' build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent' ... 53 lines deleted ... build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r' collect2: ld returned 1 exit status make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1 when building glibc with --enable-static-nss. See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631 --- glibc-2.3.5/Makeconfig.old Wed Jun 15 08:13:12 2005 +++ glibc-2.3.5/Makeconfig Wed Jun 15 08:13:14 2005 @@ -508,7 +508,7 @@ # The static libraries. ifeq (yes,$(build-static)) -link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a +link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a else ifeq (yes,$(build-shared)) # We can try to link the programs with lib*_pic.a... --- glibc-2.3.5/elf/Makefile.old Wed Jun 15 07:46:49 2005 +++ glibc-2.3.5/elf/Makefile Wed Jun 15 08:14:00 2005 @@ -120,6 +120,13 @@ install-bin-script = ldd endif +ifeq (yes,$(build-static-nss)) +nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) +resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv) +otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ + $(resolvobjdir)/libresolv.a +endif + others = sprof sln install-bin = sprof others-static = sln