Skip to content

Commit

Permalink
Sun May 26 15:15:08 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
Browse files Browse the repository at this point in the history
	* stdlib/ldiv.c: Deansideclized.

Sun May 26 19:39:53 1996  Ulrich Drepper  <drepper@cygnus.com>

	* intl/loadmsgcat.c (_nl_load_domain): Test correct variable
	after malloc.

	* string/Makefile (tester-ENV): New variable to suppress message
 	translation in test.

	* string/tester.c: Add tests for strtok_r and strsep.

	* sysdeps/i386/i486/strcat.S: Correct some more 8bit operation
	<-> 32 bit operand conflicts.

	* sysdeps/i386/strsep.S: Wrapper around <sysdeps/i386/strtok.S>
	to produce strsep function.
	* sysdeps/i386/strtok.S: Optimized implementation of strtok
	function.
	* sysdeps/i386/strtok_r.S: Wrapper around <sysdeps/i386/strtok.S>
	to produce strtok_r function.

	* sysdeps/generic/strtok.c: Moved here from string/strtok.c.
	Corrected example in comment.

	* string/Makefile (routines): Add strtok_r.
	* sysdeps/generic/strtok_r.c: New file.  Implement reentrant version
	of strtok_r.
	* string/string.h: Add prototype for strtok_r.
	* wcsmbs/wcstok.c: Handle illegal SAVE_PTR argument the same
	as in strtok_r.

Sun May 26 13:28:23 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* time/tzset.c (__tzset): Ignore leading : in $TZ; always try tzfile
	first and fall back to 1003.1 syntax only if it fails.

	* time/Makefile (install-others): Also install posix/ZONE and
	right/ZONE for each ZONE in $(zonenames).
	(z.% rule): Generate rules for right/ZONE and posix/ZONE targets too,
	the difference begin leapseconds vs /dev/null as 3rd dep.  For
	original ZONE targets use $(leapseconds), to be set in Makeconfig.
	(target-zone-flavor): New variable.
	(tzcompile): Use it to get the right -d for posix/ and right/ flavors.
	* Makeconfig (leapseconds): New variable.

	* mach/Machrules (%.udeps rule): Depend on Machrules.
	Emit deps for .uh and .__h files.
	(%.uh, %.__h rules): Don't depend on %.defs; use #include <$*.defs>
	instead.

Sun May 26 01:06:47 1996  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/Makefile (routines): Add llabs, lldiv.
	* stdlib/llabs.c: New file.  Implementation of return
	absolute value of long long argument.
	* stdlib/lldiv.c: New file.  Implementation of division with remainder
	of long long argument.
	* stdlib/stdlib.h [__USE_GNU] (lldiv_t): New type for lldiv
	function.
	Define prototypes for lldiv and llabs functions.

	* locale/C-collate.c: Initialize _NL_COLLATE_NRULES element.

	* stdlib/strtod.c: Replace wchar_t with wint_t.  The later is
	really the type for a single wide character.

	* string/strxfrm.c (print_val): Define separate version for
	use as wcsxfrm.  Here we don't need UTF8 encoding.

	* wcsmbs/wchar.h:  gcc-2.7.2-960517 finally introduces wint_t
	in <stddef.h>.  Use this value and only for older gcc version
	define in place.
	(uwchar_t): Remove definition.

	* wcsmbs/wcscmp.c, wcsmbs/wcscoll.c, wcsmbs/wcsncmp.c,
	wcsmbs/wcsxfrm.c, wcsmbs/wmemcmp.c: : Don't use uwchar_t as unsigned
	type.  wint_t is intended for this.

Sat May 25 14:10:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* sysdeps/unix/bsd/direntry.h: Use [1] instead of [0] for d_name to
	quiet -ansi -pedantic.
	* sysdeps/unix/common/direntry.h: Likewise.

	* login/Makefile (headers): Add lastlog.h.
	* login/lastlog.h: New file.

	* login/Makefile (CFLAGS): Don't append -D_THREAD_SAFE.
	* login/utmp.h [_REENTRANT || _THREAD_SAFE]: Replace this conditional
	with #ifdef __USE_REENTRANT.

	* features.h (__GNU_LIBRARY__): Set to 6.
	[_GNU_SOURCE] (_POSIX_SOURCE, _POSIX_C_SOURCE, _BSD_SOURCE,
	_SVID_SOURCE): Make sure they are all defined.

	* sysdeps/unix/sysv/linux/gnu/types.h: Instead of including
	<linux/posix_types.h>, define _LINUX_TYPES_DONT_EXPORT and then
	include <linux/types.h>.

	* resource/sys/resource.h: Remove trailing commas from enums.

	* sysdeps/generic/netinet/in.h: Remove trailing commas from enums.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
  • Loading branch information
Roland McGrath committed May 26, 1996
1 parent 27a1107 commit 59dd864
Show file tree
Hide file tree
Showing 41 changed files with 1,042 additions and 152 deletions.
107 changes: 107 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,112 @@
Sun May 26 15:15:08 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>

* stdlib/ldiv.c: Deansideclized.

Sun May 26 19:39:53 1996 Ulrich Drepper <drepper@cygnus.com>

* intl/loadmsgcat.c (_nl_load_domain): Test correct variable
after malloc.

* string/Makefile (tester-ENV): New variable to suppress message
translation in test.

* string/tester.c: Add tests for strtok_r and strsep.

* sysdeps/i386/i486/strcat.S: Correct some more 8bit operation
<-> 32 bit operand conflicts.

* sysdeps/i386/strsep.S: Wrapper around <sysdeps/i386/strtok.S>
to produce strsep function.
* sysdeps/i386/strtok.S: Optimized implementation of strtok
function.
* sysdeps/i386/strtok_r.S: Wrapper around <sysdeps/i386/strtok.S>
to produce strtok_r function.

* sysdeps/generic/strtok.c: Moved here from string/strtok.c.
Corrected example in comment.

* string/Makefile (routines): Add strtok_r.
* sysdeps/generic/strtok_r.c: New file. Implement reentrant version
of strtok_r.
* string/string.h: Add prototype for strtok_r.
* wcsmbs/wcstok.c: Handle illegal SAVE_PTR argument the same
as in strtok_r.

Sun May 26 13:28:23 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>

* time/tzset.c (__tzset): Ignore leading : in $TZ; always try tzfile
first and fall back to 1003.1 syntax only if it fails.

* time/Makefile (install-others): Also install posix/ZONE and
right/ZONE for each ZONE in $(zonenames).
(z.% rule): Generate rules for right/ZONE and posix/ZONE targets too,
the difference begin leapseconds vs /dev/null as 3rd dep. For
original ZONE targets use $(leapseconds), to be set in Makeconfig.
(target-zone-flavor): New variable.
(tzcompile): Use it to get the right -d for posix/ and right/ flavors.
* Makeconfig (leapseconds): New variable.

* mach/Machrules (%.udeps rule): Depend on Machrules.
Emit deps for .uh and .__h files.
(%.uh, %.__h rules): Don't depend on %.defs; use #include <$*.defs>
instead.

Sun May 26 01:06:47 1996 Ulrich Drepper <drepper@cygnus.com>

* stdlib/Makefile (routines): Add llabs, lldiv.
* stdlib/llabs.c: New file. Implementation of return
absolute value of long long argument.
* stdlib/lldiv.c: New file. Implementation of division with remainder
of long long argument.
* stdlib/stdlib.h [__USE_GNU] (lldiv_t): New type for lldiv
function.
Define prototypes for lldiv and llabs functions.

* locale/C-collate.c: Initialize _NL_COLLATE_NRULES element.

* stdlib/strtod.c: Replace wchar_t with wint_t. The later is
really the type for a single wide character.

* string/strxfrm.c (print_val): Define separate version for
use as wcsxfrm. Here we don't need UTF8 encoding.

* wcsmbs/wchar.h: gcc-2.7.2-960517 finally introduces wint_t
in <stddef.h>. Use this value and only for older gcc version
define in place.
(uwchar_t): Remove definition.

* wcsmbs/wcscmp.c, wcsmbs/wcscoll.c, wcsmbs/wcsncmp.c,
wcsmbs/wcsxfrm.c, wcsmbs/wmemcmp.c: : Don't use uwchar_t as unsigned
type. wint_t is intended for this.

Sat May 25 14:10:19 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/unix/bsd/direntry.h: Use [1] instead of [0] for d_name to
quiet -ansi -pedantic.
* sysdeps/unix/common/direntry.h: Likewise.

* login/Makefile (headers): Add lastlog.h.
* login/lastlog.h: New file.

* login/Makefile (CFLAGS): Don't append -D_THREAD_SAFE.
* login/utmp.h [_REENTRANT || _THREAD_SAFE]: Replace this conditional
with #ifdef __USE_REENTRANT.

* features.h (__GNU_LIBRARY__): Set to 6.
[_GNU_SOURCE] (_POSIX_SOURCE, _POSIX_C_SOURCE, _BSD_SOURCE,
_SVID_SOURCE): Make sure they are all defined.

* sysdeps/unix/sysv/linux/gnu/types.h: Instead of including
<linux/posix_types.h>, define _LINUX_TYPES_DONT_EXPORT and then
include <linux/types.h>.

* resource/sys/resource.h: Remove trailing commas from enums.

Fri May 24 17:30:50 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/generic/netinet/in.h: Remove trailing commas from enums.
* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.

* login/getutline_r.c: Include string.h.

* Rules (static-only-routines): Restore the rule to make these .so's
Expand Down
10 changes: 10 additions & 0 deletions Makeconfig
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,16 @@ ifndef localtime-file
localtime-file = $(sysconfdir)/localtime
endif

# What to use for leap second specifications in compiling the default
# timezone files. Set this to `/dev/null' for no leap second handling as
# 1003.1 requires, or to `leapseconds' for proper leap second handling.
# Both zone flavors are always available as `posix/ZONE' and `right/ZONE'.
# This variable determines the default: if it's `/dev/null',
# ZONE==posix/ZONE; if it's `leapseconds', ZONE==right/ZONE.
ifndef leapseconds
leapseconds = /dev/null
endif

# What timezone's DST rules should be used when a POSIX-style TZ
# environment variable doesn't specify any rules. For 1003.1 compliance
# this timezone must use rules that are as U.S. federal law defines DST.
Expand Down
4 changes: 2 additions & 2 deletions config.guess
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88100 ] ; then
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-o ${TARGET_BINARY_INTERFACE}x = x ] ; then
echo m88k-dg-dgux${UNAME_RELEASE}
Expand Down Expand Up @@ -211,7 +211,7 @@ EOF
echo romp-ibm-bsd4.4
exit 0 ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
Expand Down
31 changes: 20 additions & 11 deletions features.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ Cambridge, MA 02139, USA. */
The macro `__GNU_LIBRARY__' is defined by this file unconditionally.
All macros defined by this file are defined as 1.
All macros listed above as possibly being defined by this file are
explicitly undefined if they are not explicitly defined.
Feature-test macros that are not defined by the user or compiler
Expand Down Expand Up @@ -80,32 +79,42 @@ Cambridge, MA 02139, USA. */
#define __FAVOR_BSD 1
#endif

/* If _GNU_SOURCE was defined by the user, turn on all the other features. */
#ifdef _GNU_SOURCE
/* If the user specifies some of the following without _GNU_SOURCE,
they are mutually exclusive. But they all default below to on,
so undefine them to get all the features turned on for _GNU_SOURCE. */
#undef _POSIX_SOURCE
#undef _POSIX_C_SOURCE
#undef _BSD_SOURCE
#undef _SVID_SOURCE
#endif

/* If nothing (other than _GNU_SOURCE) is defined,
define _BSD_SOURCE and _SVID_SOURCE. */
#if (!defined(__STRICT_ANSI__) && !defined(_POSIX_SOURCE) && \
!defined(_POSIX_C_SOURCE) && !defined(_BSD_SOURCE) && \
!defined(_SVID_SOURCE))
#if (!defined (__STRICT_ANSI__) && !defined (_POSIX_SOURCE) && \
!defined (_POSIX_C_SOURCE) && !defined (_BSD_SOURCE) && \
!defined (_SVID_SOURCE))
#define _BSD_SOURCE 1
#define _SVID_SOURCE 1
#endif

/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2. */
#if (!defined(__STRICT_ANSI__) && !defined(_POSIX_SOURCE) && \
!defined(_POSIX_C_SOURCE))
#if (!defined (__STRICT_ANSI__) && !defined (_POSIX_SOURCE) && \
!defined (_POSIX_C_SOURCE))
#define _POSIX_SOURCE 1
#define _POSIX_C_SOURCE 2
#endif

#if defined(_POSIX_SOURCE) || _POSIX_C_SOURCE >= 1
#if defined (_POSIX_SOURCE) || _POSIX_C_SOURCE >= 1
#define __USE_POSIX 1
#endif

#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 2
#if defined (_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 2
#define __USE_POSIX2 1
#endif

#if defined(_BSD_SOURCE) || defined(_SVID_SOURCE)
#if defined (_BSD_SOURCE) || defined (_SVID_SOURCE)
#define __USE_MISC 1
#endif

Expand Down Expand Up @@ -133,10 +142,10 @@ Cambridge, MA 02139, USA. */
the shared C library corresponding to this set of header files. */

#undef __GNU_LIBRARY__
#define __GNU_LIBRARY__ 5
#define __GNU_LIBRARY__ 6


#if !defined(__GNUC__) || __GNUC__ < 2
#if !defined (__GNUC__) || __GNUC__ < 2
/* In GCC version 2, (__extension__ EXPR) will not complain
about GCC extensions used in EXPR under -ansi or -pedantic. */
#define __extension__
Expand Down
2 changes: 1 addition & 1 deletion intl/loadmsgcat.c
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ _nl_load_domain (domain_file)

domain_file->data
= (struct loaded_domain *) malloc (sizeof (struct loaded_domain *));
if (domain->data == NULL)
if (domain_file->data == NULL)
return;

domain = (struct loaded_domain *) domain_file->data;
Expand Down
5 changes: 4 additions & 1 deletion locale/C-collate.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,8 @@ const struct locale_data _nl_C_LC_COLLATE =
{
_nl_C_name,
NULL, 0, /* no file mapped */
0,
1,
{
{ word: 0 }
}
};
4 changes: 1 addition & 3 deletions login/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

subdir := login

headers := utmp.h utmpbits.h
headers := utmp.h utmpbits.h lastlog.h

routines := setutent endutent getutent getutid getutline pututline \
setutent_r endutent_r getutent_r getutid_r getutline_r \
Expand All @@ -34,5 +34,3 @@ libutil-routines:= login login_tty logout logwtmp pty


include ../Rules

override CFLAGS += -D_THREAD_SAFE
4 changes: 4 additions & 0 deletions login/lastlog.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/* This header file is used in 4.3BSD to define `struct lastlog',
which we define in <utmpbits.h>. */

#include <utmp.h>
4 changes: 2 additions & 2 deletions login/utmp.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ extern struct utmp *getutline __P ((__const struct utmp *__line));
extern struct utmp *pututline __P ((__const struct utmp *__utmp_ptr));


#if defined(_REENTRANT) || defined(_THREAD_SAFE)
#ifdef __USE_REENTRANT
/* Define the data structure needed for the reentrent version. */
struct utmp_data
{
Expand All @@ -89,7 +89,7 @@ extern int getutline_r __P ((__const struct utmp *__line, struct utmp **__utmp,
extern int pututline_r __P ((__const struct utmp *__utmp_ptr,
struct utmp_data *__utmp_data));

#endif /* _REENTRENT || _THREAD_SAFE */
#endif /* Use reentrant. */

__END_DECLS

Expand Down
15 changes: 9 additions & 6 deletions mach/Machrules
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,12 @@ $(patsubst %,$(objpfx)%.ustamp,$(user-interfaces)): $(objpfx)%.ustamp:
done
touch $@
-include $(patsubst %,$(objpfx)%.udeps,$(user-interfaces))
$(patsubst %,$(objpfx)%.udeps,$(user-interfaces)): $(objpfx)%.udeps:
$(patsubst %,$(objpfx)%.udeps,$(user-interfaces)):
$(objpfx)%.udeps: $(..)mach/Machrules
$(make-target-directory)
echo '#include <$*.defs>' | \
$(CC) $(CPPFLAGS) -M -x c - | \
sed -e 's,- *:,$@ $(@:.udeps=.ustamp) \
sed -e 's,- *:,$@ $(@:.udeps=.ustamp) $(@:.udeps=.uh) $(@:.udeps=.__h)\
$(@:.udeps=_server.c) $(@:.udeps=_server.h):,' \
$(sed-remove-objpfx) > $@.new
mv -f $@.new $@
Expand All @@ -137,16 +138,18 @@ $(objpfx)%_server.c $(objpfx)%_server.h:

# To get header files that declare both the straight and __ functions,
# we generate two files and paste them together.
$(objpfx)%.uh: %.defs; $(mig.uh)
$(objpfx)%.uh:; $(mig.uh)
define mig.uh
$(make-target-directory)
$(MIG) $< $(MIGFLAGS) \
echo '#include <$*.defs>' | \
$(MIG) - /dev/null $(MIGFLAGS) \
-header $@ -server /dev/null -user /dev/null
endef
$(objpfx)%.__h: %.defs; $(mig.__h)
$(objpfx)%.__h:; $(mig.__h)
define mig.__h
$(make-target-directory)
$(MIG) $< $(MIGFLAGS) -prefix __ \
echo '#include <$*.defs>' | \
$(MIG) - /dev/null $(MIGFLAGS) -prefix __ \
-header $@ -server /dev/null -user /dev/null
endef

Expand Down
6 changes: 3 additions & 3 deletions resource/sys/resource.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Copyright (C) 1992, 1994 Free Software Foundation, Inc.
/* Copyright (C) 1992, 1994, 1996 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
Expand Down Expand Up @@ -59,7 +59,7 @@ enum __rusage_who
RUSAGE_SELF = 0,
#define RUSAGE_SELF RUSAGE_SELF
/* All of its terminated child processes. */
RUSAGE_CHILDREN = -1,
RUSAGE_CHILDREN = -1
#define RUSAGE_CHILDREN RUSAGE_CHILDREN
};

Expand Down Expand Up @@ -134,7 +134,7 @@ enum __priority_which
{
PRIO_PROCESS = 0, /* WHO is a process ID. */
PRIO_PGRP = 1, /* WHO is a process group ID. */
PRIO_USER = 2, /* WHO is a user ID. */
PRIO_USER = 2 /* WHO is a user ID. */
};

/* Return the highest priority of any process specified by WHICH and WHO
Expand Down
4 changes: 2 additions & 2 deletions stdlib/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ routines := \
bsearch qsort msort \
getenv putenv setenv \
exit on_exit atexit \
abs labs \
div ldiv \
abs labs llabs \
div ldiv lldiv \
mblen mbstowcs mbtowc wcstombs wctomb \
random random_r rand \
drand48 erand48 lrand48 nrand48 mrand48 jrand48 \
Expand Down
31 changes: 31 additions & 0 deletions stdlib/llabs.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
/* `long long int' absolute value.
Copyright (C) 1991, 1996 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
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. */

#include <stdlib.h>

#undef llabs


/* Return the absolute value of I. */
long long int
llabs (i)
long long int i;
{
return i < 0 ? -i : i;
}
Loading

0 comments on commit 59dd864

Please sign in to comment.