about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog24
-rw-r--r--Makeconfig10
-rw-r--r--Makefile2
-rw-r--r--Makerules2
-rw-r--r--libc.map1
-rw-r--r--linuxthreads/ChangeLog6
-rw-r--r--linuxthreads/libpthread.map10
-rw-r--r--nscd/Makefile17
-rw-r--r--rt/Makefile17
9 files changed, 67 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 8f783e8a6c..a8562f927c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,27 @@
+1998-03-15  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+	* libc.map: Export internal versions of cancelable functions.
+
+1998-03-15  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+	* Makerules (MAKEFLAGS): Append `r'.
+
+1998-03-15  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+	* Makeconfig: Define have-thread-library, shared-thread-library
+	and static-thread-library if a thread library is available.  Don't
+	define rt.
+	* nscd/Makefile: Compile nscd if have-thread-library.  Rename
+	nscd-routines to nscd-modules.  Use shared-thread-library and
+	static-thread-library in dependencies.
+	* rt/Makefile: Only compile librt if have-thread-library is
+	defined.
+	* Makefile (subdirs): Always include rt subdir.
+
+1998-03-15  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+	* Makeconfig ($(common-objpfx)gnu/lib-names.h): Add dummy command.
+
 1998-03-14 21:55  Ulrich Drepper  <drepper@cygnus.com>
 
 	* configure.in: Recognize variations for 32 MIPS processors.
diff --git a/Makeconfig b/Makeconfig
index c48e657a04..db62f8edb0 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -722,14 +722,12 @@ ifndef rtld-version-installed-name
 rtld-version-installed-name = ld-$(version).so
 endif
 
-# The librt must be linked with the thread library, at least
-# for now.
+endif # build-shared
+
 ifneq (,$(findstring linuxthreads,$(add-ons)))
 shared-thread-library = $(common-objpfx)linuxthreads/libpthread.so
-# Yes, we can compile librt.
-rt = rt
+static-thread-library = $(common-objpfx)linuxthreads/libpthread.a
+have-thread-library = yes
 endif
 
-endif # build-shared
-
 endif # Makeconfig not yet included
diff --git a/Makefile b/Makefile
index 1c923f30d8..6118685fe0 100644
--- a/Makefile
+++ b/Makefile
@@ -64,7 +64,7 @@ subdirs = csu assert ctype db2 locale intl catgets math setjmp signal stdlib \
 	  stdio-common $(stdio) malloc string wcsmbs time dirent grp pwd \
 	  posix io termios resource misc socket sysvipc gmon gnulib iconv \
 	  iconvdata wctype manual shadow md5-crypt po argp $(add-ons) nss \
-	  localedata timezone $(rt) $(sysdep-subdirs) $(binfmt-subdir)
+	  localedata timezone rt $(sysdep-subdirs) $(binfmt-subdir)
 export subdirs := $(subdirs)	# Benign, useless in GNU make before 3.63.
 
 # The mach and hurd subdirectories have many generated header files which
diff --git a/Makerules b/Makerules
index c62d012daf..ae9114b0f1 100644
--- a/Makerules
+++ b/Makerules
@@ -459,6 +459,8 @@ endif
 
 # Maximize efficiency by minimizing the number of rules.
 .SUFFIXES:	# Clear the suffix list.  We don't use suffix rules.
+# Don't define any builtin rules.
+MAKEFLAGS := $(MAKEFLAGS)r
 
 # Generic rule for making directories.
 %/:
diff --git a/libc.map b/libc.map
index 06e3015983..c90197b22d 100644
--- a/libc.map
+++ b/libc.map
@@ -101,6 +101,7 @@ GLIBC_2.0 {
     __strcasecmp; __write; _strerror_internal; _dl_sysdep_output;
     _dl_debug_message;
     __ffs;
+    __close; __connect; __fcntl; __lseek; __open; __read; __send; __wait;
 
     # Exception handling support functions from libgcc
     __register_frame; __register_frame_table; __deregister_frame;
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 77aa4a2ea4..61d11a9eb4 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,9 @@
+1998-03-15  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
+
+	* libpthread.map: Add __libc_internal_tsd_get and
+	__libc_internal_tsd_set.  Add missing cancelable functions. Export
+	libc internal versions of the cancelable functions.
+
 1998-03-13 16:51  Ulrich Drepper  <drepper@cygnus.com>
 
 	* weaks.c: Define pthread_attr_init as GLIBC_2.0 and GLIBC_2.1.
diff --git a/linuxthreads/libpthread.map b/linuxthreads/libpthread.map
index 403cea859f..b7dd1670d5 100644
--- a/linuxthreads/libpthread.map
+++ b/linuxthreads/libpthread.map
@@ -4,9 +4,15 @@ GLIBC_2.0 {
     _pthread_cleanup_pop; _pthread_cleanup_pop_restore; _pthread_cleanup_push;
     _pthread_cleanup_push_defer;
 
+    # Internal libc interface to libpthread
+    __libc_internal_tsd_get; __libc_internal_tsd_set;
+
     # Overwritten libc functions.
-    close; fcntl; fork; fsync; lseek; msync; nanosleep; open; pause; raise;
-    read; system; tcdrain; wait; waitpid; write;
+    close; connect; fcntl; fork; fsync; lseek; msync; nanosleep; open;
+    pause; raise; read; recv; recvfrom; recvmsg; send; sendmsg; sendto;
+    system; tcdrain; wait; waitpid; write;
+    __close; __connect; __fcntl; __lseek; __open; __read; __send; __wait;
+    __write;
 
     # POSIX.1c extensions to libc.
     flockfile; funlockfile; ftrylockfile;
diff --git a/nscd/Makefile b/nscd/Makefile
index 79db5abd37..aace588def 100644
--- a/nscd/Makefile
+++ b/nscd/Makefile
@@ -25,25 +25,26 @@ routines := nscd_getpw_r nscd_getgr_r
 
 include ../Makeconfig
 
-# We can later add the names of other thread packages here.
-ifneq (,$(findstring linuxthreads,$(add-ons)))
+ifeq ($(have-thread-library),yes)
 
 others := nscd
 install-sbin := nscd
 
-nscd-routines := nscd connections pwdcache getpwnam_r getpwuid_r grpcache \
-		 getgrnam_r getgrgid_r dbg_log nscd_conf nscd_stat
-extra-objs := $(nscd-routines:=.o)
+nscd-modules := nscd connections pwdcache getpwnam_r getpwuid_r grpcache \
+		getgrnam_r getgrgid_r dbg_log nscd_conf nscd_stat
+extra-objs := $(nscd-modules:=.o)
 
 endif
 
-distribute := nscd.h dbg_log.h $(nscd-routines:=.c) TODO nscd.conf nscd.init \
+distribute := nscd.h dbg_log.h $(nscd-modules:=.c) TODO nscd.conf nscd.init \
 	      nscd_proto.h
 
 include ../Rules
 
+$(objpfx)nscd: $(nscd-modules:%=$(objpfx)%.o)
+
 ifeq ($(build-shared),yes)
-$(objpfx)nscd: $(nscd-routines:%=$(objpfx)%.o) $(objpfx)../linuxthreads/libpthread.so$(libpthread.so-version) $(objpfx)../nis/libnsl.so$(libnsl.so-version)
+$(objpfx)nscd: $(shared-thread-library) $(common-objpfx)nis/libnsl.so
 else
-$(objpfx)nscd: $(nscd-routines:%=$(objpfx)%.o) $(objpfx)../linuxthreads/libpthread.a $(objpfx)../nis/libnsl.a
+$(objpfx)nscd: $(static-thread-library) $(common-objpfx)nis/libnsl.a
 endif
diff --git a/rt/Makefile b/rt/Makefile
index e0f03d78a0..ef6e930b83 100644
--- a/rt/Makefile
+++ b/rt/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1997 Free Software Foundation, Inc.
+# Copyright (C) 1997, 1998 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -23,9 +23,6 @@ subdir	:= rt
 
 headers	:= aio.h
 
-extra-libs := librt
-extra-libs-others := $(extra-libs)
-
 librt-routines := aio_cancel aio_error aio_fsync aio_misc aio_read	\
 		  aio_read64 aio_return aio_suspend aio_write		\
 		  aio_write64 lio_listio lio_listio64 aio_sigqueue	\
@@ -33,7 +30,17 @@ librt-routines := aio_cancel aio_error aio_fsync aio_misc aio_read	\
 
 librt-map := librt.map
 
-distribute := aio_misc.h
+# Make sure that everything is distributed independent of configuration.
+distribute := aio_misc.h $(librt-routines:=.c) $(librt-map)
+
+include ../Makeconfig
+
+ifeq ($(have-thread-library),yes)
+
+extra-libs := librt
+extra-libs-others := $(extra-libs)
+
+endif
 
 include ../Rules