This page lists issues for which some ports need updating to take account of global changes to glibc or features initially implemented only for some ports. Each issue should list the ports for which it's relevant. When making a change needing port updates, please add details to this page. When fixing an issue for a port, please remove the port from the list of those to which the issue applies (and remove the issue from the page if it was the last port affected).
This is in addition to any port-specific issues that may be filed in Bugzilla, or that may show up through testsuite failures (it's generally a good idea to file such issues in Bugzilla, if they appear to indicate port bugs and you aren't immediately fixing them).
Generally, libm-test-ulps should be regenerated from scratch for each architecture for each release, but this is not mentioned on this page.
ABI test baselines
Needed for: Hurd.
ABI test baselines should be checked against binaries of as many past releases as possible rather than presuming no ABI bugs have crept in while the ABI was not being tested.
Needed for: Hurd, hppa.
Needed for: hppa.
Soft-float fma / fmaf
Needed for: soft-float coldfire, microblaze.
Correct fma and fmaf on systems without support for FE_TOWARDZERO and FE_INEXACT requires the soft-fp implementations of those functions to be used. Bug 13304.
bits/mman.h using mman-linux.h
Needed for: hppa.
For GNU/Linux, bits/mman.h should use bits/mman-linux.h to define architecture-independent values and only define things itself where architecture-dependent (if needed, make more definitions in bits/mman-linux.h support the values being architecture-specific). For hppa, doing this should fix the missing definitions of MADV_HUGEPAGE, MADV_NOHUGEPAGE, MADV_DONTDUMP, MADV_DODUMP and MADV_HWPOISON.
Needed for: hppa.
Needed for: alpha (this is an alpha-specific macro, obsolete given current minimum kernel version requirements).
Issues specific to hppa
The following issues are ones for which only hppa has not been updated.
sysdeps/unix/sysv/linux/hppa/syscalls.list has a __connect_internal alias that has been removed for other architectures.
hppa still has conditionals on or definitions of obsolete macros USE_TLS and USE___THREAD.
sysdeps/unix/sysv/linux/hppa/bits/mman.h is missing MAP_STACK and MAP_HUGETLB.
sysdeps/unix/sysv/linux/hppa/bits/shm.h is missing SHM_EXEC.
sysdeps/unix/sysv/linux/hppa/bits/sigaction.h is missing the change to define SA_RESTART, SA_NODEFER and SA_RESETHAND if __USE_XOPEN2K8.
sysdeps/unix/sysv/linux/hppa/sys/epoll.h still exists but bits/epoll.h should now be provided instead.
sysdeps/unix/sysv/linux/hppa/sys/eventfd.h still exists but bits/eventfd.h should now be provided instead.
sysdeps/unix/sysv/linux/hppa/sys/inotify.h still exists but bits/inotify.h should now be provided instead.
sysdeps/unix/sysv/linux/hppa/sys/signalfd.h still exists but bits/signalfd.h should now be provided instead.
sysdeps/unix/sysv/linux/hppa/sys/timerfd.h still exists but bits/timerfd.h should now be provided instead.
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).
The TLS configure checks should be removed from sysdeps/hppa/configure.in, now the rule is that we assume a recent-enough binutils and such checks are no longer needed for each architecture and have been removed for other architectures.
__ASSUME_LWS_CAS (definition and uses) should be removed now 2.6.16 is the global minimum kernel version.
hppa pthread.h is out of date relative to the architecture-independent version (at least, missing the declarations of pthread_getattr_default_np and pthread_setattr_default_np).