summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMamoru Komachi <usata@gentoo.org>2005-02-18 13:37:22 +0000
committerMamoru Komachi <usata@gentoo.org>2005-02-18 13:37:22 +0000
commitac9bdffc51239c351fe309c0b20d3187f338282a (patch)
treee673c62380792611196f63b7cc367b997fae6c26 /x11-terms/mrxvt
parentStable on sparc wrt #82404 (diff)
downloadgentoo-2-ac9bdffc51239c351fe309c0b20d3187f338282a.tar.gz
gentoo-2-ac9bdffc51239c351fe309c0b20d3187f338282a.tar.bz2
gentoo-2-ac9bdffc51239c351fe309c0b20d3187f338282a.zip
Fixed bug #81574. Thanks to Jimmy Zhou <jmzhou13@hotmail.com> for providing a pointer and patch.
(Portage version: 2.0.51-r15)
Diffstat (limited to 'x11-terms/mrxvt')
-rw-r--r--x11-terms/mrxvt/ChangeLog11
-rw-r--r--x11-terms/mrxvt/Manifest19
-rw-r--r--x11-terms/mrxvt/files/digest-mrxvt-0.3.13-r11
-rw-r--r--x11-terms/mrxvt/files/mrxvt-0.3.13-xdefaults.patch230
-rw-r--r--x11-terms/mrxvt/mrxvt-0.3.13-r1.ebuild97
5 files changed, 343 insertions, 15 deletions
diff --git a/x11-terms/mrxvt/ChangeLog b/x11-terms/mrxvt/ChangeLog
index 1839f667a881..e370b7e378f8 100644
--- a/x11-terms/mrxvt/ChangeLog
+++ b/x11-terms/mrxvt/ChangeLog
@@ -1,8 +1,15 @@
# ChangeLog for x11-terms/mrxvt
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-terms/mrxvt/ChangeLog,v 1.15 2005/02/13 13:12:35 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/mrxvt/ChangeLog,v 1.16 2005/02/18 13:37:22 usata Exp $
- 13 Feb 2005; Bryan Østergaard <kloeri@gentoo.org> mrxvt-0.3.12.ebuild:
+*mrxvt-0.3.13-r1 (18 Feb 2005)
+
+ 18 Feb 2005; Mamoru KOMACHI <usata@gentoo.org>
+ +files/mrxvt-0.3.13-xdefaults.patch, +mrxvt-0.3.13-r1.ebuild:
+ Fixed bug #81574. Thanks to Jimmy Zhou <jmzhou13@hotmail.com> for providing
+ a pointer and patch.
+
+ 13 Feb 2005; Bryan ?stergaard <kloeri@gentoo.org> mrxvt-0.3.12.ebuild:
Stable on alpha.
*mrxvt-0.3.13 (10 Feb 2005)
diff --git a/x11-terms/mrxvt/Manifest b/x11-terms/mrxvt/Manifest
index 70d9a5e0f06b..571428fbd7df 100644
--- a/x11-terms/mrxvt/Manifest
+++ b/x11-terms/mrxvt/Manifest
@@ -1,18 +1,11 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
+MD5 8bc8072760af288805c11e3494976ccb ChangeLog 2405
MD5 3ff31b5479b2a0244f5711fff3155aed metadata.xml 221
+MD5 d028da3e4a3757e94903b601faa3cc27 mrxvt-0.3.13.ebuild 2138
MD5 24fbaa3a73327000bee63a1b767e6bce mrxvt-0.3.12.ebuild 2136
MD5 41c1ea608931d35ca225079983eab4af mrxvt-0.3.9.ebuild 2133
-MD5 8bc8072760af288805c11e3494976ccb ChangeLog 2405
-MD5 d028da3e4a3757e94903b601faa3cc27 mrxvt-0.3.13.ebuild 2138
-MD5 97a062086b26cbe392dd10aba52e37e7 files/digest-mrxvt-0.3.12 64
+MD5 75f9c75b28e15fcb750179acf7fa0ecd mrxvt-0.3.13-r1.ebuild 2239
MD5 c1c69c0365b65e6fe61bb9d71061a16a files/digest-mrxvt-0.3.13 64
+MD5 97a062086b26cbe392dd10aba52e37e7 files/digest-mrxvt-0.3.12 64
MD5 5cd5d045034d93c8cfcefa10960f099f files/digest-mrxvt-0.3.9 63
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.0 (GNU/Linux)
-
-iD8DBQFCD1J4ugEuf3OQ0akRAgqKAJ0cYe8QZMPxudxyXSLen5w5jxyJnACglOAf
-w0A+qPnSFmKFH7VdOX0gqK0=
-=y8a8
------END PGP SIGNATURE-----
+MD5 3c200ae7dfc3c24b5010a26289b3c3aa files/mrxvt-0.3.13-xdefaults.patch 8017
+MD5 c1c69c0365b65e6fe61bb9d71061a16a files/digest-mrxvt-0.3.13-r1 64
diff --git a/x11-terms/mrxvt/files/digest-mrxvt-0.3.13-r1 b/x11-terms/mrxvt/files/digest-mrxvt-0.3.13-r1
new file mode 100644
index 000000000000..579a5967d027
--- /dev/null
+++ b/x11-terms/mrxvt/files/digest-mrxvt-0.3.13-r1
@@ -0,0 +1 @@
+MD5 880bc53d17af9f177cc68d7ce1abd1a2 mrxvt-0.3.13.tar.gz 497798
diff --git a/x11-terms/mrxvt/files/mrxvt-0.3.13-xdefaults.patch b/x11-terms/mrxvt/files/mrxvt-0.3.13-xdefaults.patch
new file mode 100644
index 000000000000..fbeb8e0b91d6
--- /dev/null
+++ b/x11-terms/mrxvt/files/mrxvt-0.3.13-xdefaults.patch
@@ -0,0 +1,230 @@
+--- xdefaults.c.orig 2005-02-04 04:57:51.000000000 +0900
++++ xdefaults.c 2005-02-18 17:36:49.168153000 +0900
+@@ -24,7 +24,7 @@
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *----------------------------------------------------------------------*/
+ /*
+-** $Id: mrxvt-0.3.13-xdefaults.patch,v 1.1 2005/02/18 13:37:22 usata Exp $
++** $Id: mrxvt-0.3.13-xdefaults.patch,v 1.1 2005/02/18 13:37:22 usata Exp $
+ */
+
+ #include "../config.h"
+@@ -58,7 +58,7 @@
+ # ifndef USE_XGETDEFAULT
+ void rxvt_get_xdefaults (rxvt_t*, FILE*, const char*);
+ # else
+-char* get_xdefault_resource (XrmDatabase database, char *name, char *subClass, char *fullClass, char *resource);
++char* get_xdefault_resource (XrmDatabase database, const char *name, char *subClass, char *fullClass, char *resource);
+ # endif
+ #endif
+ /*--------------------------------------------------------------------*
+@@ -100,7 +100,7 @@
+ {(flag), -1, NULL, (opt), NULL, (desc), (multiple)}
+
+ /* convenient macros */
+-#define optList_strlen(i) \
++#define optList_STRLEN(i) \
+ (optList[i].flag ? 0 : (optList[i].arg ? STRLEN(optList[i].arg) : 1))
+ #define optList_isBool(i) \
+ (optList[i].flag & Opt_Boolean)
+@@ -735,7 +735,7 @@
+ int len = 0;
+
+ if (!optList_isBool(i)) {
+- len = optList_strlen(i);
++ len = optList_STRLEN(i);
+ if (len > 0)
+ len++; /* account for space */
+ }
+@@ -750,7 +750,7 @@
+ }
+ fprintf(stderr, " [-%s%s", (optList_isBool(i) ?
+ "/+" : ""), optList[i].opt);
+- if (optList_strlen(i))
++ if (optList_STRLEN(i))
+ fprintf(stderr, " %s]", optList[i].arg);
+ else
+ fprintf(stderr, "]");
+@@ -1002,7 +1002,7 @@
+ if (entry < optList_size()) {
+ if (optList_isReverse(entry))
+ flag = (flag == On) ? Off : On;
+- if (optList_strlen(entry)) { /* string value */
++ if (optList_STRLEN(entry)) { /* string value */
+ const char *str = argv[++i];
+
+ DBG_MSG(2, (stderr, "string (%s,%s) = ",
+@@ -1437,86 +1437,97 @@
+ #ifdef USE_XGETDEFAULT
+ /* INTPROTO */
+ char*
+-get_xdefault_resource(XrmDatabase database, char *name, char *subClass, char *fullClass, char *resource)
++get_xdefault_resource(XrmDatabase database, const char *name, char *subClass, char *fullClass, char *resource)
+ {
+- char *resourceClass;
+- char *str_class;
+- char *str_name;
+- char *generic_return_str_type = NULL;
+- char *return_str_type = NULL;
+- int i;
+-
+- Bool foundGeneric;
+- Bool found;
+-
+- XrmValue return_value;
+- static char *invalidPrefix = "! invalid name !";
+-
+- int prefix_len = strlen(invalidPrefix);
+- if (strlen(name) > prefix_len) {
+- prefix_len = strlen(name);
+- }
+- if (strlen(subClass) > prefix_len) {
+- prefix_len = strlen(subClass);
+- }
+- if (strlen(fullClass) > prefix_len) {
+- prefix_len = strlen(fullClass);
+- }
+- str_class = malloc(prefix_len + strlen(resource) + 1);
+- str_name = malloc(prefix_len + strlen(resource) + 1);
+- sprintf(str_name, "%s.%s", name, resource);
+-
+- /* translate resource to class */
+- resourceClass = malloc(strlen(resource) + 1);
+- resourceClass[0] = toupper(resource[0]);
+- for (i = 1; i < strlen(resource); i++) {
+- if (resource[i - 1] == '.') {
+- resourceClass[i] = toupper(resource[i]);
+- } else {
+- resourceClass[i] = resource[i];
+- }
+- }
+- resourceClass[strlen(resource)] = 0;
++ char* resourceClass;
++ char* str_class;
++ char* str_name;
++ char* generic_return_str_type = NULL;
++ char* return_str_type = NULL;
++ int len, i;
++ Bool foundGeneric;
++ Bool found;
++ XrmValue return_value;
++
++ static char* invalidPrefix = "! invalid name !";
++ int prefix_len = STRLEN(invalidPrefix);
++ /* find the maximal prefix_len */
++ if (STRLEN(name) > prefix_len) {
++ prefix_len = STRLEN(name);
++ }
++ if (STRLEN(subClass) > prefix_len) {
++ prefix_len = STRLEN(subClass);
++ }
++ if (STRLEN(fullClass) > prefix_len) {
++ prefix_len = STRLEN(fullClass);
++ }
++
++ /* allocate memory for str_class and str_name */
++ len = prefix_len + STRLEN(resource) + 2;
++ str_class = malloc(len);
++ str_name = malloc(len);
++
++ snprintf(str_name, len-1, "%s.%s", name, resource);
++ str_name[len-1] = (char) 0;
++
++ /* translate resource to class */
++ resourceClass = malloc(STRLEN(resource) + 1);
++ resourceClass[0] = toupper(resource[0]);
++ for (i = 1; i < STRLEN(resource); i++) {
++ if (resource[i - 1] == '.') {
++ resourceClass[i] = toupper(resource[i]);
++ }
++ else {
++ resourceClass[i] = resource[i];
++ }
++ }
++ resourceClass[STRLEN(resource)] = 0;
+
+- /*
+- ** We need to get resources with two different class names. If
++ /*
++ ** We need to get resources with two different class names. If
+ ** both subClass and fullClass exist, then subClass takes
+ ** precedence.
+- **
+- ** The original algorithm for this was to get null-prefix resource
+- ** (i.e. *resource) as well as the subClass resource. If they
++ **
++ ** The original algorithm for this was to get null-prefix resource
++ ** (i.e. *resource) as well as the subClass resource. If they
+ ** matched, then the fullClass was used. Unfortunately this has
+ ** a weakness; with the following database:
+- ** *resource: value1
+- ** subClass.resource: value1
+- ** fullClass.resource: value2
+- ** the value used will be 'value2' instead of 'value1'. This is
++ ** *resource: value1
++ ** subClass.resource: value1
++ ** fullClass.resource: value2
++ ** the value used will be 'value2' instead of 'value1'. This is
+ ** incorrect.
+- **
+- ** However, we can cheat. XrmGetResource returns string pointers
++ **
++ ** However, we can cheat. XrmGetResource returns string pointers
+ ** that are actually pointing to the internal string in the
+ ** database. Thus, if the *pointer* returned when looking for
+ ** the generic resource is the same as that for the subClass,
+ ** then they found the same thing.
+- **
+- ** Note that XGetDefault *cannot* be used, as we may be getting
++ **
++ ** Note that XGetDefault *cannot* be used, as we may be getting
+ ** multi-level resources, something that it does not support.
+- */
+- sprintf(str_class, "%s.%s", invalidPrefix, resourceClass);
+- foundGeneric = XrmGetResource(database, str_name, str_class, &generic_return_str_type, &return_value);
+-
+- sprintf(str_class, "%s.%s", subClass, resourceClass);
+- found = XrmGetResource(database, str_name, str_class, &return_str_type, &return_value);
+-
+- if (!found || (foundGeneric && found && generic_return_str_type == return_str_type) ) {
+- /* Subclass returned nothing or the same physical thing as the the generic. Try fullClass. */
+- sprintf(str_class, "%s.%s", fullClass, resourceClass);
+- found = XrmGetResource(database, str_name, str_class, &return_str_type, &return_value);
+- }
+-
+- free(str_class);
+- free(str_name);
+- return found ? (char *) return_value.addr : NULL;
++ */
++ snprintf(str_class, len-1, "%s.%s", invalidPrefix, resourceClass);
++ str_name[len-1] = (char) 0;
++ foundGeneric = XrmGetResource(database, str_name, str_class, &generic_return_str_type, &return_value);
++
++ snprintf(str_class, len-1, "%s.%s", subClass, resourceClass);
++ str_name[len-1] = (char) 0;
++ found = XrmGetResource(database, str_name, str_class, &return_str_type, &return_value);
++
++ if (!found ||
++ (foundGeneric && found && generic_return_str_type == return_str_type) ) {
++ /* Subclass returned nothing or the same physical thing as the the generic. Try fullClass. */
++ snprintf(str_class, len-1, "%s.%s", fullClass, resourceClass);
++ str_name[len-1] = (char) 0;
++ found = XrmGetResource(database, str_name, str_class, &return_str_type, &return_value);
++ }
++
++ /* free memory */
++ free(str_class);
++ free(str_name);
++
++ return found ? (char *) return_value.addr : NULL;
+ }
+ #endif /* USE_XGETDEFAULT */
+
+@@ -1619,7 +1630,6 @@
+ for (entry = 0; entry < optList_size(); entry++) {
+ int s;
+ char* p;
+- char* p0;
+ register int i;
+ register int loop = optList[entry].multiple ? MAX_PAGES : 1;
+
diff --git a/x11-terms/mrxvt/mrxvt-0.3.13-r1.ebuild b/x11-terms/mrxvt/mrxvt-0.3.13-r1.ebuild
new file mode 100644
index 000000000000..be6df7d829be
--- /dev/null
+++ b/x11-terms/mrxvt/mrxvt-0.3.13-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/mrxvt/mrxvt-0.3.13-r1.ebuild,v 1.1 2005/02/18 13:37:22 usata Exp $
+
+inherit eutils
+
+IUSE="debug truetype xgetdefault"
+#IUSE="${IUSE} utempter"
+
+DESCRIPTION="Multi-tabbed rxvt clone with XFT, transparent background and CJK support"
+HOMEPAGE="http://materm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/materm/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 -ppc-macos ~amd64 ~ppc ~alpha"
+
+RDEPEND="virtual/libc
+ virtual/x11
+ dev-libs/expat
+ media-libs/libpng
+ media-libs/jpeg
+ truetype? ( virtual/xft
+ media-libs/fontconfig
+ media-libs/freetype )"
+# utempter? ( sys-apps/utempter )
+DEPEND="${RDEPEND}
+ sys-devel/autoconf
+ sys-devel/automake"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}/src
+ epatch ${FILESDIR}/${P}-xdefaults.patch
+}
+
+src_compile() {
+ local myconf
+
+ # if you want to pass any other flags, use EXTRA_ECONF.
+ if use linguas_el ; then
+ myconf="${myconf} --enable-greek"
+ fi
+ if use linguas_ja ; then
+ # --with-encoding=sjis
+ myconf="${myconf} --enable-kanji --with-encoding=eucj"
+ fi
+ if use linguas_ko ; then
+ myconf="${myconf} --enable-kr --with-encoding=kr"
+ fi
+ if use linguas_th ; then
+ myconf="${myconf} --enable-thai"
+ fi
+ if use linguas_zh_CN ; then
+ # --with-encoding=gbk
+ myconf="${myconf} --enable-gb --with-encoding=gb"
+ fi
+ if use linguas_zh_TW ; then
+ myconf="${myconf} --enable-big5 --with-encoding=big5"
+ fi
+
+ ./bootstrap.sh
+
+ econf \
+ --enable-everything \
+ --enable-rxvt-scroll \
+ --enable-next-scroll \
+ --enable-xterm-scroll \
+ --enable-transparency \
+ --enable-xpm-background \
+ --enable-fading \
+ --enable-utmp \
+ --enable-wtmp \
+ --enable-mousewheel \
+ --enable-slipwheeling \
+ --enable-smart-resize \
+ --enable-ttygid \
+ --enable-256-color \
+ --enable-xim \
+ --enable-shared \
+ --enable-keepscrolling \
+ --enable-xft \
+ $(use_enable xgetdefault) \
+ $(use_enable truetype xft) \
+ $(use_enable debug) \
+ --disable-text-blink \
+ --disable-menubar \
+ ${myconf} || die
+
+ emake || die
+}
+
+src_install() {
+ make DESTDIR=${D} docdir=/usr/share/doc/${PF} install || die
+
+ dodoc AUTHORS CREDITS ChangeLog FAQ NEWS README* TODO
+}