Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Jun 2018 18:25:27 -0400
From:      Shawn Webb <shawn.webb@hardenedbsd.org>
To:        Ed Maste <emaste@freebsd.org>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>, "freebsd-toolchain@FreeBSD.org" <freebsd-toolchain@freebsd.org>
Subject:   Re: Tool Chain Migration: objdump users, please test llvm-objdump
Message-ID:  <20180620222527.vkd5fm3ksd5j6yux@mutt-hbsd>
In-Reply-To: <CAPyFy2BYOhNFkNGGMSKgpN%2BxV=FvrLtSHc0DH3WQjQe2a9beeg@mail.gmail.com>
References:  <CAPyFy2BYOhNFkNGGMSKgpN%2BxV=FvrLtSHc0DH3WQjQe2a9beeg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--nq7lbmr2sjwra7le
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, Jun 20, 2018 at 10:46:46AM -0400, Ed Maste wrote:
> Work is in progress to migrate fully to modern and permissively
> licensed components for the tool chain. This includes moving away from
> the three obsolete binutils components that are still in the base
> system (as, ld, objdump). objdump is a tool to report information
> about binary objects (such as headers, symbols, etc.), is not required
> as a build tool, and in any case many uses of objdump are better
> served by readelf.
>=20
> For FreeBSD 12 I intend to remove GNU objdump 2.17.50. PR 229046[1] is
> open to track tasks related to its removal, and users who need GNU
> objdump can install an up-to-date version from the ports tree or the
> binutils package.
>=20
> That said, llvm includes a somewhat equivalent llvm-objdump, and it is
> built by default in FreeBSD now. If llvm-objdump's command line option
> support and output format is "close enough" to GNU objdump for most
> users we may decide to install it as /usr/bin/objdump. Therefore, I
> would like to ask users of GNU objdump in FreeBSD to give llvm-objdump
> a try. Please let me know if it works for your uses, or describe
> deficiencies that you found.

In preparation for Cross-DSO CFI support, HardenedBSD switched to
llvm-ar, llvm-nm, and llvm-objdump on 12-CURRENT/arm64 with commit
a3db6f9006499b55c2042faccd0ed6a6777b9d9f (22 Dec 2017).

There are some issues with the ports tree, but I haven't quantified
them, yet. All high-visibility applications (firefox, apache, nginx,
openvpn, etc.) all work with a full llvm toolchain (again: llvm-ar,
llvm-nm, and llvm-objdump).

Some applications break during runtime and not build time. Certain
pidgin plugins break, for example, at runtime due to a full llvm
toolchain, but compile just fine.

Would you like me to quantify the compilation breakages due to the
full llvm toolchain switch? If so, I can do that after July 12th.

Thanks,

--=20
Shawn Webb
Cofounder and Security Engineer
HardenedBSD

Tor-ified Signal:    +1 443-546-8752
Tor+XMPP+OTR:        lattera@is.a.hacker.sx
GPG Key ID:          0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE

--nq7lbmr2sjwra7le
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKrq2ve9q9Ia+iT2eaoRlj1JFbu4FAlsq1FIACgkQaoRlj1JF
bu6JfA/9ExEew2VcI4fz2rc3F3/YIKkc9MuY5+w8UsNNaFK2ye2WjAhDP5lPcCzp
PxqRkILYXk6uRnZvNXIAawpo2I5DXnNhVvsEK6f0oBCZe8/OTscKGWKueNbg5e4q
7my69lfJujCK6kxrS4vgfUMwqHg9DwhCCyI/mT7hkRVZXaxzbFRQad925jhyjCWH
n9nzWOgHV0k7JMAH6S9F4jqLiYFQDGNvay6t5EGtMEv7u2aCdSthS0byCyTr1qd2
v3qQD+elYI8Wpo84bTVKyxBWXW8vI6hwzOftD5QNUwIiA8VpuYahIt7XoE8xhUEK
Ua5DLQNrUL6q3kHkhoJjPES2dPBc9X2hPX+5cIMIIE6+Dsfjx2unYMee4zkyH+qb
oeb7OyV37voF7DeDxPPn4sLT9P1zZHJ0CrC84iLit+zT2qX6Mo2z+S084vLMAPKI
qkDf9d4vumwjs0WSy74G3mhro2KdEZno+CqFD+GTMYNf2LMA647jj9BLaMkuj/ce
Y69/c/JO2q228PN2oqznZzPB88UX3s/t4i6whMUMZSL8eCrp23IE0AH/IBTPnJti
TdSnk3eH/DAJWbFj9Gg5ptpIpVl2w2OFttA5i7+Drh3YaE6crcdGCMrx/iwtQtZ3
mS97wWhypYkguS564AHktJYDuFhNkSGvEygPIkJGa5jSZASOCyw=
=28XV
-----END PGP SIGNATURE-----

--nq7lbmr2sjwra7le--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180620222527.vkd5fm3ksd5j6yux>