rts: fix build failure on OpenBSD (_DYNAMIC symbol collision)
authorSergei Trofimovich <slyfox@gentoo.org>
Tue, 18 Dec 2018 23:17:45 +0000 (23:17 +0000)
committerBen Gamari <ben@well-typed.com>
Sat, 29 Dec 2018 16:20:49 +0000 (11:20 -0500)
commit1638350f0629365f20e97554e872d85b75f48d73
treeda47cfcd274f26fdae84f6ffd825eb82d6b0e812
parent9bce364125b55407e632d9a2061d09c6f346fa71
rts: fix build failure on OpenBSD (_DYNAMIC symbol collision)

Summary:
Build failure on OpenBSD-6.4 the the following:
```
rts/RtsSymbols.c:994:1: error:
     error: redefinition of '_DYNAMIC' as different kind of symbol
    |
994 | RTS_OPENBSD_ONLY_SYMBOLS
    | ^
RTS_OPENBSD_ONLY_SYMBOLS
^
```

On OpenBSD `_DYNAMIC` was always defined in `<elf.h>` headers
but used not to be included.

The change explicitly includes `<elf.h>` as a source of symbol definition.

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Test Plan: build-tested on OpenBSD-6.4

Reviewers: bgamari, erikd, simonmar

Subscribers: rwbarton, carter

GHC Trac Issues: #15945

Differential Revision: https://phabricator.haskell.org/D5461
rts/RtsSymbols.c