aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog66
-rw-r--r--MakeTAGS11
-rw-r--r--Makerules2
-rw-r--r--manual/nss.texi4
-rw-r--r--manual/pattern.texi2
-rw-r--r--manual/string.texi2
-rw-r--r--nis/rpcsvc/yp.h10
-rw-r--r--nis/rpcsvc/yp.x16
-rw-r--r--nis/rpcsvc/yp_prot.h14
-rw-r--r--stdlib/getsubopt.c4
-rw-r--r--sunrpc/Makefile17
-rw-r--r--sysdeps/i386/asm-syntax.h31
-rw-r--r--sysdeps/libm-ieee754/s_tanhl.c2
-rw-r--r--sysdeps/m68k/asm-syntax.h110
-rw-r--r--sysdeps/unix/sysv/linux/net/ppp_defs.h5
-rw-r--r--time/Makefile1
16 files changed, 257 insertions, 40 deletions
diff --git a/ChangeLog b/ChangeLog
index 4383e66..caf6ddb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,69 @@
+1997-02-04 02:08 Ulrich Drepper <drepper@cygnus.com>
+
+ * Version 2.0.1 net release.
+
+1997-02-03 23:34 Stephen L Moshier <moshier@world.std.com>
+
+ * sysdeps/libm-ieee754/s_tanhl.c: Fix backwards result sign.
+
+1997-02-03 19:59 Ulrich Drepper <drepper@cygnus.com>
+
+ * stdlib/getsubopt.c: Don't return `=' for suboption which has
+ a parameter. Reported by Gary L. Hennigan <glhenni@cs.sandia.gov>.
+
+1997-02-03 18:20 Thorsten Kukuk <kukuk@weber.uni-paderborn.de>
+
+ * nis/rpcsvc/yp_proh.h (ypresp_key_val): Also change order of
+ values as in yp.x and yp.h.
+
+1997-02-03 16:58 Ulrich Drepper <drepper@cygnus.com>
+
+ * nis/rpcsvc/yp.x (struct ypresp_key_val): Revert patch from
+ 1997-02-03 02:17. Sun's implementation internally corrects
+ this bug but we don't want to hide this from the user.
+ * nis/rpcsvc/yp.h: Likewise.
+
+1997-02-01 18:28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * sysdeps/unix/sysv/linux/net/ppp_defs.h: Protect against multiple
+ inclusion.
+
+1997-02-02 14:56 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * manual/nss.texi, manual/pattern.texi, manual/string.texi: Doc
+ fixes.
+
+1997-02-02 11:51 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * MakeTAGS (sysdep-sources, sysdep-headers): New variables.
+ (all-sources, all-headers): Use them instead of $(sources) and
+ $(headers) when searching in sysdep directories.
+
+1997-02-02 11:49 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * Makerules (REAL_MAKE_VERSION): Use internal make function
+ instead of shelling out.
+
+1997-02-02 11:47 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * time/Makefile (install-test-data): Remove mkdir command, zic can
+ handle that gracefully.
+
+1997-02-03 14:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * sysdeps/m68k/asm-syntax.h: Add back file which got lost sometime
+ somehow.
+
+1997-02-02 07:46 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * sunrpc/Makefile: Check $(cross-compiling) only after including
+ ../Makeconfig.
+ ($(objpfx)rpcsvc/%.h, $(objpfx)x%.c): Add empty command to force
+ being considered as a rule.
+ (generated): Add stamp files before the inclusion of Makerules to
+ magically mark them as not being intermediate via the `generated'
+ target.
+
1997-02-03 02:33 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-deps.c (_dl_map_object_deps): Handle multiple AUXILIARY
diff --git a/MakeTAGS b/MakeTAGS
index c6f497e..f9e073b 100644
--- a/MakeTAGS
+++ b/MakeTAGS
@@ -84,17 +84,22 @@ sources += $(foreach lib,$(extra-libs),$($(lib)-routines:=.c))
# All different versions of $(sources), preserving the configured sysdep
# directory order.
+# Files that are found in the current directory cannot occur in
+# sysdep directories, so don't bother searching them.
+sysdep-sources := $(filter-out $(wildcard $(sources)), $(sources))
all-sources = $(wildcard $(sort $(sources) $(sources:.c=.S) $(sources:.c=.s) \
$(others:=.c) $(tests:=.c))) \
$(foreach dir,$(all-dirs),\
$(wildcard \
$(addprefix $(dir)/,\
- $(sort $(sources) $(sources:.c=.S) \
- $(sources:.c=.s)))))
+ $(sort $(sysdep-sources) \
+ $(sysdep-sources:.c=.S) \
+ $(sysdep-sources:.c=.s)))))
+sysdep-headers := $(filter-out $(wildcard $(headers)), $(headers))
all-headers = $(wildcard $(headers)) \
$(foreach dir,$(all-dirs),\
- $(wildcard $(addprefix $(dir)/,$(headers))))
+ $(wildcard $(addprefix $(dir)/,$(sysdep-headers))))
tags_sources := $(strip $(tags_sources))
diff --git a/Makerules b/Makerules
index a8509bc..881d584 100644
--- a/Makerules
+++ b/Makerules
@@ -26,7 +26,7 @@ This makefile requires GNU Make.
endif
REQUIRED_MAKE_VERSION = 3.74
-REAL_MAKE_VERSION = $(shell echo "$(MAKE_VERSION)" | sed 's/ .*//')
+REAL_MAKE_VERSION = $(firstword $(MAKE_VERSION))
ifneq ($(REQUIRED_MAKE_VERSION), \
$(firstword $(sort $(REAL_MAKE_VERSION) $(REQUIRED_MAKE_VERSION))))
diff --git a/manual/nss.texi b/manual/nss.texi
index f24d7dd..ba333e0 100644
--- a/manual/nss.texi
+++ b/manual/nss.texi
@@ -8,7 +8,7 @@
@cindex databases
Various functions in the C Library need to be configured to work
correctly in the local environment. Traditionally, this was done by
-using files (e.g., @file{/etc/passwd}), but other nameservices (line the
+using files (e.g., @file{/etc/passwd}), but other nameservices (like the
Network Information Service (NIS) and the Domain Name Service (DNS))
became popular, and were hacked into the C library, usually with a fixed
search order (@pxref{frobnicate, , ,jargon, The Jargon File}).
@@ -20,7 +20,7 @@ scheme @dfn{Name Service Switch} (NSS).
Though the interface might be similar to Sun's version there is no
common code. We never saw any source code of Sun's implementation and
-so the internal interface is incompatible. This is also manifests in the
+so the internal interface is incompatible. This also manifests in the
file names we use as we will see later.
diff --git a/manual/pattern.texi b/manual/pattern.texi
index b1e7206..6ac481a 100644
--- a/manual/pattern.texi
+++ b/manual/pattern.texi
@@ -70,7 +70,7 @@ cannot match @samp{.} as the first character of @var{string}.
If you set both @code{FNM_PERIOD} and @code{FNM_FILE_NAME}, then the
special treatment applies to @samp{.} following @samp{/} as well as to
@samp{.} at the beginning of @var{string}. (The shell uses the
-@code{FNM_PERIOD} and @code{FNM_FILE_NAME} falgs together for matching
+@code{FNM_PERIOD} and @code{FNM_FILE_NAME} flags together for matching
file names.)
@comment fnmatch.h
diff --git a/manual/string.texi b/manual/string.texi
index 73a29f4..efcc23e 100644
--- a/manual/string.texi
+++ b/manual/string.texi
@@ -601,7 +601,7 @@ strcmp ("hello", "world")
@result{} -15 /* @r{The character @code{'h'} comes before @code{'w'}.} */
strcmp ("hello", "hello, world")
@result{} -44 /* @r{Comparing a null character against a comma.} */
-strncmp ("hello", "hello, world"", 5)
+strncmp ("hello", "hello, world", 5)
@result{} 0 /* @r{The initial 5 characters are the same.} */
strncmp ("hello, world", "hello, stupid world!!!", 5)
@result{} 0 /* @r{The initial 5 characters are the same.} */
diff --git a/nis/rpcsvc/yp.h b/nis/rpcsvc/yp.h
index 0bee83b..40914c5 100644
--- a/nis/rpcsvc/yp.h
+++ b/nis/rpcsvc/yp.h
@@ -221,8 +221,18 @@ bool_t xdr_ypresp_val();
struct ypresp_key_val {
ypstat stat;
+#ifdef STUPID_SUN_BUG
+ /* This is the form as distributed by Sun. But even the Sun NIS
+ servers expect the values in the other order. So their
+ implementation somehow must change the order internally. We
+ don't want to follow this bad example since the user should be
+ able to use rpcgen on this file. */
keydat key;
valdat val;
+#else
+ valdat val;
+ keydat key;
+#endif
};
typedef struct ypresp_key_val ypresp_key_val;
#ifdef __cplusplus
diff --git a/nis/rpcsvc/yp.x b/nis/rpcsvc/yp.x
index 6be2782..b1b2565 100644
--- a/nis/rpcsvc/yp.x
+++ b/nis/rpcsvc/yp.x
@@ -114,8 +114,18 @@ struct ypresp_val {
struct ypresp_key_val {
ypstat stat;
+#ifdef STUPID_SUN_BUG
+ /* This is the form as distributed by Sun. But even the Sun NIS
+ servers expect the values in the other order. So their
+ implementation somehow must change the order internally. We
+ don't want to follow this bad example since the user should be
+ able to use rpcgen on this file. */
keydat key;
valdat val;
+#else
+ valdat val;
+ keydat key;
+#endif
};
@@ -267,6 +277,12 @@ program YPPUSH_XFRRESPPROG {
YPPUSHPROC_NULL(void) = 0;
#ifdef STUPID_SUN_BUG
+ /* This is the form as distributed by Sun. But even
+ the Sun NIS servers expect the values in the other
+ order. So their implementation somehow must change
+ the order internally. We don't want to follow this
+ bad example since the user should be able to use
+ rpcgen on this file. */
yppushresp_xfr
YPPUSHPROC_XFRRESP(void) = 1;
#else
diff --git a/nis/rpcsvc/yp_prot.h b/nis/rpcsvc/yp_prot.h
index bee8435..0c5a710 100644
--- a/nis/rpcsvc/yp_prot.h
+++ b/nis/rpcsvc/yp_prot.h
@@ -154,8 +154,18 @@ struct ypresp_val {
struct ypresp_key_val {
ypstat status;
- keydat keydat;
- valdat valdat;
+#ifdef STUPID_SUN_BUG
+ /* This is the form as distributed by Sun. But even the Sun NIS
+ servers expect the values in the other order. So their
+ implementation somehow must change the order internally. We
+ don't want to follow this bad example since the user should be
+ able to use rpcgen on this file. */
+ keydat key;
+ valdat val;
+#else
+ valdat val;
+ keydat key;
+#endif
};
struct ypresp_master {
diff --git a/stdlib/getsubopt.c b/stdlib/getsubopt.c
index fa9eb06..ecdc1ed 100644
--- a/stdlib/getsubopt.c
+++ b/stdlib/getsubopt.c
@@ -1,5 +1,5 @@
/* Parse comma separate list into words.
- Copyright (C) 1996 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -57,7 +57,7 @@ getsubopt (optionp, tokens, valuep)
&& tokens[cnt][vstart - *optionp] == '\0')
{
/* We found the current option in TOKENS. */
- *valuep = vstart != endp ? vstart : NULL;
+ *valuep = vstart != endp ? vstart + 1 : NULL;
if (*endp != '\0')
*endp++ = '\0';
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index 9c43415..2b232ac 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -54,11 +54,8 @@ headers = $(addprefix rpc/,auth.h auth_unix.h clnt.h netdb.h pmap_clnt.h \
svc_auth.h types.h xdr.h auth_des.h) \
$(rpcsvc:%=rpcsvc/%)
install-others = $(inst_sysconfdir)/rpc
-ifeq (no,$(cross-compiling))
-headers += $(rpcsvc:%.x=rpcsvc/%.h)
-install-others += $(inst_includedir)/rpcsvc/bootparam_prot.h
-endif
-generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c)
+generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) \
+ $(rpcsvc:%.x=rpcsvc/%.stmp) $(rpcsvc:%.x=x%.stmp)
routines := auth_none auth_unix authuxprot bindrsvprt \
clnt_gen clnt_perr clnt_raw clnt_simp clnt_tcp \
@@ -89,6 +86,8 @@ include ../Makeconfig
ifeq (no,$(cross-compiling))
# We can only build this library if we can run the rpcgen we build.
+headers += $(rpcsvc:%.x=rpcsvc/%.h)
+install-others += $(inst_includedir)/rpcsvc/bootparam_prot.h
extra-libs := librpcsvc
extra-libs-others := librpcsvc # Make it in `others' pass, not `lib' pass.
librpcsvc-routines = $(rpcsvc:%.x=x%)
@@ -120,8 +119,7 @@ defines := $(defines) -D_PATH_RPC='"$(sysconfdir)/rpc"'
# Generate the rpcsvc headers with rpcgen.
# We use a stamp file to avoid unnessary recompilation each time rpcgen is
# relinked.
-$(objpfx)rpcsvc/%.h: $(objpfx)rpcsvc/%.stmp
- @:
+$(rpcsvc:%.x=$(objpfx)rpcsvc/%.h): $(objpfx)rpcsvc/%.h: $(objpfx)rpcsvc/%.stmp;
$(objpfx)rpcsvc/%.stmp: rpcsvc/%.x $(objpfx)rpcgen
$(make-target-directory)
-@rm -f ${@:stmp=T} $@
@@ -132,8 +130,7 @@ $(objpfx)rpcsvc/%.stmp: rpcsvc/%.x $(objpfx)rpcgen
touch $@
# Generate the rpcsvc XDR functions with rpcgen.
-$(objpfx)x%.c: $(objpfx)x%.stmp
- @:
+$(rpcsvc:%.x=$(objpfx)x%.c): $(objpfx)x%.c: $(objpfx)x%.stmp;
$(objpfx)x%.stmp: rpcsvc/%.x $(objpfx)rpcgen
-@rm -f ${@:stmp=T} $@
$(rpcgen-cmd) -c $< -o ${@:stmp=T}
@@ -142,8 +139,6 @@ $(objpfx)x%.stmp: rpcsvc/%.x $(objpfx)rpcgen
else mv -f ${@:stmp=T} ${@:stmp=c}; fi
touch $@
-generated += $(rpcsvc:%.x=rpcsvc/%.stmp) $(rpcsvc:%.x=x%.stmp)
-
# The generated source files depend on the corresponding generated headers.
# Gratuitous dependency on generated .c file here just gets it mentioned to
# avoid being an intermediate file and getting removed.
diff --git a/sysdeps/i386/asm-syntax.h b/sysdeps/i386/asm-syntax.h
index 6e28776..fe3995f 100644
--- a/sysdeps/i386/asm-syntax.h
+++ b/sysdeps/i386/asm-syntax.h
@@ -1,22 +1,23 @@
-/* asm.h -- Definitions for x86 syntax variations.
+/* Definitions for x86 syntax variations.
+ Copyright (C) 1992, 1994, 1995, 1997 Free Software Foundation, Inc.
-Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
+ This file is part of the GNU C Library. Its master source is NOT part of
+ the C library, however. The master source lives in the GNU MP Library.
-This file is part of the GNU MP Library.
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
-The GNU MP Library is free software; you can redistribute it and/or modify
-it under the terms of the GNU Library General Public License as published by
-the Free Software Foundation; either version 2 of the License, or (at your
-option) any later version.
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
-The GNU MP Library is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
-License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#undef ALIGN
diff --git a/sysdeps/libm-ieee754/s_tanhl.c b/sysdeps/libm-ieee754/s_tanhl.c
index 9863af6..f7ea3f4 100644
--- a/sysdeps/libm-ieee754/s_tanhl.c
+++ b/sysdeps/libm-ieee754/s_tanhl.c
@@ -87,6 +87,6 @@ static long double one=1.0, two=2.0, tiny = 1.0e-4900L;
} else {
z = one - tiny; /* raised inexact flag */
}
- return (se>0x7fff)? z: -z;
+ return (se>0x7fff)? -z: z;
}
weak_alias (__tanhl, tanhl)
diff --git a/sysdeps/m68k/asm-syntax.h b/sysdeps/m68k/asm-syntax.h
new file mode 100644
index 0000000..fbb0e2f
--- /dev/null
+++ b/sysdeps/m68k/asm-syntax.h
@@ -0,0 +1,110 @@
+/* Definitions for 68k syntax variations.
+ Copyright (C) 1992, 1994, 1996, 1997 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library. Its master source is NOT part of
+ the C library, however. The master source lives in the GNU MP Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#ifdef HAVE_ELF
+
+/* ELF uses byte-counts for .align, most others use log2 of count of bytes. */
+#define ALIGNARG(log2) 1<<log2
+/* For ELF we need the `.type' directive to make shared libs work right. */
+#define PROLOG(name) .type name,@function
+#define EPILOG(name) .size name,.-name
+/* For ELF we need to prefix register names and local labels. */
+#ifdef __STDC__
+#define R_(r) %##r
+#define R(r) R_(r)
+#define L(label) .##label
+#else
+#define R(r) %/**/r
+#define L(label) ./**/label
+#endif
+
+#else
+
+#define ALIGNARG(log2) log2
+#define PROLOG(name) /* Nothing. */
+#define EPILOG(name) /* Nothing. */
+#define R(r) r
+#define L(label) label
+
+#endif
+
+#ifdef MIT_SYNTAX
+#define MEM(base)R(base)@
+#define MEM_DISP(base,displacement)R(base)@(displacement)
+#define MEM_INDX(base,idx,size_suffix)R(base)@(R(idx):size_suffix)
+#define MEM_INDX1(base,idx,size_suffix,scale)R(base)@(R(idx):size_suffix:scale)
+#define MEM_PREDEC(memory_base)R(memory_base)@-
+#define MEM_POSTINC(memory_base)R(memory_base)@+
+#define TEXT .text
+#define ALIGN .even
+#define GLOBL .globl
+/* Use variable sized opcodes. */
+#define bcc jcc
+#define bcs jcs
+#define bls jls
+#define beq jeq
+#define bne jne
+#define bra jra
+#endif
+
+#ifdef MOTOROLA_SYNTAX
+#define MEM(base)(R(base))
+#define MEM_DISP(base,displacement)(displacement,R(base))
+#define MEM_PREDEC(memory_base)-(R(memory_base))
+#define MEM_POSTINC(memory_base)(R(memory_base))+
+#ifdef __STDC__
+#define MEM_INDX_(base,idx,size_suffix)(R(base),R(idx##.##size_suffix))
+#define MEM_INDX(base,idx,size_suffix)MEM_INDX_(base,idx,size_suffix)
+#define MEM_INDX1_(base,idx,size_suffix,scale)(R(base),R(idx##.##size_suffix*scale))
+#define MEM_INDX1(base,idx,size_suffix,scale)MEM_INDX1_(base,idx,size_suffix,scale)
+#else
+#define MEM_INDX(base,idx,size_suffix)(R(base),R(idx).size_suffix)
+#define MEM_INDX1(base,idx,size_suffix,scale)(R(base),R(idx).size_suffix*scale)
+#endif
+#define TEXT .text
+#define ALIGN .align ALIGNARG(2)
+#define GLOBL .globl
+#define bcc jbcc
+#define bcs jbcs
+#define bls jbls
+#define beq jbeq
+#define bne jbne
+#define bra jbra
+#define movel move.l
+#define moveml movem.l
+#define moveql moveq.l
+#define cmpl cmp.l
+#define orl or.l
+#define clrl clr.l
+#define eorw eor.w
+#define lsrl lsr.l
+#define lsll lsl.l
+#define roxrl roxr.l
+#define roxll roxl.l
+#define addl add.l
+#define addxl addx.l
+#define addql addq.l
+#define subl sub.l
+#define subxl subx.l
+#define subql subq.l
+#define negl neg.l
+#define mulul mulu.l
+#endif
diff --git a/sysdeps/unix/sysv/linux/net/ppp_defs.h b/sysdeps/unix/sysv/linux/net/ppp_defs.h
index 21a33b2..dfd40e1 100644
--- a/sysdeps/unix/sysv/linux/net/ppp_defs.h
+++ b/sysdeps/unix/sysv/linux/net/ppp_defs.h
@@ -1,3 +1,8 @@
+#ifndef _NET_PPP_DEFS_H
+#define _NET_PPP_DEFS_H 1
+
#include <sys/types.h>
typedef u_int32_t __u32;
#include <linux/ppp_defs.h>
+
+#endif /* net/ppp_defs.h */
diff --git a/time/Makefile b/time/Makefile
index 08a19a1..d90bc87 100644
--- a/time/Makefile
+++ b/time/Makefile
@@ -169,7 +169,6 @@ CFLAGS-tzset.c = $(tz-cflags)
.PHONY: install-test-data
install-test-data: northamerica $(objpfx)zic $(leapseconds) yearistype \
etcetera simplebackw
- -mkdir $(objpfx)testdata
$(built-program-cmd) -d $(objpfx)testdata -L $(leapseconds) \
-y yearistype northamerica
$(built-program-cmd) -d $(objpfx)testdata -L $(leapseconds) \