summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-05-11 00:31:48 +0000
committerMike Frysinger <vapier@gentoo.org>2005-05-11 00:31:48 +0000
commit67a0e711a2997c60d2644ebbc79dc86c6f8e606e (patch)
tree1ab330ca009e523bc4203ae1e3e883d70efebd98 /x11-terms
parentBack to ~sparc wrt #92075 (diff)
downloadgentoo-2-67a0e711a2997c60d2644ebbc79dc86c6f8e606e.tar.gz
gentoo-2-67a0e711a2997c60d2644ebbc79dc86c6f8e606e.tar.bz2
gentoo-2-67a0e711a2997c60d2644ebbc79dc86c6f8e606e.zip
Grab fix from upstream cvs to fix deadkey usages #91878 by Tobias Vogel.
(Portage version: 2.0.51.21-r1)
Diffstat (limited to 'x11-terms')
-rw-r--r--x11-terms/eterm/ChangeLog8
-rw-r--r--x11-terms/eterm/eterm-0.9.3-r4.ebuild64
-rw-r--r--x11-terms/eterm/files/digest-eterm-0.9.3-r42
-rw-r--r--x11-terms/eterm/files/eterm-0.9.3-deadkeys.patch127
4 files changed, 200 insertions, 1 deletions
diff --git a/x11-terms/eterm/ChangeLog b/x11-terms/eterm/ChangeLog
index 55fe2dd855d6..c8c1abfa1048 100644
--- a/x11-terms/eterm/ChangeLog
+++ b/x11-terms/eterm/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-terms/eterm
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/ChangeLog,v 1.32 2005/05/06 10:31:08 swegener Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/ChangeLog,v 1.33 2005/05/11 00:31:48 vapier Exp $
+
+*eterm-0.9.3-r4 (11 May 2005)
+
+ 11 May 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/eterm-0.9.3-deadkeys.patch, +eterm-0.9.3-r4.ebuild:
+ Grab fix from upstream cvs to fix deadkey usages #91878 by Tobias Vogel.
06 May 2005; Sven Wegener <swegener@gentoo.org> eterm-0.9.2-r6.ebuild:
Removed * postfix from <, <=, >= and > dependencies.
diff --git a/x11-terms/eterm/eterm-0.9.3-r4.ebuild b/x11-terms/eterm/eterm-0.9.3-r4.ebuild
new file mode 100644
index 000000000000..940214869599
--- /dev/null
+++ b/x11-terms/eterm/eterm-0.9.3-r4.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/eterm-0.9.3-r4.ebuild,v 1.1 2005/05/11 00:31:48 vapier Exp $
+
+inherit eutils
+
+MY_P=Eterm-${PV}
+DESCRIPTION="A vt102 terminal emulator for X"
+HOMEPAGE="http://www.eterm.org/"
+SRC_URI="http://www.eterm.org/download/${MY_P}.tar.gz
+ http://www.eterm.org/download/Eterm-bg-${PV}.tar.gz
+ mirror://sourceforge/eterm/${MY_P}.tar.gz
+ mirror://sourceforge/eterm/Eterm-bg-${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ppc sparc x86"
+IUSE="mmx etwin escreen"
+
+DEPEND="virtual/x11
+ >=x11-libs/libast-0.6.1
+ media-libs/imlib2
+ etwin? ( app-misc/twin )
+ escreen? ( app-misc/screen )"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-pixmap-colmod.patch
+ epatch "${FILESDIR}"/${P}-CARD64.patch #76324
+ epatch "${FILESDIR}"/${P}-deadkeys.patch
+ unpack Eterm-bg-${PV}.tar.gz
+ sed -i 's:Tw/Tw_1\.h:Tw/Tw1.h:' src/libscream.c || die
+}
+
+src_compile() {
+ local mymmx
+ use x86 \
+ && mymmx="$(use_enable mmx)" \
+ || mymmx="--disable-mmx"
+ econf \
+ $(use_enable escreen) \
+ $(use_enable etwin) \
+ --with-imlib \
+ --enable-trans \
+ ${mymmx} \
+ --enable-multi-charset \
+ --with-delete=execute \
+ --with-backspace=auto \
+ || die "conf failed"
+ emake || die "make failed"
+}
+
+src_install() {
+ make \
+ TIC="tic -o ${D}/usr/share/terminfo" \
+ DESTDIR="${D}" \
+ install || die "install failed"
+ dodoc ChangeLog README ReleaseNotes
+ use escreen && dodoc doc/README.Escreen
+ dodoc bg/README.backgrounds
+}
diff --git a/x11-terms/eterm/files/digest-eterm-0.9.3-r4 b/x11-terms/eterm/files/digest-eterm-0.9.3-r4
new file mode 100644
index 000000000000..099bf720b418
--- /dev/null
+++ b/x11-terms/eterm/files/digest-eterm-0.9.3-r4
@@ -0,0 +1,2 @@
+MD5 dd089fa7768f945341d721dd4942c702 Eterm-0.9.3.tar.gz 660767
+MD5 e8c6567b13d7fb760bded56c1d1a181d Eterm-bg-0.9.3.tar.gz 1883627
diff --git a/x11-terms/eterm/files/eterm-0.9.3-deadkeys.patch b/x11-terms/eterm/files/eterm-0.9.3-deadkeys.patch
new file mode 100644
index 000000000000..f28b7496a633
--- /dev/null
+++ b/x11-terms/eterm/files/eterm-0.9.3-deadkeys.patch
@@ -0,0 +1,127 @@
+http://bugs.gentoo.org/91878
+
+ Tue Mar 15 16:44:09 2005 Michael Jennings (mej)
+
+ Reverted part of a patch from Chris Schoeneman <crs23@bigfoot.com>
+ (changelog entry "Fri Jun 25 17:48:24 2004") which broke dead keys and
+ compose-key sequences.
+
+ Fixed error in saving of cut_chars attribute.
+
+Index: src/misc.c
+===================================================================
+RCS file: /cvsroot/enlightenment/eterm/Eterm/src/misc.c,v
+retrieving revision 1.25
+retrieving revision 1.26
+diff -u -r1.25 -r1.26
+--- src/misc.c 11 Jan 2004 22:10:29 -0000 1.25
++++ src/misc.c 15 Mar 2005 21:48:02 -0000 1.26
+@@ -223,6 +223,53 @@
+ return (pnew - str);
+ }
+
++spif_charptr_t
++escape_string(spif_charptr_t str, spif_char_t quote, spif_int32_t maxlen)
++{
++ spif_charptr_t buff, s = str, pbuff;
++
++ D_STRINGS(("escape_string(%s %c %ld)\n", (char *) str, quote, maxlen));
++ if (! quote) {
++ quote = '\"';
++ }
++
++ /* The escaped string will be at most twice the length of the original. */
++ buff = SPIF_CAST(charptr) MALLOC(strlen(SPIF_CAST_PTR(char) str) * 2 + 1);
++
++ /* Copy and escape the string from str into buff. */
++ for (pbuff = buff; (*s); s++, pbuff++) {
++ if (*s == quote) {
++ D_STRINGS(("Double-escaping \'%c\' at position %d\n", *s, s - str));
++ *pbuff = '\\';
++ pbuff++;
++ *pbuff = '\\';
++ pbuff++;
++ } else {
++ if (quote == '\"') {
++ if ((*s == '\\') || (*s == '`')) {
++ D_STRINGS(("Escaping \'%c\' at position %d\n", *s, s - str));
++ *pbuff = '\\';
++ pbuff++;
++ }
++ }
++ }
++ D_STRINGS(("Copying \'%c\' at position %d\n", *s, s - str));
++ *pbuff = *s;
++ }
++ *pbuff = 0;
++
++ if (maxlen) {
++ /* Given maxlen, we know "str" can hold at least "maxlen" chars. */
++ if (!spiftool_safe_strncpy(str, buff, maxlen)) {
++ str[maxlen] = 0;
++ }
++ FREE(buff);
++ return str;
++ } else {
++ return buff;
++ }
++}
++
+ char *
+ safe_print_string(const char *str, unsigned long len)
+ {
+Index: src/misc.h
+===================================================================
+RCS file: /cvsroot/enlightenment/eterm/Eterm/src/misc.h,v
+retrieving revision 1.15
+retrieving revision 1.16
+diff -u -r1.15 -r1.16
+--- src/misc.h 11 Jan 2004 22:10:29 -0000 1.15
++++ src/misc.h 15 Mar 2005 21:48:02 -0000 1.16
+@@ -40,6 +40,7 @@
+ extern unsigned long str_leading_match(register const char *, register const char *);
+ extern char *str_trim(char *str);
+ extern int parse_escaped_string(char *str);
++extern spif_charptr_t escape_string(spif_charptr_t str, spif_char_t quote, spif_int32_t maxlen);
+ extern char *safe_print_string(const char *buff, unsigned long len);
+ extern unsigned long add_carriage_returns(unsigned char *buff, unsigned long cnt);
+ extern unsigned char mkdirhier(const char *);
+Index: src/options.c
+===================================================================
+RCS file: /cvsroot/enlightenment/eterm/Eterm/src/options.c,v
+retrieving revision 1.135
+retrieving revision 1.136
+diff -u -r1.135 -r1.136
+--- src/options.c 23 Feb 2005 20:38:19 -0000 1.135
++++ src/options.c 15 Mar 2005 21:48:02 -0000 1.136
+@@ -3850,7 +3863,10 @@
+ }
+ #ifdef CUTCHAR_OPTION
+ if (rs_cutchars) {
+- fprintf(fp, " cut_chars '%s'\n", rs_cutchars);
++ spif_charptr_t cut_chars_escaped;
++
++ cut_chars_escaped = escape_string(SPIF_CAST(charptr) rs_cutchars, '\"', 0);
++ fprintf(fp, " cut_chars \"%s\"\n", (char *) cut_chars_escaped);
+ }
+ #endif
+ fprintf(fp, "end misc\n\n");
+Index: src/windows.c
+===================================================================
+RCS file: /cvsroot/enlightenment/eterm/Eterm/src/windows.c,v
+retrieving revision 1.68
+retrieving revision 1.69
+diff -u -r1.68 -r1.69
+--- src/windows.c 14 Dec 2004 23:24:33 -0000 1.68
++++ src/windows.c 15 Mar 2005 21:48:12 -0000 1.69
+@@ -473,9 +473,7 @@
+ XClearWindow(Xdisplay, TermWin.vt);
+ }
+ XDefineCursor(Xdisplay, TermWin.vt, TermWin_cursor);
+- TermWin.mask = (KeyPressMask | EnterWindowMask | LeaveWindowMask | ExposureMask
+- | ButtonPressMask | ButtonReleaseMask | Button1MotionMask
+- | Button2MotionMask | Button3MotionMask);
++ TermWin.mask = (EnterWindowMask | LeaveWindowMask | ExposureMask | ButtonPressMask | ButtonReleaseMask | Button1MotionMask | Button2MotionMask | Button3MotionMask);
+ XSelectInput(Xdisplay, TermWin.vt, TermWin.mask);
+
+ /* If the user wants a specific desktop, tell the WM that */