openafs/src/dviced
Andrew Deason 5196ca7b54 AIX: Link syscall users with -Wl,-bI:afsl.exp
When building with --disable-static on AIX, linking various binaries
that call syscall() currently fail:

    /bin/sh ../../libtool --quiet --mode=link --tag=CC
    /opt/IBM/xlC/16.1.0/bin/xlc_r -static [...] -o afsd afsd.o afsd_kernel.o [...]
    ld: 0711-317 ERROR: Undefined symbol: .syscall
    ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
    make: The error code from the last command is 8.

There is indeed no symbol 'syscall', because that is a
(confusingly-named) syscall provided by our libafs kernel module. To
tell the linker that syscall() is a syscall, import our afsl.exp by
passing the -Wl,-bI: flag to the linker for all binaries that call it.

To make it easier to see what's going on, add the AIX_ONLY subst var, to
make it easy to create an AIX-only line in the relevant Makefiles.

Change-Id: Id57bf9e6a438c57eded693a1e4ed39b08d36e3c7
Reviewed-on: https://gerrit.openafs.org/15999
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
Tested-by: Ben Huntsman <ben@huntsmans.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
2024-12-20 13:49:00 -05:00
..
.gitignore Add new demand-attach binaries to .gitignore 2010-07-14 20:41:26 -07:00
dafileserver.rc demand attach build always 2010-07-13 21:22:30 -07:00
Makefile.in AIX: Link syscall users with -Wl,-bI:afsl.exp 2024-12-20 13:49:00 -05:00
NTMakefile Move key-related warnings to common server code 2021-01-08 12:11:37 -05:00