rts: Fix NUMA when cross compiling
authorErik de Castro Lopo <erikd@mega-nerd.com>
Mon, 13 Jun 2016 09:24:18 +0000 (19:24 +1000)
committerErik de Castro Lopo <erikd@mega-nerd.com>
Mon, 13 Jun 2016 09:24:19 +0000 (19:24 +1000)
commit2bb6ba62b8d0e9c79b59e39e225758cf999eff83
treea4ca5693274b43dc0e6250c71028406c42343d02
parent29e1464319f40fe30fd63d8648f0d0a05541abe0
rts: Fix NUMA when cross compiling

The NUMA code was enabled whenever numa.h and numaif.h are detected.
Unfortunately, the hosts' header files were being detected even then
cross compiling in the absence of a target libnuma.

Fix that by relying on the the presence of libnuma instead of the
presence of the header files. The test for libnuma does `AC_TRY_LINK`
which will fail if the test program (compiled for the target) can't
be linked against libnuma.

Test Plan:
Build on x86_64/linux and make sure NUMA works and cross compile to
armhf/linux.

Reviewers: austin, bgamari, hvr, simonmar

Reviewed By: simonmar

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D2329
configure.ac
rts/posix/OSMem.c
rts/posix/OSThreads.c