diff options
author | Matthew Kennedy <mkennedy@gentoo.org> | 2006-07-25 14:17:12 +0000 |
---|---|---|
committer | Matthew Kennedy <mkennedy@gentoo.org> | 2006-07-25 14:17:12 +0000 |
commit | b4f5d518e53bc06e736f47fa81a631d3f3810bcb (patch) | |
tree | dac521a4e40ceb26dd902faf09b5e869c7be9178 /app-editors | |
parent | added RDEPEND on selinux-wireshark for USE=selinux. Thanks to Petre bug #141156 (diff) | |
download | gentoo-2-b4f5d518e53bc06e736f47fa81a631d3f3810bcb.tar.gz gentoo-2-b4f5d518e53bc06e736f47fa81a631d3f3810bcb.tar.bz2 gentoo-2-b4f5d518e53bc06e736f47fa81a631d3f3810bcb.zip |
Various GCC4 fixes; Resolves Bug #141292; Thanks to Christian 'Opfer' Faulhammer.
(Portage version: 2.1.1_pre3-r3)
Diffstat (limited to 'app-editors')
-rw-r--r-- | app-editors/qemacs/ChangeLog | 12 | ||||
-rw-r--r-- | app-editors/qemacs/files/digest-qemacs-0.3.1 | 2 | ||||
-rw-r--r-- | app-editors/qemacs/files/digest-qemacs-0.3.1-r1 | 2 | ||||
-rw-r--r-- | app-editors/qemacs/files/digest-qemacs-0.3.1-r2 | 2 | ||||
-rw-r--r-- | app-editors/qemacs/files/digest-qemacs-0.3.1-r3 | 3 | ||||
-rw-r--r-- | app-editors/qemacs/files/qemacs-0.3.1-gcc4_charset_c.patch | 14 | ||||
-rw-r--r-- | app-editors/qemacs/files/qemacs-0.3.1-gcc4_tty_c.patch | 14 | ||||
-rw-r--r-- | app-editors/qemacs/files/qemacs-0.3.1-gcc4_x11_c.patch | 11 | ||||
-rw-r--r-- | app-editors/qemacs/files/qemacs-0.3.1-libpng-1_2.patch | 73 | ||||
-rw-r--r-- | app-editors/qemacs/qemacs-0.3.1-r3.ebuild | 101 |
10 files changed, 233 insertions, 1 deletions
diff --git a/app-editors/qemacs/ChangeLog b/app-editors/qemacs/ChangeLog index 55c4ec481595..1e7b775c8a1c 100644 --- a/app-editors/qemacs/ChangeLog +++ b/app-editors/qemacs/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for app-editors/qemacs # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/qemacs/ChangeLog,v 1.17 2006/03/18 23:41:53 joshuabaergen Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/qemacs/ChangeLog,v 1.18 2006/07/25 14:17:12 mkennedy Exp $ + +*qemacs-0.3.1-r3 (25 Jul 2006) + + 25 Jul 2006; Matthew Kennedy <mkennedy@gentoo.org> + +files/qemacs-0.3.1-gcc4_charset_c.patch, + +files/qemacs-0.3.1-gcc4_tty_c.patch, + +files/qemacs-0.3.1-gcc4_x11_c.patch, + +files/qemacs-0.3.1-libpng-1_2.patch, +qemacs-0.3.1-r3.ebuild: + Various GCC4 fixes; Resolves Bug #141292; Thanks to Christian 'Opfer' + Faulhammer. 18 Mar 2006; Joshua Baergen <joshuabaergen@gentoo.org> qemacs-0.3.1.ebuild, qemacs-0.3.1-r1.ebuild, qemacs-0.3.1-r2.ebuild: diff --git a/app-editors/qemacs/files/digest-qemacs-0.3.1 b/app-editors/qemacs/files/digest-qemacs-0.3.1 index 86ccf24a3138..52039e47f4ea 100644 --- a/app-editors/qemacs/files/digest-qemacs-0.3.1 +++ b/app-editors/qemacs/files/digest-qemacs-0.3.1 @@ -1 +1,3 @@ MD5 74d85dee9861d494bf1f9c53bbc85298 qemacs-0.3.1.tar.gz 809124 +RMD160 05eaddf872cbf6c187a63c80ed1eb02a23a1a13d qemacs-0.3.1.tar.gz 809124 +SHA256 a3db57e09729d8c83be5ff9ab028ece173d8f5f10aaf61ca41f88aecb64996c7 qemacs-0.3.1.tar.gz 809124 diff --git a/app-editors/qemacs/files/digest-qemacs-0.3.1-r1 b/app-editors/qemacs/files/digest-qemacs-0.3.1-r1 index 86ccf24a3138..52039e47f4ea 100644 --- a/app-editors/qemacs/files/digest-qemacs-0.3.1-r1 +++ b/app-editors/qemacs/files/digest-qemacs-0.3.1-r1 @@ -1 +1,3 @@ MD5 74d85dee9861d494bf1f9c53bbc85298 qemacs-0.3.1.tar.gz 809124 +RMD160 05eaddf872cbf6c187a63c80ed1eb02a23a1a13d qemacs-0.3.1.tar.gz 809124 +SHA256 a3db57e09729d8c83be5ff9ab028ece173d8f5f10aaf61ca41f88aecb64996c7 qemacs-0.3.1.tar.gz 809124 diff --git a/app-editors/qemacs/files/digest-qemacs-0.3.1-r2 b/app-editors/qemacs/files/digest-qemacs-0.3.1-r2 index 86ccf24a3138..52039e47f4ea 100644 --- a/app-editors/qemacs/files/digest-qemacs-0.3.1-r2 +++ b/app-editors/qemacs/files/digest-qemacs-0.3.1-r2 @@ -1 +1,3 @@ MD5 74d85dee9861d494bf1f9c53bbc85298 qemacs-0.3.1.tar.gz 809124 +RMD160 05eaddf872cbf6c187a63c80ed1eb02a23a1a13d qemacs-0.3.1.tar.gz 809124 +SHA256 a3db57e09729d8c83be5ff9ab028ece173d8f5f10aaf61ca41f88aecb64996c7 qemacs-0.3.1.tar.gz 809124 diff --git a/app-editors/qemacs/files/digest-qemacs-0.3.1-r3 b/app-editors/qemacs/files/digest-qemacs-0.3.1-r3 new file mode 100644 index 000000000000..52039e47f4ea --- /dev/null +++ b/app-editors/qemacs/files/digest-qemacs-0.3.1-r3 @@ -0,0 +1,3 @@ +MD5 74d85dee9861d494bf1f9c53bbc85298 qemacs-0.3.1.tar.gz 809124 +RMD160 05eaddf872cbf6c187a63c80ed1eb02a23a1a13d qemacs-0.3.1.tar.gz 809124 +SHA256 a3db57e09729d8c83be5ff9ab028ece173d8f5f10aaf61ca41f88aecb64996c7 qemacs-0.3.1.tar.gz 809124 diff --git a/app-editors/qemacs/files/qemacs-0.3.1-gcc4_charset_c.patch b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_charset_c.patch new file mode 100644 index 000000000000..5c8942bc2318 --- /dev/null +++ b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_charset_c.patch @@ -0,0 +1,14 @@ +# This patch has been taken from the Debian bug tracker found at +# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=288175 +# resolving compile problems with GCC 4, see bug #141292 +--- /tmp/charset.c 2006-07-25 09:30:28.000000000 +0200 ++++ charset.c 2006-07-25 09:31:18.000000000 +0200 +@@ -20,7 +20,7 @@ + + QECharset *first_charset = NULL; + +-extern QECharset charset_7bit; ++static QECharset charset_7bit; + + /* specific tables */ + static unsigned short table_idem[256]; diff --git a/app-editors/qemacs/files/qemacs-0.3.1-gcc4_tty_c.patch b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_tty_c.patch new file mode 100644 index 000000000000..f7fe13f7d1bb --- /dev/null +++ b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_tty_c.patch @@ -0,0 +1,14 @@ +# This patch has been taken from the Debian bug tracker found at +# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=288175 +# resolving compile problems with GCC 4, see bug #141292 +--- /tmp/tty.c 2006-07-25 09:26:08.000000000 +0200 ++++ tty.c 2006-07-25 09:26:28.000000000 +0200 +@@ -69,7 +69,7 @@ + return 1; + } + +-extern QEDisplay tty_dpy; ++static QEDisplay tty_dpy; + + static int term_init(QEditScreen *s, int w, int h) + { diff --git a/app-editors/qemacs/files/qemacs-0.3.1-gcc4_x11_c.patch b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_x11_c.patch new file mode 100644 index 000000000000..9dc8b011c306 --- /dev/null +++ b/app-editors/qemacs/files/qemacs-0.3.1-gcc4_x11_c.patch @@ -0,0 +1,11 @@ +--- /tmp/x11.c 2006-07-25 09:30:34.000000000 +0200 ++++ x11.c 2006-07-25 09:31:13.000000000 +0200 +@@ -76,7 +76,7 @@ + static CSSRect update_rects[UPDATE_MAX_REGIONS]; + #endif + +-extern QEDisplay x11_dpy; ++static QEDisplay x11_dpy; + static int visual_depth; + + static int force_tty = 0; diff --git a/app-editors/qemacs/files/qemacs-0.3.1-libpng-1_2.patch b/app-editors/qemacs/files/qemacs-0.3.1-libpng-1_2.patch new file mode 100644 index 000000000000..566677375d3f --- /dev/null +++ b/app-editors/qemacs/files/qemacs-0.3.1-libpng-1_2.patch @@ -0,0 +1,73 @@ +# This patch has been taken from the openSUSE bug tracker found at +# http://lists.opensuse.org/archive/opensuse-commit/2006-Jun/0984.html, +# fixing the use of outdated functions of libpng, see bug #141566 +--- /tmp/html2png.c 2006-07-25 09:53:14.000000000 +0200 ++++ html2png.c 2006-07-25 09:56:30.000000000 +0200 +@@ -186,13 +186,12 @@ + } + + #ifdef CONFIG_PNG_OUTPUT +-extern void png_write_init(); + + int png_save(QEditScreen *s, const char *filename) + { + CFBContext *cfb = s->private; +- png_struct * volatile png_ptr = NULL; +- png_info * volatile info_ptr = NULL; ++ png_structp png_ptr = NULL; ++ png_infop info_ptr = NULL; + png_byte *row_ptr, *row_pointers[1], *row = NULL; + int w, h, x, y; + unsigned int r, g, b, v; +@@ -202,32 +201,30 @@ + row = malloc(3 * s->width); + if (!row) + goto fail; +- png_ptr = malloc(sizeof (png_struct)); ++ png_ptr = png_create_write_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); + if (!png_ptr) + goto fail; +- info_ptr = malloc(sizeof (png_info)); +- if (!info_ptr) +- goto fail; ++ info_ptr = png_create_info_struct (png_ptr); ++ if (!info_ptr) { ++ png_destroy_write_struct(&png_ptr, (png_infopp)NULL); ++ goto fail; ++ } + + f = fopen(filename, "w"); + if (!f) + goto fail; + + if (setjmp(png_ptr->jmpbuf)) { +- png_write_destroy(png_ptr); ++ png_destroy_write_struct(&png_ptr, &info_ptr); + fail: + /* free pointers before returning. Make sure you clean up + anything else you've done. */ +- free(png_ptr); +- free(info_ptr); + free(row); + if (f) + fclose(f); + return -1; + } + +- png_info_init(info_ptr); +- png_write_init(png_ptr); + png_init_io(png_ptr, f); + + data = (unsigned int *)cfb->base; +@@ -259,10 +256,8 @@ + data = (void *)((char *)data + cfb->wrap); + } + png_write_end(png_ptr, info_ptr); +- png_write_destroy(png_ptr); ++ png_destroy_write_struct (&png_ptr, &info_ptr); + +- free(png_ptr); +- free(info_ptr); + free(row); + fclose(f); + return 0; diff --git a/app-editors/qemacs/qemacs-0.3.1-r3.ebuild b/app-editors/qemacs/qemacs-0.3.1-r3.ebuild new file mode 100644 index 000000000000..ecb64e99957d --- /dev/null +++ b/app-editors/qemacs/qemacs-0.3.1-r3.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-editors/qemacs/qemacs-0.3.1-r3.ebuild,v 1.1 2006/07/25 14:17:12 mkennedy Exp $ + +inherit eutils + +DESCRIPTION="QEmacs (for Quick Emacs) is a very small but powerful UNIX editor." +HOMEPAGE="http://fabrice.bellard.free.fr/qemacs/" +SRC_URI="http://fabrice.bellard.free.fr/qemacs/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~x86 ~amd64 ~ppc" +IUSE="X png unicode xv" + +# For those so inclined, the libXv dep can probably +# be made conditional on the xv USE flag somehow. +RDEPEND="X? ( || ( x11-libs/libXv virtual/x11 ) ) + png? ( =media-libs/libpng-1.2* )" +DEPEND="${RDEPEND} + X? ( || ( ( x11-libs/libXft + x11-proto/xextproto ) + virtual/x11 ) )" + +src_unpack() { + unpack ${A} + cd ${S} + # Add a patch to install to DESTDIR, make directories during install + # and install the binary/man page using the qemacs name to avoid clash + # with app-editors/qe. + # Also removes forced march setting and align-functions on x86, as + # they would override user's CFLAGS.. + epatch ${FILESDIR}/${P}-Makefile-gentoo.patch + # Change the references to the qe binary to reflect the installed name + # qemacs. + epatch ${FILESDIR}/${P}-manpage-ref-fix.patch + # Set the datadir to qemacs, upstream installs in to qe which conflicts + # with files installed in app-editors/qe. Currently no breakage + # occurs, but it makes sense to change before that happens. + epatch ${FILESDIR}/${P}-qemacs-datadir.patch + epatch ${FILESDIR}/${P}-configure-gentoo.patch + epatch ${FILESDIR}/${P}-make_backup.patch + useq unicode && epatch ${FILESDIR}/${P}-tty_utf8.patch + epatch ${FILESDIR}/${P}-gcc-3.4.patch + # Patches to avoid compilation errors with GCC 4, see bug #141292 + epatch ${FILESDIR}/${P}-gcc4_tty_c.patch + epatch ${FILESDIR}/${P}-gcc4_x11_c.patch + epatch ${FILESDIR}/${P}-gcc4_charset_c.patch + # port to new libpng API, see bug #141566 + useq png && epatch ${FILESDIR}/${P}-libpng-1_2.patch + # Change the manpage to reference a /real/ file instead of just an + # approximation. Purely cosmetic! + sed -i "s,^/usr/share/doc/qemacs,&-${PVR}," qe.1 +} + +src_compile() { + # when using any other CFLAGS than -O0, qemacs will segfault on startup, see bug #92011 + CFLAGS="-O0" + econf $(use_enable X x11) \ + $(use_enable png) \ + $(use_enable xv) \ + || die "econf failed" + emake -j1 || die +} + +src_test() { + # There are some files purporting to be tests in the tarball, however + # there is no defined way to use them and I imagine even if there was + # it would require user interaction. + # The toplevel Makefile calls the test target from the non-existant + # tests/Makefile, so just noop to stop errors if maketest is set. + : +} + +src_install() { + make install DESTDIR=${D} || die + dodoc Changelog README TODO config.eg + dohtml *.html + + insinto /usr/share/doc/${PF}/plugin-example/ + doins plugin-example/* + + # Install headers so users can build their own plugins. + insinto /usr/include/qemacs + doins cfb.h config.h cutils.h display.h fbfrender.h libfbf.h qe.h \ + qeconfig.h qestyles.h qfribidi.h + cd libqhtml + insinto /usr/include/qemacs/libqhtml + doins {css{,id},htmlent}.h +} + +pkg_postinst() { + einfo "This version of qemacs is not entirely backwards compatible with" + einfo "versions prior to 0.3.1-r1." + echo + einfo "The name of the binary has been changed to qemacs, to fix a name" + einfo "clash with app-editors/qe." + echo + einfo "The location of user config files have been changed to ~/.qemacs, to" + einfo "remove some ambiguity." +} |