From 1f271ef5811c59d56b9359719efe7bec104b68b0 Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Mon, 10 Jun 2013 18:45:25 +0200 Subject: dev-libs/dietlibc: Version bump as @pacho request, replace sed from upstream with a patch, introduce a diet_flags funcs that is called for each target as PIE (in the current case) can be available for the CBUILD and not for CHOST. Package-Manager: portage-2.1.12.4 --- dev-libs/dietlibc/ChangeLog | 11 +++ dev-libs/dietlibc/Manifest | 8 +- dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild | 99 ---------------------- dev-libs/dietlibc/dietlibc-0.33_pre20130103.ebuild | 95 +++++++++++++++++++++ .../dietlibc-0.33_pre20130103-BJA-nostrip.diff | 69 +++++++++++++++ .../files/dietlibc-4e86d5e-BJA-strip-override.diff | 11 --- 6 files changed, 179 insertions(+), 114 deletions(-) delete mode 100644 dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild create mode 100644 dev-libs/dietlibc/dietlibc-0.33_pre20130103.ebuild create mode 100644 dev-libs/dietlibc/files/dietlibc-0.33_pre20130103-BJA-nostrip.diff delete mode 100644 dev-libs/dietlibc/files/dietlibc-4e86d5e-BJA-strip-override.diff (limited to 'dev-libs') diff --git a/dev-libs/dietlibc/ChangeLog b/dev-libs/dietlibc/ChangeLog index 15a32552..c5e3ddcd 100644 --- a/dev-libs/dietlibc/ChangeLog +++ b/dev-libs/dietlibc/ChangeLog @@ -2,6 +2,17 @@ # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ +*dietlibc-0.33_pre20130103 (10 Jun 2013) + + 10 Jun 2013; Bertrand Jacquin + +dietlibc-0.33_pre20130103.ebuild, + +files/dietlibc-0.33_pre20130103-BJA-nostrip.diff, + -dietlibc-0.33_pre20110403.ebuild, + -files/dietlibc-4e86d5e-BJA-strip-override.diff: + dev-libs/dietlibc: Version bump as @pacho request, replace sed from upstream + with a patch, introduce a diet_flags funcs that is called for each target as + PIE (in the current case) can be available for the CBUILD and not for CHOST. + 10 Jun 2013; Bertrand Jacquin metadata.xml: Fix manifest diff --git a/dev-libs/dietlibc/Manifest b/dev-libs/dietlibc/Manifest index 8f1d1fed..f6ca8b6c 100644 --- a/dev-libs/dietlibc/Manifest +++ b/dev-libs/dietlibc/Manifest @@ -1,5 +1,5 @@ -AUX dietlibc-4e86d5e-BJA-strip-override.diff 317 SHA256 27be6455a660b3b05c42629db0ea8c350585b12d118d74a10a0492ea5ae4e546 WHIRLPOOL 6be5258ffa9e6eb19392cd10133f7ffe8721d9f06381fa70d4def6d87eacdd88dfa786a95991ca330382f104e57f53d7b111bf177c452b652e4bb005cccef576 -DIST dietlibc-0.33_pre20110403.tar.gz 743758 SHA256 6505ed424a5b53850ae1dcbc75fbf92f3b7e4038dd1104d114b366221cc48eea WHIRLPOOL 5756b1e42637d89fd17f1a79fe602f9e009b9d5dcca0fbe3540ad2af21ad96b32d0b4773f882cccfd97d6308cd3c9ad79d06cc7ca79e28a4d60fd00379eaef70 -EBUILD dietlibc-0.33_pre20110403.ebuild 2431 SHA256 1520f6513a49bc68b1aa8f3f16e92eca0214e19387cc79c3dd38ed35327bfc66 WHIRLPOOL 1e7d11bc464a0b4579e3891debab39b66cbf66bd9b9ced45097c3702e3734027d1417aab088726e3a9c2ffb1bd60fa105b2ea0ed34cc7218481eda92cd05a036 -MISC ChangeLog 614 SHA256 6e5eee49995c8d899a84315bf3220cd25a8d8594c9abcc70878ce77744316c69 WHIRLPOOL 9bcff73ab2c14b7d6ac42073a221ab572746c9a48f7518ef55050555e57882ff57c3b818ee34a48a44456a37562330a0e4ef8c550dc2f4d5375fec85d65e9659 +AUX dietlibc-0.33_pre20130103-BJA-nostrip.diff 3266 SHA256 461bb278cd845dc2af8d808b1463b74c18d15d3e2974da5994f5338348e52d0a WHIRLPOOL a9c8e143770c85200f9a6656585967282f85cf5c4cfd90271f8148233b19badcc93fdf723c345bfcb032b72f8712ea39dde504cd18de8c914bac02acd00465c8 +DIST dietlibc-0.33_pre20130103.tar.xz 555624 SHA256 2dff9b339d63320539eb733aff73d04d25d83146ab2eee99cec82f7fcd78e61a WHIRLPOOL c0377bc35cb825dce15f9e4156bd51ca2be44c6d2b4c86b9afe3b03ee77e163e76a89151df246493983a21c8945f27f057a1aa4dcb5573045b16721333d0a001 +EBUILD dietlibc-0.33_pre20130103.ebuild 2134 SHA256 2c44344efb1b4eb064afbe462c9407f7eb5e2ca5df19d840a7142aadced96653 WHIRLPOOL 238234ab94c7b493ded40dca8dc480398cac8bc8d4a141a75f004e35a2a36de347856076996a97241e1690505cafce1da7f3dd3c091185cc3f3b6e71d343e25c +MISC ChangeLog 1125 SHA256 d5334b57b645d859641e55b0979384870e4955f19867071acb9e3f1a31d0d5fc WHIRLPOOL 76087a5c89fb27b230f1ef074aede1e7eeeabd7703b8287215f940d80ce1c2296a35a875deb4d2e12187f5014bd1446b950cc203e7ad00a9bafd0c9c81bed382 MISC metadata.xml 1531 SHA256 fb7109720df2fe3b35ea81ba236af5b4dd5a3e04d14862af7e95e4564946bbd9 WHIRLPOOL 37e88b6edff9b9434aa3cb491e661b52890463bdbfdb7bbea5f5b024d198b4f5c93e3d93c0c186e67cc09f89d3038fbbe1c0683a8cc481343c4599d624dfc8d6 diff --git a/dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild b/dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild deleted file mode 100644 index ac199ec6..00000000 --- a/dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/dietlibc/dietlibc-0.33_pre20110403.ebuild,v 1.4 2011/05/06 11:57:39 gmsoft Exp $ - -EAPI="3" - -inherit eutils flag-o-matic toolchain-funcs - -GITHUB_AUTHOR="hollow" -GITHUB_PROJECT="dietlibc" -GITHUB_COMMIT="4e86d5e" - -DESCRIPTION="A libc optimized for small size" -HOMEPAGE="http://www.fefe.de/dietlibc/" -SRC_URI="http://nodeload.github.com/${GITHUB_AUTHOR}/${GITHUB_PROJECT}/tarball/v${PV} -> ${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm -hppa ~mips ~ppc ~ppc64 ~sparc x86" -IUSE="debug" - -DEPEND="" -RDEPEND="" - -S="${WORKDIR}"/${GITHUB_AUTHOR}-${GITHUB_PROJECT}-${GITHUB_COMMIT} - -DIETHOME=/usr/diet - -IUSE_LIBC_TARGET="alpha arm armeb i386 ia64 mips mipsel parisc parisc64 ppc ppc64 s390 s390x sparc sparc64 x86_64" - -for t in ${IUSE_LIBC_TARGET} ; do - IUSE="${IUSE} target_${t}" -done - -pkg_setup() { - CFLAGS="" - - # 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 - - # debug flags - use debug && append-flags -g - - # Makefile does not append CFLAGS - append-flags -nostdinc -W -Wall -Wextra -Wchar-subscripts \ - -Wmissing-prototypes -Wmissing-declarations -Wno-switch \ - -Wno-unused -Wredundant-decls -fno-strict-aliasing - - # only use -nopie on archs that support it - gcc-specs-pie && append-flags -nopie -} - -src_compile() { - for t in ${IUSE_LIBC_TARGET} ; do - use target_$t $USE || continue - - tC="CROSS_$t" - if [ -z "${!tC}" ] ; then - ewarn "CROSS_$t not defined, can't build" - sleep 15 - continue - fi - - einfo "Building libc $t" - emake prefix=${DIETHOME} \ - MYARCH="${t}" \ - CROSS="${!tC}" \ - CFLAGS="${CFLAGS}" \ - STRIP=":" \ - || die "make failed" - done -} - -src_install() { - emake prefix=${DIETHOME} \ - DESTDIR="${D}" \ - install-headers \ - || die "make install-headers failed" - - for t in ${IUSE_LIBC_TARGET} ; do - use target_$t $USE || continue - - einfo "Installing libc $t" - emake prefix=${DIETHOME} \ - MYARCH="${t}" \ - DESTDIR="${D}" \ - install-bin \ - || die "make install-bin failed" - done - - dobin "${D}"${DIETHOME}/bin/* || die "dobin failed" - doman "${D}"${DIETHOME}/man/*/* || die "doman failed" - rm -r "${D}"${DIETHOME}/{man,bin} - - dodoc AUTHOR BUGS CAVEAT CHANGES README THANKS TODO PORTING -} diff --git a/dev-libs/dietlibc/dietlibc-0.33_pre20130103.ebuild b/dev-libs/dietlibc/dietlibc-0.33_pre20130103.ebuild new file mode 100644 index 00000000..962128d8 --- /dev/null +++ b/dev-libs/dietlibc/dietlibc-0.33_pre20130103.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 +inherit eutils flag-o-matic toolchain-funcs + +DESCRIPTION="A libc optimized for small size" +HOMEPAGE="http://www.fefe.de/dietlibc/" +SRC_URI="http://dev.gentoo.org/~pacho/maintainer-needed/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm -hppa ~ia64 ~mips ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="" + +DEPEND="" +RDEPEND="" + +DIETHOME=/usr/diet + +IUSE_LIBC_TARGET="alpha arm armeb i386 ia64 mips mipsel parisc parisc64 ppc ppc64 s390 s390x sparc sparc64 x86_64" + +for t in ${IUSE_LIBC_TARGET} ; do + IUSE="${IUSE} target_${t}" +done + +src_prepare() { + epatch "${FILESDIR}/${P}-BJA-nostrip.diff" +} + +diet_flags() { + # Reset CFLAGS + CFLAGS="" + + # 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 -nostdinc -W -Wall -Wextra -Wchar-subscripts \ + -Wmissing-prototypes -Wmissing-declarations -Wno-switch \ + -Wno-unused -Wredundant-decls -fno-strict-aliasing + + # only use -nopie on archs that support it + gcc-specs-pie && append-flags -nopie + + append-flags -Wa,--noexecstack +} + +src_compile() { + for t in ${IUSE_LIBC_TARGET} ; do + use target_$t $USE || continue + + tC="CROSS_$t" + if [ -z "${!tC}" ] ; then + ewarn "CROSS_$t not defined, can't build" + sleep 15 + continue + fi + + CHOST="$t" + diet_flags + + einfo "Building libc $t" + emake prefix="${EPREFIX}${DIETHOME}" \ + MYARCH="${t}" \ + CROSS="${!tC}" \ + CFLAGS="${CFLAGS}" + done +} + +src_install() { + emake prefix="${EPREFIX}${DIETHOME}" \ + DESTDIR="${ED}" \ + install-headers + + for t in ${IUSE_LIBC_TARGET} ; do + use target_$t $USE || continue + + einfo "Installing libc $t" + emake prefix="${EPREFIX}${DIETHOME}" \ + MYARCH="${t}" \ + DESTDIR="${ED}" \ + install-bin + done + + dobin "${ED}"${DIETHOME}/bin/* + doman "${ED}"${DIETHOME}/man/*/* + rm -r "${ED}"${DIETHOME}/{man,bin} || die + + dodoc AUTHOR BUGS CAVEAT CHANGES README THANKS TODO PORTING +} diff --git a/dev-libs/dietlibc/files/dietlibc-0.33_pre20130103-BJA-nostrip.diff b/dev-libs/dietlibc/files/dietlibc-0.33_pre20130103-BJA-nostrip.diff new file mode 100644 index 00000000..d6fec1a5 --- /dev/null +++ b/dev-libs/dietlibc/files/dietlibc-0.33_pre20130103-BJA-nostrip.diff @@ -0,0 +1,69 @@ +--- Makefile.ori 2013-06-10 18:20:59.431140867 +0200 ++++ Makefile 2013-06-10 18:21:15.203480123 +0200 +@@ -163,7 +163,6 @@ $(OBJDIR)/%.o: %.S $(ARCH)/syscalls.h + + $(OBJDIR)/%.o: %.c + tcc -I. -Iinclude -c $< -o $@ +- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@ + else + $(OBJDIR)/pstart.o: start.S + $(CROSS)$(CC) $(INC) $(CFLAGS) -DPROFILING -c $< -o $@ +@@ -173,11 +172,9 @@ $(OBJDIR)/%.o: %.S $(ARCH)/syscalls.h + + $(OBJDIR)/pthread_%.o: libpthread/pthread_%.c + $(CROSS)$(CC) $(INC) $(CFLAGS) -c $< -o $@ +- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@ + + $(OBJDIR)/%.o: %.c + $(CROSS)$(CC) $(INC) $(CFLAGS) -c $< -o $@ -D__dietlibc__ +- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@ + endif + + ifeq ($(shell $(CC) -v 2>&1 | grep "gcc version"),gcc version 4.0.0) +@@ -247,18 +244,15 @@ $(PICODIR)/%.o: %.S $(ARCH)/syscalls.h + + $(PICODIR)/pthread_%.o: libpthread/pthread_%.c + $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@ +- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@ + + $(PICODIR)/%.o: %.c + $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@ +- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@ + + $(PICODIR)/dstart.o: start.S + $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@ + + $(PICODIR)/dyn_so_start.o: dyn_start.c + $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -D__DYN_LIB_SHARED -c $< -o $@ +- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@ + + DYN_LIBC_PIC = $(LIBOBJ) $(LIBSTDIOOBJ) $(LIBUGLYOBJ) \ + $(LIBCRUFTOBJ) $(LIBCRYPTOBJ) $(LIBSHELLOBJ) $(LIBREGEXOBJ) +@@ -310,19 +304,15 @@ CURNAME=$(notdir $(shell pwd)) + + $(OBJDIR)/diet: $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o diet.c $(OBJDIR)/dietlibc.a $(OBJDIR)/dyn_stop.o + $(CROSS)$(CC) -isystem include $(CFLAGS) -nostdlib -o $@ $^ -DDIETHOME=\"$(HOME)\" -DVERSION=\"$(VERSION)\" -lgcc +- $(CROSS)strip -R .comment -R .note $@ + + $(OBJDIR)/diet-i: $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o diet.c $(OBJDIR)/dietlibc.a $(OBJDIR)/dyn_stop.o + $(CROSS)$(CC) -isystem include $(CFLAGS) -nostdlib -o $@ $^ -DDIETHOME=\"$(prefix)\" -DVERSION=\"$(VERSION)\" -DINSTALLVERSION -lgcc +- $(CROSS)strip -R .comment -R .note $@ + + $(PICODIR)/diet-dyn: $(PICODIR)/start.o $(PICODIR)/dyn_start.o diet.c + $(LD_UNSET) $(CROSS)$(CC) -isystem include $(CFLAGS) -fPIC -nostdlib -o $@ $^ -DDIETHOME=\"$(HOME)\" -D__DYN_LIB -DVERSION=\"$(VERSION)\" -L$(PICODIR) -lc -lgcc $(PICODIR)/dyn_stop.o -Wl,-dynamic-linker=$(HOME)/$(PICODIR)/libdl.so +- $(CROSS)strip -R .command -R .note $@ + + $(PICODIR)/diet-dyn-i: $(PICODIR)/start.o $(PICODIR)/dyn_start.o diet.c + $(LD_UNSET) $(CROSS)$(CC) -isystem include $(CFLAGS) -fPIC -nostdlib -o $@ $^ -DDIETHOME=\"$(prefix)\" -D__DYN_LIB -DVERSION=\"$(VERSION)\" -L$(PICODIR) -lc -lgcc $(PICODIR)/dyn_stop.o -Wl,-dynamic-linker=$(ILIBDIR)/libdl.so -DINSTALLVERSION +- $(CROSS)strip -R .command -R .note $@ + + $(OBJDIR)/djb: $(OBJDIR)/compile $(OBJDIR)/load + +@@ -535,7 +525,6 @@ $(OBJDIR)/fcntl64.o: dietfeatures.h + # This facepalm brought to you by: Ubuntu! + $(OBJDIR)/stackgap.o: lib/stackgap.c dietfeatures.h + $(CROSS)$(CC) $(INC) $(CFLAGS) -c lib/stackgap.c -o $@ -D__dietlibc__ -fno-stack-protector +- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@ + + # WANT_MALLOC_ZERO + $(OBJDIR)/strndup.o: dietfeatures.h diff --git a/dev-libs/dietlibc/files/dietlibc-4e86d5e-BJA-strip-override.diff b/dev-libs/dietlibc/files/dietlibc-4e86d5e-BJA-strip-override.diff deleted file mode 100644 index 1d90194f..00000000 --- a/dev-libs/dietlibc/files/dietlibc-4e86d5e-BJA-strip-override.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.ori 2011-08-10 22:15:33.407819951 +0200 -+++ Makefile 2011-08-10 22:15:52.794002728 +0200 -@@ -105,7 +105,7 @@ - - CC=gcc - INC=-I. -isystem include --STRIP=$(CROSS)strip -+STRIP?=$(CROSS)strip - - VPATH=lib:libstdio:libugly:libcruft:libcrypt:libshell:liblatin1:libcompat:libdl:librpc:libregex:libm:profiling - -- cgit v1.2.3