about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog26
-rw-r--r--FAQ.in6
-rw-r--r--Makerules2
-rw-r--r--iconvdata/Makefile9
-rw-r--r--sysdeps/alpha/elf/start.S58
-rw-r--r--sysdeps/unix/sysv/linux/alpha/Makefile3
-rw-r--r--sysdeps/unix/sysv/linux/alpha/syscalls.list3
-rw-r--r--sysdeps/unix/sysv/linux/bits/socket.h2
8 files changed, 54 insertions, 55 deletions
diff --git a/ChangeLog b/ChangeLog
index 840aff48bf..aa7ba568af 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,31 @@
 1998-03-31  Ulrich Drepper  <drepper@cygnus.com>
 
+	* iconvdata/Makefile: Use libKSC shared object in JOHAB and
+	EUC-KR.
+
+	* sysdeps/unix/sysv/linux/bits/socket.h (PF_FILE): Correct
+	comment.
+
+1998-03-30 08:43  H.J. Lu  <hjl@gnu.org>
+
+	* sysdeps/alpha/elf/start.S: Let __libc_start_main do most of
+	the init stuff.
+
+1998-03-31  Ulrich Drepper  <drepper@cygnus.com>
+
+	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Wrapper for
+	adjtimex syscall.
+	* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Add
+	adjtimex.
+	Patches by Dominik Kubla <kubla@sundiver.zdv.uni-mainz.de>.
+
+1998-03-31  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+	* Makerules (install): Change comment for libc.so following the
+	libc_nonshared changes.
+
+1998-03-31  Ulrich Drepper  <drepper@cygnus.com>
+
 	* sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Fix typo.
 
 	* iconvdata/gap.pl: Avoid using %#06x.
diff --git a/FAQ.in b/FAQ.in
index b6cc529e80..e0e7342279 100644
--- a/FAQ.in
+++ b/FAQ.in
@@ -474,11 +474,7 @@ probably a missing or incorrect /usr/lib/libc.so file; note that this
 is a small text file now, not a symlink to libc.so.6.  It should look
 something like this:
 
-GROUP ( libc.so.6 ld.so.1 libc.a )
-
-or in ix86/Linux and alpha/Linux:
-
-GROUP ( libc.so.6 ld-linux.so.2 libc.a )
+GROUP ( libc.so.6 libc_nonshared.a )
 
 ??	How can I compile gcc 2.7.2.1 from the gcc source code using
 	glibc 2.x?
diff --git a/Makerules b/Makerules
index c1b8a981c7..108b2fe64f 100644
--- a/Makerules
+++ b/Makerules
@@ -725,7 +725,7 @@ ifndef subdir
 # What we install as libc.so for programs to link against is in fact a
 # link script.  It contains references for the various libraries we need.
 # The libc.so object is not complete since some functions are only defined
-# in libc.a and the dynamic linker is an extra object.
+# in libc_nonshared.a.
 install: $(inst_libdir)/libc.so
 $(inst_libdir)/libc.so: $(common-objpfx)libc.so$(libc.so-version) \
 			$(inst_libdir)/$(patsubst %,$(libtype.oS),\
diff --git a/iconvdata/Makefile b/iconvdata/Makefile
index a71ab0b415..6897ce611f 100644
--- a/iconvdata/Makefile
+++ b/iconvdata/Makefile
@@ -53,12 +53,17 @@ HP-ROMAN8-routines := hp-roman8
 EBCDIC-AT-DE-routines := ebcdic-at-de
 EBCDIC-AT-DE-A-routines := ebcdic-at-de-a
 EBCDIC-CA-FR-routines := ebcdic-ca-fr
-EUC-KR-routines := euckr ksc5601
-JOHAB-routines := johab ksc5601
+EUC-KR-routines := euckr
+JOHAB-routines := johab
 UHC-routines := uhc ksc5601
 libJIS-routines := jis0201 jis0208 jis0212
 libKSC-routines := ksc5601
 
+LDFLAGS-EUC-KR.so = -Wl,-rpath,$(gconvdir) -L$(objpfx) -lKSC
+$(objpfx)EUC-KR.so: $(objpfx)libKSC.so
+LDFLAGS-JOHAB.so = -Wl,-rpath,$(gconvdir) -L$(objpfx) -lKSC
+$(objpfx)JOHAB.so: $(objpfx)libKSC.so
+
 distribute := 8bit-generic.c 8bit-gap.c gap.pl gaptab.pl gconv-modules	    \
 	      iso8859-1.c iso8859-2.c iso8859-3.c iso8859-4.c iso8859-5.c   \
 	      iso8859-6.c iso8859-7.c iso8859-8.c iso8859-9.c iso8859-10.c  \
diff --git a/sysdeps/alpha/elf/start.S b/sysdeps/alpha/elf/start.S
index a67a39a49f..1330d1fda2 100644
--- a/sysdeps/alpha/elf/start.S
+++ b/sysdeps/alpha/elf/start.S
@@ -1,5 +1,5 @@
 /* Startup code for Alpha/ELF.
-   Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson <rth@tamu.edu>
 
@@ -31,56 +31,24 @@ _start:
 1:	ldgp	gp, 0(gp)
 	.prologue 1
 
-  /* Save v0.  When starting a binary via the dynamic linker, s0
-     contains the address of the shared library termination function,
-     which we will register below with atexit() to be called by exit().
-     If we are statically linked, this will be NULL.  */
-	mov	v0, s0
+  /* Load address of the user's main function.  */
+	lda	a0, main
 
-  /* Do essential libc initialization (sp points to argc, argv, and envp)  */
-	jsr	ra, __libc_init_first
-	ldgp	gp, 0(ra)
-
-  /* Now that we have the proper stack frame, register library termination
-     function, if there is any:  */
-
-	beq	s0, 1f
-	mov	s0, a0
-	jsr	ra, atexit
-	ldgp	gp, 0(ra)
-1:
-
-  /* Extract the arguments and environment as encoded on the stack.  */
-	ldl	a0, 0(sp)	/* get argc */
-	lda	a1, 8(sp)	/* get argv */
-	s8addq	a0, a1, a2	/* get envp */
-	addq	a2, 8, a2
-	stq	a2, _environ
+	ldl	a1, 0(sp)	/* get argc */
+	lda	a2, 8(sp)	/* get argv */
 
-	mov	a0, s0		/* tuck them away */
-	mov	a1, s1
-	mov	a2, s2
+  /* Load address of our own entry points to .fini and .init.  */
+	lda	a3, _init
+	lda	a4, _fini
 
-  /* Call _init, the entry point to our own .init section.  */
-	jsr	ra, _init
-	ldgp	gp, 0(ra)
+  /* Store address of the shared library termination function.  */
+	mov	v0, a5
 
-  /* Register our .fini section with atexit.  */
-	lda	a0, _fini
-	jsr	ra, atexit
+  /* Call the user's main function, and exit with its value.
+     But let the libc call main.    */
+	jsr	ra, __libc_start_main
 	ldgp	gp, 0(ra)
 
-  /* Call the user's main and exit with its return value.  */
-	mov	s0, a0
-	mov	s1, a1
-	mov	s2, a2
-
-	jsr	ra, main
-	ldgp	gp, 0(ra)
-
-	mov	v0, a0
-	jsr	ra, exit
-
   /* Die very horribly if exit returns.  Call_pal hlt is callable from
      kernel mode only; this will result in an illegal instruction trap.  */
 	call_pal 0
diff --git a/sysdeps/unix/sysv/linux/alpha/Makefile b/sysdeps/unix/sysv/linux/alpha/Makefile
index 7821e46deb..f830303578 100644
--- a/sysdeps/unix/sysv/linux/alpha/Makefile
+++ b/sysdeps/unix/sysv/linux/alpha/Makefile
@@ -2,7 +2,8 @@ ifeq ($(subdir),misc)
 sysdep_headers += alpha/ptrace.h alpha/regdef.h
 
 sysdep_routines += ieee_get_fp_control ieee_set_fp_control \
-		   sethae ioperm osf_sigprocmask fstatfs statfs llseek
+		   sethae ioperm osf_sigprocmask fstatfs statfs llseek \
+		   adjtimex
 
 # Support old timeval32 entry points
 sysdep_routines += osf_select osf_gettimeofday osf_settimeofday \
diff --git a/sysdeps/unix/sysv/linux/alpha/syscalls.list b/sysdeps/unix/sysv/linux/alpha/syscalls.list
index ea3c9452d2..b380996865 100644
--- a/sysdeps/unix/sysv/linux/alpha/syscalls.list
+++ b/sysdeps/unix/sysv/linux/alpha/syscalls.list
@@ -62,6 +62,9 @@ getresgid	-	getresgid	3	getresgid
 pciconfig_read	EXTRA	pciconfig_read	5	pciconfig_read
 pciconfig_write	EXTRA	pciconfig_write	5	pciconfig_write
 
+# Wrapper for adjtimex.
+adjtimex       -       syscall_adjtimex 1      __syscall_adjtimex syscall_adjtimex
+
 # support old timeval32 entry points
 osf_select	-	osf_select	5	__select_tv32  __select@GLIBC_2.0 select@GLIBC_2.0
 osf_gettimeofday -	osf_gettimeofday 2	__gettimeofday_tv32  __gettimeofday@GLIBC_2.0 gettimeofday@GLIBC_2.0
diff --git a/sysdeps/unix/sysv/linux/bits/socket.h b/sysdeps/unix/sysv/linux/bits/socket.h
index ddf1a64a2f..0938a17a81 100644
--- a/sysdeps/unix/sysv/linux/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/bits/socket.h
@@ -56,7 +56,7 @@ enum __socket_type
 #define	PF_UNSPEC	0	/* Unspecified.  */
 #define	PF_LOCAL	1	/* Local to host (pipes and file-domain).  */
 #define	PF_UNIX		PF_LOCAL /* Old BSD name for PF_LOCAL.  */
-#define	PF_FILE		PF_LOCAL /* POSIX name for PF_LOCAL.  */
+#define	PF_FILE		PF_LOCAL /* Another non-standard name for PF_LOCAL.  */
 #define	PF_INET		2	/* IP protocol family.  */
 #define	PF_AX25		3	/* Amateur Radio AX.25.  */
 #define	PF_IPX		4	/* Novell Internet Protocol.  */