This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
Ports state for 2.16 regarding global changes
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: libc-ports at sourceware dot org
- Cc: Mike Frysinger <vapier at gentoo dot org>, Andreas Schwab <schwab at linux-m68k dot org>, Richard Henderson <rth at twiddle dot net>, Carlos O'Donell <carlos at systemhalted dot org>, Mark Salter <msalter at redhat dot com>
- Date: Fri, 15 Jun 2012 15:52:49 +0000 (UTC)
- Subject: Ports state for 2.16 regarding global changes
Here is my understanding of the current status of ports with regard to
being updated for global changes in libc:
* arm, ia64, linux-generic, mips, powerpc-nofpu, tile: up to date.
However, ia64 libm-test-ulps may need regenerating / updating.
* m68k: mostly up to date, but may need updates to its ccos / csin /
ccosh / csinh implementations along the lines of my 2012-05-19 libc
changes to avoid spurious overflows (bug 14123), and both m68k
libm-test-ulps files may need regenerating / updating.
* alpha: out of date in the following ways:
(a) There are __GNUC_PREREQ conditionals in various non-installed
files that should be removed because the versions in question are
older than the minimum 4.3 version accepted for configuring GCC:
sysdeps/alpha/fpu/cfloat-compat.h sysdeps/alpha/fpu/s_fabs.c
sysdeps/alpha/fpu/s_fabsf.c sysdeps/unix/sysv/linux/alpha/sysconf.c.
(b) bits/mathdef.h should be updated in line with my 2012-01-31 libc
change so that float_t is always float rather than depending on
__GNUC__.
(c) sysdeps/alpha/soft-fp/sfp-machine.h is missing a definition of
FP_TRAPPING_EXCEPTIONS.
(d) sysdeps/unix/sysv/linux/alpha/bits/resource.h is missing
RLIMIT_RTTIME.
(e) sysdeps/unix/sysv/linux/alpha/bits/resource.h has a possible
trailing comma in an enum outside __USE_GNU where the generic code
has it inside __USE_GNU.
(f) sysdeps/unix/sysv/linux/alpha/bits/resource.h is missing the
prlimit and prlimit64 declarations.
(g) sysdeps/unix/sysv/linux/alpha/bits/shm.h is missing SHM_EXEC.
(h) sysdeps/unix/sysv/linux/alpha/bits/stat.h has a conditional "#if
defined __USE_ATFILE || defined __USE_GNU" where other versions use
"#ifdef __USE_ATFILE".
* hppa: out of date in the following ways:
(a) There is a stray file
sysdeps/unix/sysv/linux/hppa/nptl/pt-initfini.c, which will be unused.
(b) libm-test-ulps needs to be regenerated / updated.
(c) There is no ____longjmp_chk implementation.
(d) sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c has an alias
__pthread_once_internal but this has been replaced by hidden_def for
other architectures.
(e) sysdeps/unix/sysv/linux/hppa/syscalls.list has a
__connect_internal alias that has been removed for other
architectures.
(f) sysdeps/unix/sysv/linux/hppa/nptl/pthread.h uses
__builtin_expect but the generic version now uses __glibc_unlikely
instead.
(g) There are no ABI test baselines for hppa.
(h) hppa still has conditionals on or definitions of obsolete macros
USE_TLS and USE___THREAD.
(i) sysdeps/unix/sysv/linux/hppa/bits/errno.h is missing EHWPOISON
(and any associated errlist-compat updates needed). A patch was
submitted in
<http://sourceware.org/ml/libc-ports/2012-02/msg00061.html> but
apparently not reviewed.
(j) sysdeps/unix/sysv/linux/hppa/bits/fcntl.h is missing O_PATH.
(k) sysdeps/unix/sysv/linux/hppa/bits/mman.h is missing MAP_STACK
and MAP_HUGETLB.
(l) sysdeps/unix/sysv/linux/hppa/bits/mman.h is missing
MADV_HUGEPAGE, MADV_NOHUGEPAGE, MADV_DONTDUMP, MADV_DODUMP and
MADV_HWPOISON.
(m) sysdeps/unix/sysv/linux/hppa/bits/shm.h is missing SHM_EXEC.
(n) sysdeps/unix/sysv/linux/hppa/bits/sigaction.h is missing the
change to define SA_RESTART, SA_NODEFER and SA_RESETHAND if
__USE_XOPEN2K8.
(o) sysdeps/unix/sysv/linux/hppa/bits/socket.h still exists but
socket_type.h should now be provided instead.
(p) sysdeps/unix/sysv/linux/hppa/nptl/pthread.h defines
__need_timespec before including <time.h> but the generic version no
longer does.
(q) sysdeps/unix/sysv/linux/hppa/sys/epoll.h still exists but
bits/epoll.h should now be provided instead.
(r) sysdeps/unix/sysv/linux/hppa/sys/eventfd.h still exists but
bits/eventfd.h should now be provided instead.
(s) sysdeps/unix/sysv/linux/hppa/sys/inotify.h still exists but
bits/inotify.h should now be provided instead.
(t) sysdeps/unix/sysv/linux/hppa/sys/signalfd.h still exists but
bits/signalfd.h should now be provided instead.
(u) sysdeps/unix/sysv/linux/hppa/sys/timerfd.h still exists but
bits/timerfd.h should now be provided instead.
(v) sysdeps/unix/sysv/linux/hppa/syscalls.list is missing prlimit64
and fanotify_mark which means it is likely those functions are
missing on hppa (and when added, will need appropriate Versions
additions to avoid adding them to an old version).
(w) An entry in libc's nptl/shlib-versions for hppa was removed on
2012-01-07 and a corresponding entry needs adding in ports.
(x) An entry in libc's sysdeps/unix/sysv/linux/configure.in for hppa
was removed on 2012-01-07 and a ports update may be needed. That
entry may actually have been dead because of the arch_minimum_kernel
setting in sysdeps/unix/sysv/linux/hppa/nptl/configure.in - but in
that case, there's the question of whether the
libc_cv_gcc_unwind_find_fde=yes that was in libc's file for hppa
should go in the ports version (if that was a correct description of
old libc binaries on hppa).
(y) sysdeps/unix/sysv/linux/hppa/kernel-features.h still defines
__ASSUME_32BITUIDS and __ASSUME_TRUNCATE64_SYSCALL (no longer used).
* am33: generally massively out of date and I have not tried to
identify specific changes needed.
--
Joseph S. Myers
joseph@codesourcery.com