* Makerules (check-abi) [$(enable-check-abi) = warn]:

Ignore exit status from diff.
	* configure.in (enable_check_abi): Document possible value "warn".
	Change default to no for now.
	* configure: Regenerated.

	* sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
	macro calls and a #include <stub-tag.h> at the end.
	* Makerules ($(objpfx)stubs): Tweak sed commands.

	* sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
	caller column for *xattr syscalls, since they are in sysdeps/generic.

	* sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
	* sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid

2003-03-26  Roland McGrath  <roland@redhat.com>

	* Makerules (check-abi-config): Use /thread instead of /tls when
	use-thread and not just use-tls is set.

	* Makerules (update-abi): Put quotes around $(update-abi-config).

	* elf/Makefile (check-abi): Depend on check-abi-ld.
	(update-abi): Depend on update-abi-ld.
This commit is contained in:
Roland McGrath 2003-03-27 09:48:09 +00:00
parent 130ed2359f
commit fd54683c97
8 changed files with 82 additions and 37 deletions

View File

@ -1,3 +1,31 @@
2003-03-27 Roland McGrath <roland@redhat.com>
* Makerules (check-abi) [$(enable-check-abi) = warn]:
Ignore exit status from diff.
* configure.in (enable_check_abi): Document possible value "warn".
Change default to no for now.
* configure: Regenerated.
* sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
macro calls and a #include <stub-tag.h> at the end.
* Makerules ($(objpfx)stubs): Tweak sed commands.
* sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
caller column for *xattr syscalls, since they are in sysdeps/generic.
* sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
* sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
2003-03-26 Roland McGrath <roland@redhat.com>
* Makerules (check-abi-config): Use /thread instead of /tls when
use-thread and not just use-tls is set.
* Makerules (update-abi): Put quotes around $(update-abi-config).
* elf/Makefile (check-abi): Depend on check-abi-ld.
(update-abi): Depend on update-abi-ld.
2003-03-26 GOTO Masanori <gotom@debian.or.jp>
* sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and

View File

@ -1190,15 +1190,23 @@ define check-abi
LC_ALL=C \
$(AWK) -f $< -v 'config=$(check-abi-config)' \
$(filter %.abilist,$^) \
| diff -pu0 - $(filter %.symlist,$^)
| { diff -pu0 - $(filter %.symlist,$^) $(check-abi-warn) ; }
endef
ifeq ($(enable-check-abi),warn)
check-abi-warn = || echo '*** WARNING: $*.so failed ABI check'
endif
ifeq ($(firstword $(sysd-sorted-done) f)$(firstword $(generating) f),tf)
-include $(common-objpfx)tls.make
config-tls-yes := tls
config-tls-no := notls
config-tls := notls
ifeq ($(use-tls),yes)
config-tls := tls
endif
ifeq ($(use-thread),yes)
config-tls := thread
endif
check-abi-config := \
$(config-machine)-$(config-vendor)-$(config-os)/$(config-tls-$(use-thread))
$(config-machine)-$(config-vendor)-$(config-os)/$(config-tls)
endif
update-abi-%: $(..)scripts/merge-abilist.awk $(..)abilist/%.abilist \
@ -1213,7 +1221,7 @@ define update-abi
endef
else
define update-abi
LC_ALL=C $(AWK) -v config=$(update-abi-config) -f $^ \
LC_ALL=C $(AWK) -v config='$(update-abi-config)' -f $^ \
> $(..)abilist/$*.abilist.new
@if cmp -s $(..)abilist/$*.abilist.new $(..)abilist/$*.abilist 2> /dev/null; \
then rm -f $(..)abilist/$*.abilist.new; \
@ -1241,11 +1249,13 @@ update-abi: update-abi-libc
common-generated += libc.symlist
endif
ifeq ($(build-shared)$(enable-check-abi),yesyes)
ifeq ($(build-shared),yes)
ifneq ($(enable-check-abi),no)
ifdef subdir
tests: check-abi
endif
endif
endif
endif
@ -1375,14 +1385,16 @@ ifdef objpfx
.PHONY: stubs # The parent Makefile calls this target.
stubs: $(objpfx)stubs
endif
s = $(sysdep_dir)/generic
$(objpfx)stubs: $(+depfiles)
# Use /dev/null since `...` might expand to empty.
(s=`cd $s && $(PWD_P)`; \
(s=`cd $(sysdep_dir) && $(PWD_P)`; \
$(patsubst %/,cd % &&,$(objpfx)) \
sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \
`sed -n -e '\@ $s/[^ ]*\.c@{; s@^.* $s/\([^ ]*\.c\).*$$@'"$$s"'/\1@; h; }' \
-e '/stub-tag\.h/{; g; p; }' \
`sed -n -e 's@$(sysdep_dir)/@'"$$s"'/@g' \
-e 's@\$$(common-objpfx)@$(..)@g' -e 's@\$$(objpfx)@@g' \
-e '/: *[^ ]/{s@^.*: *\([^ ]*\) .*$$@\1@; h; }' \
-e '/:$$/d' \
-e '/stub-tag\.h/{; g; p; }' \
$(patsubst $(objpfx)%,%,$^) /dev/null` \
/dev/null) > $@T
mv -f $@T $@

13
configure vendored
View File

@ -851,7 +851,8 @@ Optional Features:
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--disable-sanity-checks really do not use threads (should not be used except
in special situations) [default=yes]
--disable-check-abi omit "make check-abi" from "make check"
--enable-check-abi do "make check-abi" in "make check" (no/warn/yes)
[default=no]
--enable-shared build shared library [default=yes if GNU ld &
ELF]
--enable-profile build profiled library [default=yes]
@ -1486,7 +1487,7 @@ if test "${enable_check_abi+set}" = set; then
enableval="$enable_check_abi"
enable_check_abi=$enableval
else
enable_check_abi=yes
enable_check_abi=no
fi;
static=yes
@ -5169,7 +5170,7 @@ if test "${libc_cv_asm_underscores+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat > conftest.$ac_ext <<EOF
#line 5172 "configure"
#line 5173 "configure"
#include "confdefs.h"
void underscore_test(void) {
return; }
@ -5495,7 +5496,7 @@ if test "${libc_cv_gcc_dwarf2_unwind_info+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat > conftest.c <<EOF
#line 5498 "configure"
#line 5499 "configure"
static char *__EH_FRAME_BEGIN__;
_start ()
{
@ -5595,7 +5596,7 @@ if test "${libc_cv_gcc_builtin_expect+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat > conftest.c <<EOF
#line 5598 "configure"
#line 5599 "configure"
int foo (int a)
{
a = __builtin_expect (a, 10);
@ -5663,7 +5664,7 @@ if test "${libc_cv_gcc_subtract_local_labels+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat > conftest.c <<EOF
#line 5666 "configure"
#line 5667 "configure"
int foo (int a)
{
static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };

View File

@ -115,10 +115,11 @@ AC_ARG_ENABLE([sanity-checks],
AC_SUBST(enable_check_abi)
AC_ARG_ENABLE([check-abi],
AC_HELP_STRING([--disable-check-abi],
[omit "make check-abi" from "make check"]),
AC_HELP_STRING([--enable-check-abi],
[do "make check-abi" in "make check" (no/warn/yes)
@<:@default=no@:>@]),
[enable_check_abi=$enableval],
[enable_check_abi=yes])
[enable_check_abi=no])
dnl Arguments to enable or disable building the static, shared, profiled,
dnl and -fomit-frame-pointer libraries.

View File

@ -181,6 +181,9 @@ test-extras += $(modules-names)
include ../Rules
check-abi: check-abi-ld
update-abi: update-abi-ld
ifeq (yes,$(build-shared))
# Make sure these things are built in the `make lib' pass so they can be used
# to run programs during the `make others' pass.

View File

@ -45,14 +45,14 @@ setfsgid (gid_t gid)
INTERNAL_SYSCALL_DECL (err);
# if __ASSUME_32BITUIDS > 0
/* No error checking. */
return INTERNAL_SYSCALL (setfsuid32, err, 1, uid);
return INTERNAL_SYSCALL (setfsgid32, err, 1, gid);
# else
# ifdef __NR_setfsgid32
if (__libc_missing_32bit_uids <= 0)
{
int result;
result = INTERNAL_SYSCALL (setfsuid32, err, 1, uid);
result = INTERNAL_SYSCALL (setfsgid32, err, 1, gid);
if (! INTERNAL_SYSCALL_ERROR_P (result, err)
|| INTERNAL_SYSCALL_ERRNO (result, err) != ENOSYS)
return result;
@ -67,7 +67,7 @@ setfsgid (gid_t gid)
}
/* No error checking. */
return INTERNAL_SYSCALL (setfsuid, err, 1, uid);
return INTERNAL_SYSCALL (setfsgid, err, 1, gid);
# endif
}
#endif

View File

@ -45,14 +45,14 @@ setfsuid (uid_t uid)
INTERNAL_SYSCALL_DECL (err);
# if __ASSUME_32BITUIDS > 0
/* No error checking. */
return INTERNAL_SYSCALL (setfsgid32, err, 1, gid);
return INTERNAL_SYSCALL (setfsuid32, err, 1, uid);
# else
# ifdef __NR_setfsuid32
if (__libc_missing_32bit_uids <= 0)
{
int result;
result = INTERNAL_SYSCALL (setfsgid32, err, 1, gid);
result = INTERNAL_SYSCALL (setfsuid32, err, 1, uid);
if (! INTERNAL_SYSCALL_ERROR_P (result, err)
|| INTERNAL_SYSCALL_ERRNO (result, err) != ENOSYS)
return result;
@ -68,7 +68,7 @@ setfsuid (uid_t uid)
}
/* No error checking. */
return INTERNAL_SYSCALL (setfsgid, err, 1, gid);
return INTERNAL_SYSCALL (setfsuid, err, 1, uid);
# endif
}
#endif

View File

@ -77,15 +77,15 @@ wait4 - wait4 i:iWiP __wait4 wait4
chown - chown i:sii __libc_chown __chown chown
fcntl - fcntl Ci:iiF __libc_fcntl __fcntl fcntl
setxattr EXTRA setxattr i:sspii setxattr
lsetxattr EXTRA lsetxattr i:sspii lsetxattr
fsetxattr EXTRA fsetxattr i:ispii fsetxattr
getxattr EXTRA getxattr i:sspi getxattr
lgetxattr EXTRA lgetxattr i:sspi lgetxattr
fgetxattr EXTRA fgetxattr i:ispi fgetxattr
listxattr EXTRA listxattr i:ssi listxattr
llistxattr EXTRA llistxattr i:ssi llistxattr
flistxattr EXTRA flistxattr i:isi flistxattr
removexattr EXTRA removexattr i:ss removexattr
lremovexattr EXTRA lremovexattr i:ss lremovexattr
fremovexattr EXTRA fremovexattr i:is fremovexattr
setxattr - setxattr i:sspii setxattr
lsetxattr - lsetxattr i:sspii lsetxattr
fsetxattr - fsetxattr i:ispii fsetxattr
getxattr - getxattr i:sspi getxattr
lgetxattr - lgetxattr i:sspi lgetxattr
fgetxattr - fgetxattr i:ispi fgetxattr
listxattr - listxattr i:ssi listxattr
llistxattr - llistxattr i:ssi llistxattr
flistxattr - flistxattr i:isi flistxattr
removexattr - removexattr i:ss removexattr
lremovexattr - lremovexattr i:ss lremovexattr
fremovexattr - fremovexattr i:is fremovexattr