diff options
-rw-r--r-- | dev-libs/dietlibc/Manifest | 1 | ||||
-rw-r--r-- | dev-libs/dietlibc/dietlibc-0.34.ebuild | 77 |
2 files changed, 78 insertions, 0 deletions
diff --git a/dev-libs/dietlibc/Manifest b/dev-libs/dietlibc/Manifest index 5610c77f2ad6..09f53a3ba4b0 100644 --- a/dev-libs/dietlibc/Manifest +++ b/dev-libs/dietlibc/Manifest @@ -1 +1,2 @@ +DIST dietlibc-0.34.tar.xz 662732 BLAKE2B ac709f19f98c298ee424f8320cbc7bca997156323e64d3a219251146b4257185f27519262914d3df044638ecfcf06e1e3680d8af226704dca65d6e4be20b3dc4 SHA512 2b38528c0ccf50e426f587b6448fed997fab1147eecc9e1af2f3fb3efe3d8f3997656d8e66e7cf1045ceb1f602cef43456c62ba83ff494f9c9816721bdb4d6c6 DIST dietlibc-0.34_pre20140729.tar.bz2 670195 BLAKE2B 9479c97c09b0c8c7e5d85536afd962613e9f5fbcb1aff3ef9b2aace19d246b2d0b637f00c3abee0a2c06f170263e85ffba94247171afc47e40c8ab0e95fe5191 SHA512 a0bb5465f7fc985fd074dfcc4039003ec26b6b5fde5f2ccc53322067bd1a6459e742c9debeffda0b5146e287baa8e49f74f4a8ffafdf1daacacec4768d13db36 diff --git a/dev-libs/dietlibc/dietlibc-0.34.ebuild b/dev-libs/dietlibc/dietlibc-0.34.ebuild new file mode 100644 index 000000000000..4a35f612fa6d --- /dev/null +++ b/dev-libs/dietlibc/dietlibc-0.34.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="A libc optimized for small size" +HOMEPAGE="https://www.fefe.de/dietlibc/" +SRC_URI="https://www.fefe.de/dietlibc/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="" + +DEPEND="" +RDEPEND="" + +DIETHOME="/usr/diet" + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]]; then + if $(tc-getLD) --version | grep -q "2.31.1"; then + ewarn "${PN} does not work with unpatched binutils-2.31.1," + ewarn "see \"${S}/FAQ\"" + ewarn "and https://bugs.gentoo.org/672126 for details." + ewarn "In the meanwhile you can install another binutils version" + ewarn "and use binutils-config to switch version." + sleep 10 + fi + fi +} + +src_prepare() { + default + + # Replace sparc64 related C[XX]FLAGS (see bug #45716) + use sparc && replace-sparc64-flags + + # gcc-hppa suffers support for SSP, compilation will fail + use hppa && strip-unsupported-flags + + # Makefile does not append CFLAGS + append-flags -W -Wall -Wchar-subscripts \ + -Wmissing-prototypes -Wmissing-declarations -Wno-switch \ + -Wno-unused -Wredundant-decls -fno-strict-aliasing + + # Disable ssp for we default to it on >=gcc-4.8.3 + append-flags $(test-flags -fno-stack-protector) + + # only use -nopie on archs that support it + tc-enables-pie && append-flags -no-pie + + sed -i -e 's:strip::' Makefile || die + append-flags -Wa,--noexecstack +} + +src_compile() { + emake -j1 prefix="${EPREFIX}"${DIETHOME} \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" \ + STRIP=":" +} + +src_install() { + emake -j1 prefix="${EPREFIX}"${DIETHOME} \ + DESTDIR="${D}" \ + install-bin \ + install-headers \ + install-profiling + + dobin "${ED}"${DIETHOME}/bin/* + doman "${ED}"${DIETHOME}/man/*/* + rm -r "${ED}"${DIETHOME}/{man,bin} || die + + dodoc AUTHOR BUGS CAVEAT CHANGES README THANKS TODO PORTING +} |