public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/musl:master commit in: app-editors/emacs/, app-editors/emacs/files/
@ 2017-04-06 21:59 Aric Belsito
  0 siblings, 0 replies; 2+ messages in thread
From: Aric Belsito @ 2017-04-06 21:59 UTC (permalink / raw
  To: gentoo-commits

commit:     a8d338d9fe131f0cfcf71737cb8cce9a506ddf8b
Author:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
AuthorDate: Thu Apr  6 21:58:11 2017 +0000
Commit:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
CommitDate: Thu Apr  6 21:59:36 2017 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=a8d338d9

app-editors/emacs: sync with tree

Drop r99 suffix.

 app-editors/emacs/Manifest                         |  7 +-
 ...{emacs-24.5-r99.ebuild => emacs-24.5-r3.ebuild} | 52 ++++++-------
 app-editors/emacs/files/emacs-24.3-stderr.patch    |  4 +-
 app-editors/emacs/files/preload.c                  | 88 ----------------------
 4 files changed, 28 insertions(+), 123 deletions(-)

diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest
index bd935ec..de94e07 100644
--- a/app-editors/emacs/Manifest
+++ b/app-editors/emacs/Manifest
@@ -1,10 +1,9 @@
 AUX emacs-24.3-alloc-invalid-frees.patch 1312 SHA256 f9d44c64663d546bfd1010230f8f7cdfdbce1d7320bf166d86045ff00ec6d498 SHA512 197c2146a2c6a820b8d01fa48e306c8ee083c2407d83589e0b18be8453e03438be1c64a010c06b9d68f2393ae4cccf86780ce8b17cd42335847f91f671ffaf2d WHIRLPOOL 2eb68ff289594b56117a26001b556c808336805771d62344183f9387aa459cb549e90476ae3f0216f0d42cdc1610b5de729d9cb8d19fb2cce679b39c196c7603
-AUX emacs-24.3-stderr.patch 277 SHA256 1fc337fac4e28cf20eed65f88cfcf94b46339408cceadc8a0d17bce969ae6d3a SHA512 370cb1d053530824050eec6b9f02f0eed0e91270940551712f7308ffd4657bba39513d9ab94d47306bbac1e507283a97326e6f366e47f64d093e794a25684b56 WHIRLPOOL 8ad5ab8c6cdaea01fcd784ef3993fbdd9c8e00d2f6aa12c70fc63a8da0e7e1513be45f74aa7b415c1b488cc73c9a1d2fc1f5c0283bfc0ad0a3417bd183bbb92d
+AUX emacs-24.3-stderr.patch 278 SHA256 ca8f431a822b0ae6e82e1600e5943a150ff18b0bfdf16ba2762a8b4aa715f276 SHA512 19c5f6292361f19649add12994b6179575962cefad50826d1584aab3a2d367ed38b2a6e9f733c12dda462dde72b1dd9465c62850ea572d728ea797a1db8f188f WHIRLPOOL 9e049bbd4356aa363b7118e92445bb47429ab5761987e83f495a03891c1a0217863356c4a2d3421e32834b5db2271ada3382fccffdb52244ba782e139e396930
 AUX emacs-24.4-configure.patch 334 SHA256 696710ea84e88a364bd89c9c66393b01b2b8782d2bd0fc08166e64b67b24b0fe SHA512 d75df3a772713e08b45759b58c92944a1719ce291069f111d296b15c7de86f7a9a89d023fa3ccd191390d8a79a671d0a60116f039cf6f57ebeeb7baa14f7af29 WHIRLPOOL 6420f6a5f8009096aa71f2e64d920dec6a1436bbb83c26c2a0d4180555b6e251ebfa92be801ddcf70bd840cb9afd56f99a84ad50be7361289baefe83e35ca52b
 AUX emacs-24.4-lisp.patch 421 SHA256 da45d30d4e305ba5220749d3ac884aaeac395bc896839a5e7a24fb112912cbff SHA512 7dda7632f7af4207c94bf2b4384d07bb13ef4562ade02393c668b35ff48d7b64d95a9c05d8700c2ba272abf69e8b9c38a690b10afa86b8857a2ba34cb344f3a3 WHIRLPOOL 28e3346a1b47f8421d56ec37005a806828f1f6995cd4dc213ac8a6011457a7d1d0524f8418a2801e176c5ea09cb5910cd6432a55c592d679f7752c3df23ca339
 AUX emacs-24.4-preload-hack.patch 343 SHA256 289febdc960bee609514fe5291fb3d60cc9b505345853370aa94b9bd9ccb5fd2 SHA512 ee765cc9f3a84b48c00a0c8a36934af6da737fa6b9f9d993e0e5e1c8b9f05cf7b1f96c260daba10e4b4df149abcf8ea125cf8d6ebbe5e2c0d508007e381ecd6b WHIRLPOOL f5c1c6313392325949edc955d9f1b3dc74395ff18cd214f5bef6f8f77ce1975233c870101a03d5218da007a61f3107474ef461d129313b00b07da762970b749a
-AUX preload.c 1868 SHA256 3498abf641e809c06bf6a265d54880e93ee31f7abf81210856b6dbef7d267129 SHA512 6268255b7afa8455ad7ce63ef6f01a7d114b53fbb3dc557b187de0ee6514b33b3419d70b8d7984dc289f5eed075a30b508133147821f77c4345df5cbd62e616e WHIRLPOOL 0c72d97de94cf5e1cf6a8ee4f8f42800d63f35465ea22f8c409857620ecc37e304ff6c2c4670659a063e5f275488fcdd1b45226d9d0130c4506480df7708bff6
-DIST emacs-24.5-patches-1.tar.xz 3744 SHA256 dbcad232dff47e5540fff33351d76a92165e3d379a9c1fe52c04268a1ae245f8 SHA512 0c17546211493a521eec026e05722ebfa0988d2d97c916f8ddbe4d54220fbb6256cb8ad76769a8832fe7028051ecfe04d8ac46da71d7c5a6d2906b57466496db WHIRLPOOL 29cbd3513a62b025994918c6fbf86d70e282dfc0b1fc70639afcf356946e7c46ecc099a552e3735346d6b13c494db93246605eff002c34f1d0859ac04f1025fe
+DIST emacs-24.5-patches-3.tar.xz 12500 SHA256 4927e037141c0c242d0d6d3aa7dfde140faae361aa556e6ded64b7ab26819f07 SHA512 9bddca3d4a67b57ca03c26fbca378def345592a95c40e868fc47fd9944ed0f750bc30f3a4d588a8a0b4c90daa6c9ed63b56182e8d2d87b4c8d849bf834ead1cc WHIRLPOOL c16cbfda1040b205ced4c1ed120aad6f65285fb315ce89dc936e6a357fbc8f9215fb178b696d2a914c53c6869384f0b1b56fcb6b84c5438f026101b4989de6c5
 DIST emacs-24.5.tar.xz 39759804 SHA256 dd47d71dd2a526cf6b47cb49af793ec2e26af69a0951cc40e43ae290eacfc34e SHA512 89dee4c3aadb6e505c523f84c65b5e40e5bf28a586cc8a4518a59581c22972f942bb6f3c772df0d5b2685c3e78247c545c6bb2576e981d1ef0f9298c18ad1677 WHIRLPOOL 3d9f8fb840f4c846246e642369f967ba0ec357c7cf718ed865523a3cd39605ba14b8c15fc9ae3f076c27e5b6e41fcb681d15f1c6ffc5934430c0a2bf47c233a3
-EBUILD emacs-24.5-r99.ebuild 11260 SHA256 c751b63ac327a79cbd3970d9014936b597c68d9b15cb13244cfd065a92682d85 SHA512 e7cfa88e9006e7c0b40d5d8c38689c0b695eebc4d8d95bb6778ae24e56d35e9d06b76eac90e721721292bd14dd7699b4fc4da8254258c4907758167408b81d82 WHIRLPOOL e9de6b45f6fe38518dc88dcbb758f037f43e2f808877a9ad2fa814389c0883fd65052db9ae0727d945c172c51db0dd340e72360b8e040c801aa8e448d3128cf6
+EBUILD emacs-24.5-r3.ebuild 11297 SHA256 9c0a7e05ebd9cb5995f3baad0d14d906c9b80d83d4277c9d8594796e29aec495 SHA512 4f63e74f1fdb760e54b5fd874772872c25b2d4a8486d25223f651e814d37090e4b63731fe2a7ea9afc8e23e1b6941f26ab88886df35b26bcb87fef6c1e9376e0 WHIRLPOOL 330dd385d43183b74f94894499566920ea22c6a858ac7971ceb5f9f1eb33d3047563135f68a7a90cfe690c9a07738a1aef6a059f9a06213b432d4e3a3b641129
 MISC metadata.xml 2576 SHA256 2ea79bae728183789a3619b7d1e02422125237513dcc8ab2c7e3580011d4ff59 SHA512 e1af4c39ed9ff2ccad79bb0401809ed433fb30836270ddc76937bffcc3688b32e5d8dc29f23c0c01facdcaa069acf73fa0b75e33f26dc075cd79afb49f46c37c WHIRLPOOL 3dce181c54e30d66ed75abad7ced29949105a435f0b1f669c95f267466d97d6da92b3f3d200c4d711c7633dcadef1a5fb2e8d9a71288999db693fcb669c724dd

diff --git a/app-editors/emacs/emacs-24.5-r99.ebuild b/app-editors/emacs/emacs-24.5-r3.ebuild
similarity index 89%
rename from app-editors/emacs/emacs-24.5-r99.ebuild
rename to app-editors/emacs/emacs-24.5-r3.ebuild
index d2d27e6..a83f805 100644
--- a/app-editors/emacs/emacs-24.5-r99.ebuild
+++ b/app-editors/emacs/emacs-24.5-r3.ebuild
@@ -1,36 +1,35 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
-EAPI=5
+EAPI=6
 
-inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
+inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo-r1
 
 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
 HOMEPAGE="https://www.gnu.org/software/emacs/"
 SRC_URI="mirror://gnu/emacs/${P}.tar.xz
-	https://dev.gentoo.org/~ulm/emacs/${P}-patches-1.tar.xz"
+	https://dev.gentoo.org/~ulm/emacs/${P}-patches-3.tar.xz"
 
 LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
 SLOT="24"
-KEYWORDS="amd64 arm ~mips ppc x86"
-IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="acl alsa aqua athena dbus games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
 REQUIRED_USE="?? ( aqua X )"
 
-RDEPEND="sys-libs/ncurses:0
+RDEPEND="sys-libs/ncurses:0=
 	>=app-eselect/eselect-emacs-1.16
 	>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
 	net-libs/liblockfile
 	acl? ( virtual/acl )
 	alsa? ( media-libs/alsa-lib )
 	dbus? ( sys-apps/dbus )
-	gfile? ( >=dev-libs/glib-2.28.6 )
-	gnutls? ( net-libs/gnutls )
 	gpm? ( sys-libs/gpm )
 	hesiod? ( net-dns/hesiod )
+	!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
 	kerberos? ( virtual/krb5 )
 	libxml2? ( >=dev-libs/libxml2-2.2.0 )
 	selinux? ( sys-libs/libselinux )
+	ssl? ( net-libs/gnutls )
 	zlib? ( sys-libs/zlib )
 	X? (
 		x11-libs/libXmu
@@ -38,13 +37,13 @@ RDEPEND="sys-libs/ncurses:0
 		x11-misc/xbitmaps
 		gconf? ( >=gnome-base/gconf-2.26.2 )
 		gsettings? ( >=dev-libs/glib-2.28.6 )
-		gif? ( media-libs/giflib )
+		gif? ( media-libs/giflib:0= )
 		jpeg? ( virtual/jpeg:0= )
 		png? ( >=media-libs/libpng-1.4:0= )
 		svg? ( >=gnome-base/librsvg-2.0 )
 		tiff? ( media-libs/tiff:0 )
 		xpm? ( x11-libs/libXpm )
-		imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
+		imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
 		xft? (
 			media-libs/fontconfig
 			media-libs/freetype
@@ -70,10 +69,7 @@ RDEPEND="sys-libs/ncurses:0
 DEPEND="${RDEPEND}
 	virtual/pkgconfig
 	gzip-el? ( app-arch/gzip )
-	pax_kernel? (
-		sys-apps/attr
-		sys-apps/paxctl
-	)"
+	pax_kernel? ( sys-apps/attr )"
 
 RDEPEND="${RDEPEND}
 	!<app-editors/emacs-vcs-${PV}"
@@ -87,21 +83,22 @@ FULL_VERSION="${PV%%_*}"
 S="${WORKDIR}/emacs-${FULL_VERSION}"
 
 src_prepare() {
-	EPATCH_SUFFIX=patch epatch
+	eapply ../patch
 
-	epatch "${FILESDIR}/${PN}-24.3-stderr.patch"
-	epatch "${FILESDIR}/${PN}-24.3-alloc-invalid-frees.patch"
-	epatch "${FILESDIR}/${PN}-24.4-configure.patch"
-	epatch "${FILESDIR}/${PN}-24.4-preload-hack.patch"
-	epatch "${FILESDIR}/${PN}-24.4-lisp.patch"
+	eapply "${FILESDIR}/${PN}-24.3-stderr.patch"
+	eapply "${FILESDIR}/${PN}-24.3-alloc-invalid-frees.patch"
+	eapply "${FILESDIR}/${PN}-24.4-configure.patch"
+	eapply "${FILESDIR}/${PN}-24.4-preload-hack.patch"
+	eapply "${FILESDIR}/${PN}-24.4-lisp.patch"
 
-	epatch_user
+	eapply_user
 
 	# Fix filename reference in redirected man page
 	sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
 		|| die "unable to sed ctags.1"
 
 	AT_M4DIR=m4 eautoreconf
+	touch src/stamp-h.in || die
 }
 
 src_configure() {
@@ -150,7 +147,7 @@ src_configure() {
 				"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
 		fi
 
-		local f
+		local f line
 		if use gtk; then
 			einfo "Configuring to build with GIMP Toolkit (GTK+)"
 			while read line; do ewarn "${line}"; done <<-EOF
@@ -200,24 +197,21 @@ src_configure() {
 		--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
 		--with-gameuser=":gamestat" \
 		--without-compress-install \
-		--with-file-notification=$(usev gfile || usev inotify || echo no) \
+		--with-file-notification=$(usev inotify || usev gfile || echo no) \
 		$(use_enable acl) \
 		$(use_with dbus) \
-		$(use_with gnutls) \
 		$(use_with gpm) \
 		$(use_with hesiod) \
 		$(use_with kerberos) $(use_with kerberos kerberos5) \
 		$(use_with libxml2 xml2) \
 		$(use_with selinux) \
+		$(use_with ssl gnutls) \
 		$(use_with wide-int) \
 		$(use_with zlib) \
 		${myconf}
 }
 
 src_compile() {
-	# compile preload hack
-	$(tc-getCC) -shared -fPIC -o preload.so "${FILESDIR}/preload.c" || die
-
 	export SANDBOX_ON=0			# for the unbelievers, see Bug #131505
 	emake
 }

diff --git a/app-editors/emacs/files/emacs-24.3-stderr.patch b/app-editors/emacs/files/emacs-24.3-stderr.patch
index a3beb9f..8c7d552 100644
--- a/app-editors/emacs/files/emacs-24.3-stderr.patch
+++ b/app-editors/emacs/files/emacs-24.3-stderr.patch
@@ -1,5 +1,5 @@
---- a/emacs-24.3/src/print.c
-+++ b/emacs-24.3/src/print.c
+--- emacs-24.3.orig/src/print.c
++++ emacs-24.3/src/print.c
 @@ -733,7 +733,7 @@
    print_output_debug_flag = x;
  }

diff --git a/app-editors/emacs/files/preload.c b/app-editors/emacs/files/preload.c
deleted file mode 100644
index 65cdcef..0000000
--- a/app-editors/emacs/files/preload.c
+++ /dev/null
@@ -1,88 +0,0 @@
-// http://www.openwall.com/lists/musl/2015/02/03/1
-#include <pthread.h>
-#include <stdint.h>
-#include <stdlib.h>
-#include <string.h>
-#include <dlfcn.h>
-#include <unistd.h>
-#include <stdio.h>
-
-static void *(*real_malloc)(size_t);
-static void *initial_brk;
-
-static pthread_once_t once_control[1];
-static void once_func()
-{
-	real_malloc = dlsym(RTLD_NEXT, "malloc");
-	initial_brk = sbrk(0);
-}
-
-static int cmp(const void *a, const void *b)
-{
-	void *aa = *(void **)a, *bb = *(void **)b;
-	return aa < bb ? -1 : aa > bb ? 1 : 0;
-}
-
-void *malloc(size_t n)
-{
-	size_t i, j, k;
-	pthread_once(once_control, once_func);
-	if (n < 100000 || n > (size_t)-1/2) {
-		void *p;
-		do p = real_malloc(n);
-		while (p > sbrk(0) || (p && p < initial_brk));
-		return p;
-	}
-	size_t cnt = n/16384;
-	void **list = real_malloc(sizeof *list * cnt);
-	if (!list) return 0;
-	for (i=0; i<cnt; i++) list[i] = 0;
-	for (i=0; i<cnt; i++) {
-		list[i] = real_malloc(65536 - 2*sizeof(size_t));
-		if (!list[i]) goto fail;
-		if (i<cnt/4) continue;
-		size_t base = 0;
-		qsort(list, i+1, sizeof(void *), cmp);
-		for (j=0; j<i; j++) {
-			char *p = list[base];
-			char *s = list[j];
-			char *z = list[j+1];
-			if (z-s > 65536) {
-				base = j+1;
-				continue;
-			}
-			if (z-p < n+64) {
-				continue;
-			}
-			for (k=0; k<base; k++) free(list[k]);
-			*(size_t *)(p-sizeof(size_t)) = z-p | 1;
-			*(size_t *)(z-2*sizeof(size_t)) = z-p | 1;
-			for (k=j+1; k<i+1; k++) free(list[k]);
-			free(list);
-			return p;
-		}
-	}
-fail:
-	for (i=0; i<cnt; i++) free(list[i]);
-	free(list);
-	return 0;
-}
-
-void *calloc(size_t n, size_t m)
-{
-	if ((size_t)-1/n <= m) n *= m;
-	else n = (size_t)-1;
-	void *p = malloc(n);
-	if (p) memset(p, 0, n);
-	return p;
-}
-
-void *realloc(void *p, size_t n)
-{
-	void *q = malloc(n);
-	if (!q) return 0;
-	size_t l = *(size_t *)((char *)p - sizeof(size_t)) & -8;
-	memcpy(q, p, l<n ? l : n);
-	free(p);
-	return q;
-}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] proj/musl:master commit in: app-editors/emacs/, app-editors/emacs/files/
@ 2017-04-06 22:04 Aric Belsito
  0 siblings, 0 replies; 2+ messages in thread
From: Aric Belsito @ 2017-04-06 22:04 UTC (permalink / raw
  To: gentoo-commits

commit:     1e9fa4be730271d32f38376cbab2691500efb94e
Author:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
AuthorDate: Thu Apr  6 22:04:26 2017 +0000
Commit:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
CommitDate: Thu Apr  6 22:04:26 2017 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=1e9fa4be

app-editors/emacs: restore preload hack

 app-editors/emacs/Manifest             |  3 +-
 app-editors/emacs/emacs-24.5-r3.ebuild |  3 ++
 app-editors/emacs/files/preload.c      | 88 ++++++++++++++++++++++++++++++++++
 3 files changed, 93 insertions(+), 1 deletion(-)

diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest
index de94e07..f72390d 100644
--- a/app-editors/emacs/Manifest
+++ b/app-editors/emacs/Manifest
@@ -3,7 +3,8 @@ AUX emacs-24.3-stderr.patch 278 SHA256 ca8f431a822b0ae6e82e1600e5943a150ff18b0bf
 AUX emacs-24.4-configure.patch 334 SHA256 696710ea84e88a364bd89c9c66393b01b2b8782d2bd0fc08166e64b67b24b0fe SHA512 d75df3a772713e08b45759b58c92944a1719ce291069f111d296b15c7de86f7a9a89d023fa3ccd191390d8a79a671d0a60116f039cf6f57ebeeb7baa14f7af29 WHIRLPOOL 6420f6a5f8009096aa71f2e64d920dec6a1436bbb83c26c2a0d4180555b6e251ebfa92be801ddcf70bd840cb9afd56f99a84ad50be7361289baefe83e35ca52b
 AUX emacs-24.4-lisp.patch 421 SHA256 da45d30d4e305ba5220749d3ac884aaeac395bc896839a5e7a24fb112912cbff SHA512 7dda7632f7af4207c94bf2b4384d07bb13ef4562ade02393c668b35ff48d7b64d95a9c05d8700c2ba272abf69e8b9c38a690b10afa86b8857a2ba34cb344f3a3 WHIRLPOOL 28e3346a1b47f8421d56ec37005a806828f1f6995cd4dc213ac8a6011457a7d1d0524f8418a2801e176c5ea09cb5910cd6432a55c592d679f7752c3df23ca339
 AUX emacs-24.4-preload-hack.patch 343 SHA256 289febdc960bee609514fe5291fb3d60cc9b505345853370aa94b9bd9ccb5fd2 SHA512 ee765cc9f3a84b48c00a0c8a36934af6da737fa6b9f9d993e0e5e1c8b9f05cf7b1f96c260daba10e4b4df149abcf8ea125cf8d6ebbe5e2c0d508007e381ecd6b WHIRLPOOL f5c1c6313392325949edc955d9f1b3dc74395ff18cd214f5bef6f8f77ce1975233c870101a03d5218da007a61f3107474ef461d129313b00b07da762970b749a
+AUX preload.c 1868 SHA256 3498abf641e809c06bf6a265d54880e93ee31f7abf81210856b6dbef7d267129 SHA512 6268255b7afa8455ad7ce63ef6f01a7d114b53fbb3dc557b187de0ee6514b33b3419d70b8d7984dc289f5eed075a30b508133147821f77c4345df5cbd62e616e WHIRLPOOL 0c72d97de94cf5e1cf6a8ee4f8f42800d63f35465ea22f8c409857620ecc37e304ff6c2c4670659a063e5f275488fcdd1b45226d9d0130c4506480df7708bff6
 DIST emacs-24.5-patches-3.tar.xz 12500 SHA256 4927e037141c0c242d0d6d3aa7dfde140faae361aa556e6ded64b7ab26819f07 SHA512 9bddca3d4a67b57ca03c26fbca378def345592a95c40e868fc47fd9944ed0f750bc30f3a4d588a8a0b4c90daa6c9ed63b56182e8d2d87b4c8d849bf834ead1cc WHIRLPOOL c16cbfda1040b205ced4c1ed120aad6f65285fb315ce89dc936e6a357fbc8f9215fb178b696d2a914c53c6869384f0b1b56fcb6b84c5438f026101b4989de6c5
 DIST emacs-24.5.tar.xz 39759804 SHA256 dd47d71dd2a526cf6b47cb49af793ec2e26af69a0951cc40e43ae290eacfc34e SHA512 89dee4c3aadb6e505c523f84c65b5e40e5bf28a586cc8a4518a59581c22972f942bb6f3c772df0d5b2685c3e78247c545c6bb2576e981d1ef0f9298c18ad1677 WHIRLPOOL 3d9f8fb840f4c846246e642369f967ba0ec357c7cf718ed865523a3cd39605ba14b8c15fc9ae3f076c27e5b6e41fcb681d15f1c6ffc5934430c0a2bf47c233a3
-EBUILD emacs-24.5-r3.ebuild 11297 SHA256 9c0a7e05ebd9cb5995f3baad0d14d906c9b80d83d4277c9d8594796e29aec495 SHA512 4f63e74f1fdb760e54b5fd874772872c25b2d4a8486d25223f651e814d37090e4b63731fe2a7ea9afc8e23e1b6941f26ab88886df35b26bcb87fef6c1e9376e0 WHIRLPOOL 330dd385d43183b74f94894499566920ea22c6a858ac7971ceb5f9f1eb33d3047563135f68a7a90cfe690c9a07738a1aef6a059f9a06213b432d4e3a3b641129
+EBUILD emacs-24.5-r3.ebuild 11394 SHA256 3cacb6d7d80c231fbf91672bec23459e926b11055fe060fda90d471cc3a67380 SHA512 686c87909c5f7381da890f8fd3fb89b320584ee498fbe0afdd2565d17e99fb4c7e5ec4884e0752d06befa8739434d170e894a3c4b634d5d34a3803b70778201b WHIRLPOOL a9b17e5391e6c9a03a8c912b8e7177bac316b6111b5834d77d8b79ff61e3a84e5afde3a670099169cd11413e1d7ef66bf913c282ec722d9f1776947088ed69aa
 MISC metadata.xml 2576 SHA256 2ea79bae728183789a3619b7d1e02422125237513dcc8ab2c7e3580011d4ff59 SHA512 e1af4c39ed9ff2ccad79bb0401809ed433fb30836270ddc76937bffcc3688b32e5d8dc29f23c0c01facdcaa069acf73fa0b75e33f26dc075cd79afb49f46c37c WHIRLPOOL 3dce181c54e30d66ed75abad7ced29949105a435f0b1f669c95f267466d97d6da92b3f3d200c4d711c7633dcadef1a5fb2e8d9a71288999db693fcb669c724dd

diff --git a/app-editors/emacs/emacs-24.5-r3.ebuild b/app-editors/emacs/emacs-24.5-r3.ebuild
index a83f805..41e240d 100644
--- a/app-editors/emacs/emacs-24.5-r3.ebuild
+++ b/app-editors/emacs/emacs-24.5-r3.ebuild
@@ -212,6 +212,9 @@ src_configure() {
 }
 
 src_compile() {
+	# compile preload hack
+	$(tc-getCC) -shared -fPIC -o preload.so "${FILESDIR}/preload.c" || die
+
 	export SANDBOX_ON=0			# for the unbelievers, see Bug #131505
 	emake
 }

diff --git a/app-editors/emacs/files/preload.c b/app-editors/emacs/files/preload.c
new file mode 100644
index 0000000..65cdcef
--- /dev/null
+++ b/app-editors/emacs/files/preload.c
@@ -0,0 +1,88 @@
+// http://www.openwall.com/lists/musl/2015/02/03/1
+#include <pthread.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dlfcn.h>
+#include <unistd.h>
+#include <stdio.h>
+
+static void *(*real_malloc)(size_t);
+static void *initial_brk;
+
+static pthread_once_t once_control[1];
+static void once_func()
+{
+	real_malloc = dlsym(RTLD_NEXT, "malloc");
+	initial_brk = sbrk(0);
+}
+
+static int cmp(const void *a, const void *b)
+{
+	void *aa = *(void **)a, *bb = *(void **)b;
+	return aa < bb ? -1 : aa > bb ? 1 : 0;
+}
+
+void *malloc(size_t n)
+{
+	size_t i, j, k;
+	pthread_once(once_control, once_func);
+	if (n < 100000 || n > (size_t)-1/2) {
+		void *p;
+		do p = real_malloc(n);
+		while (p > sbrk(0) || (p && p < initial_brk));
+		return p;
+	}
+	size_t cnt = n/16384;
+	void **list = real_malloc(sizeof *list * cnt);
+	if (!list) return 0;
+	for (i=0; i<cnt; i++) list[i] = 0;
+	for (i=0; i<cnt; i++) {
+		list[i] = real_malloc(65536 - 2*sizeof(size_t));
+		if (!list[i]) goto fail;
+		if (i<cnt/4) continue;
+		size_t base = 0;
+		qsort(list, i+1, sizeof(void *), cmp);
+		for (j=0; j<i; j++) {
+			char *p = list[base];
+			char *s = list[j];
+			char *z = list[j+1];
+			if (z-s > 65536) {
+				base = j+1;
+				continue;
+			}
+			if (z-p < n+64) {
+				continue;
+			}
+			for (k=0; k<base; k++) free(list[k]);
+			*(size_t *)(p-sizeof(size_t)) = z-p | 1;
+			*(size_t *)(z-2*sizeof(size_t)) = z-p | 1;
+			for (k=j+1; k<i+1; k++) free(list[k]);
+			free(list);
+			return p;
+		}
+	}
+fail:
+	for (i=0; i<cnt; i++) free(list[i]);
+	free(list);
+	return 0;
+}
+
+void *calloc(size_t n, size_t m)
+{
+	if ((size_t)-1/n <= m) n *= m;
+	else n = (size_t)-1;
+	void *p = malloc(n);
+	if (p) memset(p, 0, n);
+	return p;
+}
+
+void *realloc(void *p, size_t n)
+{
+	void *q = malloc(n);
+	if (!q) return 0;
+	size_t l = *(size_t *)((char *)p - sizeof(size_t)) & -8;
+	memcpy(q, p, l<n ? l : n);
+	free(p);
+	return q;
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-04-06 22:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-06 21:59 [gentoo-commits] proj/musl:master commit in: app-editors/emacs/, app-editors/emacs/files/ Aric Belsito
  -- strict thread matches above, loose matches on Subject: below --
2017-04-06 22:04 Aric Belsito

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox