glibc/sysdeps/unix/sysv/linux/mips
Adhemerval Zanella 7164580495 Fix posix_fadvise64 build on mips64n64
Recent binutils versions (at least 2.27) complains about libc.so
when linking sotruss-lib.so with:

  libc.so:(*IND*+0x0): multiple definition of `posix_fadvise64@GLIBC_2.2'
  libc.so::(.text+0xcf940): first defined here
  libc.so:(*IND*+0x0): multiple definition of `posix_fadvise64'
  collect2: error: ld returned 1 exit status

Dynamic symbols for libc.so shows (readelf --dyn-syms):

   262: 000000000010b950    28 FUNC    GLOBAL DEFAULT   12 posix_fadvise64@GLIBC_2.2
   417: 000000000010b950    28 FUNC    WEAK   DEFAULT   12 posix_fadvise64@@GLIBC_2.2
  1505: 000000000010b950    28 FUNC    GLOBAL DEFAULT   12 posix_fadvise64@@GLIBC_2.3.3

That is, two separate definitions at version GLIBC_2.2. The issue is
sysdeps/unix/sysv/linux/posix_fadvise64.c creates posix_fadvise64 weak_alias,
while sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c then adds
compat_symbol / versioned_symbol calls.

The patch remove the weak_alias definition on mips64 specific version so
direct weak_alias is disabled.

Checked on mips64n64 build with binutils 2.27.51.20161012.

	* sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c:
	Undefine weak_alias.
2016-10-12 13:21:08 -03:00
..
bits Installed-header hygiene (BZ#20366): stack_t. 2016-09-23 08:43:56 -04:00
mips32 Add totalorder, totalorderf, totalorderl. 2016-10-12 01:20:30 +00:00
mips64 Fix posix_fadvise64 build on mips64n64 2016-10-12 13:21:08 -03:00
sys Installed-header hygiene (BZ#20366): stack_t. 2016-09-23 08:43:56 -04:00
Implies
Makefile VDSO support for MIPS 2016-04-12 11:05:13 +01:00
Versions VDSO support for MIPS 2016-04-12 11:05:13 +01:00
____longjmp_chk.c
_test_and_set.c
arch-fork.h
brk.c
clone.S Fix clone (CLONE_VM) pid/tid reset (BZ#19957) 2016-04-29 18:19:30 -03:00
configure MIPS: Set the required Linux kernel version to 4.5.0 for 2008 NaN 2016-01-25 00:19:27 +00:00
configure.ac MIPS: Set the required Linux kernel version to 4.5.0 for 2008 NaN 2016-01-25 00:19:27 +00:00
dl-cache.h
dl-static.c
getcontext.S
getmsg.c
getrlimit64.c
getsysstats.c
init-first.c VDSO support for MIPS 2016-04-12 11:05:13 +01:00
ipc_priv.h
kernel-features.h Remove __ASSUME_OFF_DIFF_OFF64 definition 2016-07-08 14:28:08 -03:00
kernel_rt_sigframe.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
ldsodefs.h
libc-abis
libc-vdso.h VDSO support for MIPS 2016-04-12 11:05:13 +01:00
makecontext.S mips: terminate the FDE before the return trampoline in makecontext 2016-03-09 18:48:18 +01:00
pipe.S
profil-counter.h
pt-vfork.S
putmsg.c
readelflib.c
register-dump.h
setcontext.S
setrlimit64.c
shlib-versions
sigaction.c
sigcontextinfo.h
swapcontext.S
syscalls.list Adjust kernel-features.h defaults for recvmsg and sendmsg 2016-05-25 17:27:57 -03:00
sysdep-cancel.h
ucontext_i.sym
ustat.c
vfork.S MIPS, SPARC: more fixes to the vfork aliases in libpthread.so 2016-06-27 09:59:37 +02:00
xstatconv.c