From 9ca46ae78954339b85bc5485fcc84354969aee34 Mon Sep 17 00:00:00 2001
From: "Peter S. Mazinger" <ps.m@gmx.net>
Date: Tue, 24 Jan 2006 15:40:32 +0000
Subject: Convert all the strong_aliases to weak that are cancelable in
 libpthread

---
 libc/inet/socketcalls.c                     | 16 ++++++++--------
 libc/stdlib/system.c                        |  2 +-
 libc/sysdeps/linux/common/__syscall_fcntl.c |  4 ++--
 libc/sysdeps/linux/common/close.c           |  2 +-
 libc/sysdeps/linux/common/fsync.c           |  2 +-
 libc/sysdeps/linux/common/llseek.c          |  2 +-
 libc/sysdeps/linux/common/lseek.c           |  2 +-
 libc/sysdeps/linux/common/msync.c           |  2 +-
 libc/sysdeps/linux/common/nanosleep.c       |  2 +-
 libc/sysdeps/linux/common/open.c            |  2 +-
 libc/sysdeps/linux/common/open64.c          |  2 +-
 libc/sysdeps/linux/common/pause.c           |  2 +-
 libc/sysdeps/linux/common/pread_write.c     | 16 ++++++++--------
 libc/sysdeps/linux/common/read.c            |  2 +-
 libc/sysdeps/linux/common/wait.c            |  2 +-
 libc/sysdeps/linux/common/waitpid.c         |  2 +-
 libc/sysdeps/linux/common/write.c           |  2 +-
 libc/sysdeps/linux/mips/pread_write.c       |  8 ++++----
 libc/sysdeps/linux/powerpc/pread_write.c    | 16 ++++++++--------
 libc/sysdeps/linux/sh/pread_write.c         |  8 ++++----
 libc/termios/tcdrain.c                      |  2 +-
 21 files changed, 49 insertions(+), 49 deletions(-)

diff --git a/libc/inet/socketcalls.c b/libc/inet/socketcalls.c
index 4b22120d0..d1bfe4b98 100644
--- a/libc/inet/socketcalls.c
+++ b/libc/inet/socketcalls.c
@@ -50,7 +50,7 @@ int __libc_accept(int s, struct sockaddr *addr, socklen_t * addrlen)
 }
 #endif
 libc_hidden_proto(accept)
-strong_alias(__libc_accept,accept)
+weak_alias(__libc_accept,accept)
 libc_hidden_def(accept)
 #endif
 
@@ -88,7 +88,7 @@ int __libc_connect(int sockfd, const struct sockaddr *saddr, socklen_t addrlen)
 }
 #endif
 libc_hidden_proto(connect)
-strong_alias(__libc_connect,connect)
+weak_alias(__libc_connect,connect)
 libc_hidden_def(connect)
 #endif
 
@@ -186,7 +186,7 @@ ssize_t __libc_recv(int sockfd, __ptr_t buffer, size_t len, int flags)
 }
 #endif
 libc_hidden_proto(recv)
-strong_alias(__libc_recv,recv)
+weak_alias(__libc_recv,recv)
 libc_hidden_def(recv)
 #endif
 
@@ -212,7 +212,7 @@ ssize_t __libc_recvfrom(int sockfd, __ptr_t buffer, size_t len, int flags,
 }
 #endif
 libc_hidden_proto(recvfrom)
-strong_alias(__libc_recvfrom,recvfrom)
+weak_alias(__libc_recvfrom,recvfrom)
 libc_hidden_def(recvfrom)
 #endif
 
@@ -232,7 +232,7 @@ ssize_t __libc_recvmsg(int sockfd, struct msghdr *msg, int flags)
 }
 #endif
 libc_hidden_proto(recvmsg)
-strong_alias(__libc_recvmsg,recvmsg)
+weak_alias(__libc_recvmsg,recvmsg)
 libc_hidden_def(recvmsg)
 #endif
 
@@ -260,7 +260,7 @@ ssize_t __libc_send(int sockfd, const void *buffer, size_t len, int flags)
 }
 #endif
 libc_hidden_proto(send)
-strong_alias(__libc_send,send)
+weak_alias(__libc_send,send)
 libc_hidden_def(send)
 #endif
 
@@ -280,7 +280,7 @@ ssize_t __libc_sendmsg(int sockfd, const struct msghdr *msg, int flags)
 }
 #endif
 libc_hidden_proto(sendmsg)
-strong_alias(__libc_sendmsg,sendmsg)
+weak_alias(__libc_sendmsg,sendmsg)
 libc_hidden_def(sendmsg)
 #endif
 
@@ -306,7 +306,7 @@ ssize_t __libc_sendto(int sockfd, const void *buffer, size_t len, int flags,
 }
 #endif
 libc_hidden_proto(sendto)
-strong_alias(__libc_sendto,sendto)
+weak_alias(__libc_sendto,sendto)
 libc_hidden_def(sendto)
 #endif
 
diff --git a/libc/stdlib/system.c b/libc/stdlib/system.c
index 27a1b0d45..89168cc73 100644
--- a/libc/stdlib/system.c
+++ b/libc/stdlib/system.c
@@ -65,4 +65,4 @@ int __libc_system(char *command)
 	signal(SIGCHLD, save_chld);
 	return wait_val;
 }
-strong_alias(__libc_system,system)
+weak_alias(__libc_system,system)
diff --git a/libc/sysdeps/linux/common/__syscall_fcntl.c b/libc/sysdeps/linux/common/__syscall_fcntl.c
index 3553db5ed..d24bd186a 100644
--- a/libc/sysdeps/linux/common/__syscall_fcntl.c
+++ b/libc/sysdeps/linux/common/__syscall_fcntl.c
@@ -49,11 +49,11 @@ int __libc_fcntl(int fd, int cmd, ...)
 libc_hidden_def(__libc_fcntl)
 
 libc_hidden_proto(fcntl)
-strong_alias(__libc_fcntl,fcntl)
+weak_alias(__libc_fcntl,fcntl)
 libc_hidden_def(fcntl)
 #if ! defined __NR_fcntl64 && defined __UCLIBC_HAS_LFS__
 strong_alias(__libc_fcntl,__libc_fcntl64)
 libc_hidden_proto(fcntl64)
-strong_alias(__libc_fcntl,fcntl64)
+weak_alias(__libc_fcntl,fcntl64)
 libc_hidden_def(fcntl64)
 #endif
diff --git a/libc/sysdeps/linux/common/close.c b/libc/sysdeps/linux/common/close.c
index 56b41ec5c..bc4cc7e74 100644
--- a/libc/sysdeps/linux/common/close.c
+++ b/libc/sysdeps/linux/common/close.c
@@ -13,5 +13,5 @@
 #define __NR___libc_close __NR_close
 _syscall1(int, __libc_close, int, fd);
 libc_hidden_proto(close)
-strong_alias(__libc_close,close)
+weak_alias(__libc_close,close)
 libc_hidden_def(close)
diff --git a/libc/sysdeps/linux/common/fsync.c b/libc/sysdeps/linux/common/fsync.c
index d17186261..6db63527a 100644
--- a/libc/sysdeps/linux/common/fsync.c
+++ b/libc/sysdeps/linux/common/fsync.c
@@ -12,4 +12,4 @@
 
 #define __NR___libc_fsync __NR_fsync
 _syscall1(int, __libc_fsync, int, fd);
-strong_alias(__libc_fsync, fsync)
+weak_alias(__libc_fsync, fsync)
diff --git a/libc/sysdeps/linux/common/llseek.c b/libc/sysdeps/linux/common/llseek.c
index 7b39a3064..429a58212 100644
--- a/libc/sysdeps/linux/common/llseek.c
+++ b/libc/sysdeps/linux/common/llseek.c
@@ -35,6 +35,6 @@ loff_t __libc_lseek64(int fd, loff_t offset, int whence)
 }
 #endif
 libc_hidden_proto(lseek64)
-strong_alias(__libc_lseek64,lseek64)
+weak_alias(__libc_lseek64,lseek64)
 libc_hidden_def(lseek64)
 //strong_alias(__libc_lseek64,_llseek)
diff --git a/libc/sysdeps/linux/common/lseek.c b/libc/sysdeps/linux/common/lseek.c
index 56a73864f..bfe91e3bb 100644
--- a/libc/sysdeps/linux/common/lseek.c
+++ b/libc/sysdeps/linux/common/lseek.c
@@ -18,5 +18,5 @@ _syscall3(__off_t, __libc_lseek, int, fildes, __off_t, offset, int, whence);
 libc_hidden_def(__libc_lseek)
 
 libc_hidden_proto(lseek)
-strong_alias(__libc_lseek,lseek)
+weak_alias(__libc_lseek,lseek)
 libc_hidden_def(lseek)
diff --git a/libc/sysdeps/linux/common/msync.c b/libc/sysdeps/linux/common/msync.c
index bede0dc60..d9d733466 100644
--- a/libc/sysdeps/linux/common/msync.c
+++ b/libc/sysdeps/linux/common/msync.c
@@ -13,4 +13,4 @@
 
 #define __NR___libc_msync __NR_msync
 _syscall3(int, __libc_msync, void *, addr, size_t, length, int, flags);
-strong_alias(__libc_msync,msync)
+weak_alias(__libc_msync,msync)
diff --git a/libc/sysdeps/linux/common/nanosleep.c b/libc/sysdeps/linux/common/nanosleep.c
index b13aaf446..e400a06c5 100644
--- a/libc/sysdeps/linux/common/nanosleep.c
+++ b/libc/sysdeps/linux/common/nanosleep.c
@@ -15,5 +15,5 @@
 _syscall2(int, __libc_nanosleep, const struct timespec *, req,
 		  struct timespec *, rem);
 libc_hidden_proto(nanosleep)
-strong_alias(__libc_nanosleep,nanosleep)
+weak_alias(__libc_nanosleep,nanosleep)
 libc_hidden_def(nanosleep)
diff --git a/libc/sysdeps/linux/common/open.c b/libc/sysdeps/linux/common/open.c
index 0db3b007f..e29280cc4 100644
--- a/libc/sysdeps/linux/common/open.c
+++ b/libc/sysdeps/linux/common/open.c
@@ -39,7 +39,7 @@ int __libc_open(const char *file, int flags, ...)
 libc_hidden_def(__libc_open)
 
 libc_hidden_proto(open)
-strong_alias(__libc_open,open)
+weak_alias(__libc_open,open)
 libc_hidden_def(open)
 
 int creat(const char *file, mode_t mode)
diff --git a/libc/sysdeps/linux/common/open64.c b/libc/sysdeps/linux/common/open64.c
index e194f3db5..3fca783cd 100644
--- a/libc/sysdeps/linux/common/open64.c
+++ b/libc/sysdeps/linux/common/open64.c
@@ -34,6 +34,6 @@ int __libc_open64 (const char *file, int oflag, ...)
   return __libc_open(file, oflag | O_LARGEFILE, mode);
 }
 libc_hidden_proto(open64)
-strong_alias(__libc_open64,open64)
+weak_alias(__libc_open64,open64)
 libc_hidden_def(open64)
 #endif /* __UCLIBC_HAS_LFS__ */
diff --git a/libc/sysdeps/linux/common/pause.c b/libc/sysdeps/linux/common/pause.c
index 26fd72bf8..ac39105a1 100644
--- a/libc/sysdeps/linux/common/pause.c
+++ b/libc/sysdeps/linux/common/pause.c
@@ -24,4 +24,4 @@ int __libc_pause(void)
 	return (__sigpause(sigblock(0), 0));
 }
 #endif
-strong_alias(__libc_pause,pause)
+weak_alias(__libc_pause,pause)
diff --git a/libc/sysdeps/linux/common/pread_write.c b/libc/sysdeps/linux/common/pread_write.c
index 45a94cfb8..f1b6cb867 100644
--- a/libc/sysdeps/linux/common/pread_write.c
+++ b/libc/sysdeps/linux/common/pread_write.c
@@ -27,7 +27,7 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pread(fd,buf,count,__LONG_LONG_PAIR (offset >> 31, offset)));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
@@ -36,7 +36,7 @@ ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pread(fd, buf, count, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 # endif /* __UCLIBC_HAS_LFS__  */
 
 #endif /* __NR_pread */
@@ -51,7 +51,7 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pwrite(fd,buf,count,__LONG_LONG_PAIR (offset >> 31, offset)));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
@@ -60,7 +60,7 @@ ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pwrite(fd, buf, count, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* __NR_pwrite */
 
@@ -150,14 +150,14 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 {
 	return(__fake_pread_write(fd, buf, count, offset, 0));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
 { 
 	return(__fake_pread_write64(fd, buf, count, offset, 0));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* ! __NR_pread */
 
@@ -168,13 +168,13 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 	 *just cast it to get rid of warnings */
 	return(__fake_pread_write(fd, (void*)buf, count, offset, 1));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
 { 
 	return(__fake_pread_write64(fd, (void*)buf, count, offset, 1));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* ! __NR_pwrite */
diff --git a/libc/sysdeps/linux/common/read.c b/libc/sysdeps/linux/common/read.c
index 785ea5ffb..769814c0c 100644
--- a/libc/sysdeps/linux/common/read.c
+++ b/libc/sysdeps/linux/common/read.c
@@ -13,5 +13,5 @@
 #define __NR___libc_read __NR_read
 _syscall3(ssize_t, __libc_read, int, fd, __ptr_t, buf, size_t, count);
 libc_hidden_proto(read)
-strong_alias(__libc_read,read)
+weak_alias(__libc_read,read)
 libc_hidden_def(read)
diff --git a/libc/sysdeps/linux/common/wait.c b/libc/sysdeps/linux/common/wait.c
index 471650e04..3d30d3d0f 100644
--- a/libc/sysdeps/linux/common/wait.c
+++ b/libc/sysdeps/linux/common/wait.c
@@ -18,4 +18,4 @@ __pid_t __libc_wait (__WAIT_STATUS_DEFN stat_loc)
 {
       return wait4 (WAIT_ANY, stat_loc, 0, (struct rusage *) NULL);
 }
-strong_alias(__libc_wait,wait)
+weak_alias(__libc_wait,wait)
diff --git a/libc/sysdeps/linux/common/waitpid.c b/libc/sysdeps/linux/common/waitpid.c
index 064b0110c..ae3aa5d34 100644
--- a/libc/sysdeps/linux/common/waitpid.c
+++ b/libc/sysdeps/linux/common/waitpid.c
@@ -17,5 +17,5 @@ __pid_t __libc_waitpid(__pid_t pid, int *wait_stat, int options)
     return wait4(pid, wait_stat, options, NULL);
 }
 libc_hidden_proto(waitpid)
-strong_alias(__libc_waitpid,waitpid)
+weak_alias(__libc_waitpid,waitpid)
 libc_hidden_def(waitpid)
diff --git a/libc/sysdeps/linux/common/write.c b/libc/sysdeps/linux/common/write.c
index 8a17ae9b9..67e50cc20 100644
--- a/libc/sysdeps/linux/common/write.c
+++ b/libc/sysdeps/linux/common/write.c
@@ -13,7 +13,7 @@
 #define __NR___libc_write __NR_write
 _syscall3(ssize_t, __libc_write, int, fd, const __ptr_t, buf, size_t, count);
 libc_hidden_proto(write)
-strong_alias(__libc_write,write)
+weak_alias(__libc_write,write)
 libc_hidden_def(write)
 #if 0
 /* Stupid libgcc.a from gcc 2.95.x uses __write in pure.o
diff --git a/libc/sysdeps/linux/mips/pread_write.c b/libc/sysdeps/linux/mips/pread_write.c
index 0fa6c024c..edac1a283 100644
--- a/libc/sysdeps/linux/mips/pread_write.c
+++ b/libc/sysdeps/linux/mips/pread_write.c
@@ -36,7 +36,7 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pread(fd,buf,count,0,__LONG_LONG_PAIR(offset>>31,offset)));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 #  ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
@@ -45,7 +45,7 @@ ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pread(fd, buf, count, 0, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 #  endif /* __UCLIBC_HAS_LFS__  */
 # endif /* !__mips64 */
 
@@ -73,7 +73,7 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pwrite(fd,buf,count,0,__LONG_LONG_PAIR(offset>>31,offset)));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 #  ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
@@ -82,7 +82,7 @@ ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pwrite(fd, buf, count, 0, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 #  endif /* __UCLIBC_HAS_LFS__  */
 # endif /* !__mips64 */
 #endif /* __NR_pwrite */
diff --git a/libc/sysdeps/linux/powerpc/pread_write.c b/libc/sysdeps/linux/powerpc/pread_write.c
index 8662c06fb..e3fb6a312 100644
--- a/libc/sysdeps/linux/powerpc/pread_write.c
+++ b/libc/sysdeps/linux/powerpc/pread_write.c
@@ -28,14 +28,14 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pread(fd, buf, count, (off64_t)offset));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
 { 
 	return(__syscall_pread(fd, buf, count, offset));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* __NR_pread */
 
@@ -49,14 +49,14 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pwrite(fd, buf, count, (off64_t)offset));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
 { 
 	return(__syscall_pwrite(fd, buf, count, offset));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* __NR_pwrite */
 
@@ -148,14 +148,14 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 {
 	return(__fake_pread_write(fd, buf, count, offset, 0));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
 { 
 	return(__fake_pread_write64(fd, buf, count, offset, 0));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* ! __NR_pread */
 
@@ -165,13 +165,13 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 {
 	return(__fake_pread_write(fd, buf, count, offset, 1));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
 { 
 	return(__fake_pread_write64(fd, (void*)buf, count, offset, 1));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* ! __NR_pwrite */
diff --git a/libc/sysdeps/linux/sh/pread_write.c b/libc/sysdeps/linux/sh/pread_write.c
index 437bbdaa6..0cfac24f3 100644
--- a/libc/sysdeps/linux/sh/pread_write.c
+++ b/libc/sysdeps/linux/sh/pread_write.c
@@ -32,7 +32,7 @@ ssize_t __libc_pread(int fd, void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pread(fd,buf,count,0,__LONG_LONG_PAIR((off_t)0,offset)));
 }
-strong_alias(__libc_pread,pread)
+weak_alias(__libc_pread,pread)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
@@ -41,7 +41,7 @@ ssize_t __libc_pread64(int fd, void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pread(fd, buf, count, 0, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pread64,pread64)
+weak_alias(__libc_pread64,pread64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* __NR_pread */
 
@@ -63,7 +63,7 @@ ssize_t __libc_pwrite(int fd, const void *buf, size_t count, off_t offset)
 { 
 	return(__syscall_pwrite(fd,buf,count,0,__LONG_LONG_PAIR((off_t)0,offset)));
 }
-strong_alias(__libc_pwrite,pwrite)
+weak_alias(__libc_pwrite,pwrite)
 
 # ifdef __UCLIBC_HAS_LFS__ 
 ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
@@ -72,6 +72,6 @@ ssize_t __libc_pwrite64(int fd, const void *buf, size_t count, off64_t offset)
     uint32_t high = offset >> 32;
 	return(__syscall_pwrite(fd, buf, count, 0, __LONG_LONG_PAIR (high, low)));
 }
-strong_alias(__libc_pwrite64,pwrite64)
+weak_alias(__libc_pwrite64,pwrite64)
 # endif /* __UCLIBC_HAS_LFS__  */
 #endif /* __NR_pwrite */
diff --git a/libc/termios/tcdrain.c b/libc/termios/tcdrain.c
index e1579060d..839edd81a 100644
--- a/libc/termios/tcdrain.c
+++ b/libc/termios/tcdrain.c
@@ -27,4 +27,4 @@ int __libc_tcdrain (int fd)
 {
       return ioctl(fd, TCSBRK, 1);
 }
-strong_alias(__libc_tcdrain,tcdrain)
+weak_alias(__libc_tcdrain,tcdrain)
-- 
cgit v1.2.3