diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-tcltk/tclreadline | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-tcltk/tclreadline')
8 files changed, 390 insertions, 0 deletions
diff --git a/dev-tcltk/tclreadline/Manifest b/dev-tcltk/tclreadline/Manifest new file mode 100644 index 000000000000..cb3de133de7b --- /dev/null +++ b/dev-tcltk/tclreadline/Manifest @@ -0,0 +1,2 @@ +DIST tclreadline-2.1.0.tar.gz 160541 SHA256 def2325e45e2b7f30b04ad5078481740596599622c253043c503c2285f5672e7 SHA512 bd67a65fe2ec708834fb67fabf2e36e778a6aeeb7a7b69cda298f9e18acc9e03f3a379f81ff7d2d289bfbf1093bc86fecbf96fe5d04a2ca954899cc7df6fe4bf WHIRLPOOL 89680ffcfea123d2032e4948788164d57e7fa90c05b16d838edbd0fd8916b34f934acd785ae8bc5313f4391779f3b15b31924ef8c4e925f6443a3022b00de036 +DIST tclreadline_2.1.0-12.debian.tar.gz 9636 SHA256 3a9144fc6b46834cc7d555b5f05cf29f00132594b137d23a0dc4f8cde976daf4 SHA512 293e9ad14a469891f68b25caa78a99874de87df4c44af4ada7528cf74e898be42b7846fbb6eeabb2dec34995a9ccd9707c61f406b90b90dbca2c24df05f451eb WHIRLPOOL dfb7f739ea9edd98cf01166e38d759eb97d83da554737d5f908025661823eb0ed68beef6b038a2bc4fe14377abcdff7d69d1343c08e7bb1f62a1fdaa4ecb09c7 diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.1.0-alloc-free.patch b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-alloc-free.patch new file mode 100644 index 000000000000..6694c29f6042 --- /dev/null +++ b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-alloc-free.patch @@ -0,0 +1,121 @@ +diff -ur a/tclreadline.c b/tclreadline.c +--- a/tclreadline.c 2000-09-20 19:44:34.000000000 +0200 ++++ b/tclreadline.c 2013-11-18 10:35:13.889610060 +0100 +@@ -343,7 +343,9 @@ + return TCL_ERROR; + } else if (3 == objc) { +- if (tclrl_custom_completer) ++ if (tclrl_custom_completer) { +- FREE(tclrl_custom_completer); ++ free(tclrl_custom_completer); ++ tclrl_custom_completer = NULL; ++ } + if (!blank_line(Tcl_GetStringFromObj(objv[2], 0))) + tclrl_custom_completer = + stripwhite(strdup(Tcl_GetStringFromObj(objv[2], 0))); +@@ -378,7 +380,9 @@ + return TCL_ERROR; + } else if (3 == objc) { +- if (tclrl_eof_string) ++ if (tclrl_eof_string) { +- FREE(tclrl_eof_string); ++ free(tclrl_eof_string); ++ tclrl_eof_string = NULL; ++ } + if (!blank_line(Tcl_GetStringFromObj(objv[2], 0))) + tclrl_eof_string = + stripwhite(strdup(Tcl_GetStringFromObj(objv[2], 0))); +@@ -506,10 +510,16 @@ + if (status >= 1) { + /* TODO: make this a valid tcl output */ + printf("%s\n", expansion); ++ free(ptr); ++ free(expansion); ++ return; + } else if (-1 == status) { + Tcl_AppendResult + (tclrl_interp, "error in history expansion\n", (char*) NULL); + TclReadlineTerminate(TCL_ERROR); ++ free(ptr); ++ free(expansion); ++ return; + } + /** + * TODO: status == 2 ... +@@ -544,8 +554,8 @@ + * tell the calling routines to terminate. + */ + TclReadlineTerminate(LINE_COMPLETE); +- FREE(ptr); +- FREE(expansion); ++ free(ptr); ++ free(expansion); + } + } + +@@ -673,7 +683,7 @@ + strcpy(rl_line_buffer, expansion); + rl_end = strlen(expansion); + rl_point += strlen(expansion) - oldlen; +- FREE(expansion); ++ free(expansion); + /* + * TODO: + * because we return 0 == matches, +@@ -682,7 +690,8 @@ + */ + return matches; + } +- FREE(expansion); ++ free(expansion); ++ expansion = NULL; + } + + if (tclrl_custom_completer) { +@@ -699,15 +710,19 @@ + state = Tcl_VarEval(tclrl_interp, tclrl_custom_completer, + " \"", quoted_text, "\" ", start_s, " ", end_s, + " \"", quoted_rl_line_buffer, "\"", (char*) NULL); +- FREE(quoted_text); +- FREE(quoted_rl_line_buffer); + if (TCL_OK != state) { + Tcl_AppendResult (tclrl_interp, " `", tclrl_custom_completer, + " \"", quoted_text, "\" ", start_s, " ", end_s, + " \"", quoted_rl_line_buffer, "\"' failed.", (char*) NULL); + TclReadlineTerminate(state); ++ free(quoted_text); ++ free(quoted_rl_line_buffer); + return matches; + } ++ free(quoted_text); ++ quoted_text = NULL; ++ free(quoted_rl_line_buffer); ++ quoted_rl_line_buffer = NULL; + obj = Tcl_GetObjResult(tclrl_interp); + status = Tcl_ListObjGetElements(tclrl_interp, obj, &objc, &objv); + if (TCL_OK != status) +@@ -715,12 +732,12 @@ + + if (objc) { + int i, length; +- matches = (char**) MALLOC(sizeof(char*) * (objc + 1)); ++ matches = (char**) malloc(sizeof(char*) * (objc + 1)); + for (i = 0; i < objc; i++) { + matches[i] = strdup(Tcl_GetStringFromObj(objv[i], &length)); + if (1 == objc && !strlen(matches[i])) { +- FREE(matches[i]); ++ free(matches[i]); +- FREE(matches); ++ free(matches); + Tcl_ResetResult(tclrl_interp); /* clear result space */ + return (char**) NULL; + } +@@ -735,7 +752,7 @@ + */ + if (2 == objc && !strlen(matches[1])) { + i--; +- FREE(matches[1]); ++ free(matches[1]); + rl_completion_append_character = '\0'; + } + diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.1.0-gold.patch b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-gold.patch new file mode 100644 index 000000000000..5550c89879c8 --- /dev/null +++ b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-gold.patch @@ -0,0 +1,15 @@ + Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.am b/Makefile.am +index 68d78f1..03dbf06 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -20,6 +20,7 @@ include_HEADERS = tclreadline.h + INCLUDES = -I$(TCL_INCLUDE_DIR) -I$(READLINE_INCLUDE_DIR) + + ## libtclreadline_la_LIBADD = $(LIBS) ++libtclreadline_la_LIBADD = $(TCL_LIB_SPEC) -lreadline + libtclreadline_la_LDFLAGS = -release $(MAJOR).$(MINOR).$(PATCHLEVEL) + + tclrldir = @TCLRL_DIR@ diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-executing-macro.patch b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-executing-macro.patch new file mode 100644 index 000000000000..683622e0d54c --- /dev/null +++ b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-executing-macro.patch @@ -0,0 +1,128 @@ +diff -ur a/configure.ac b/configure.ac +--- a/configure.ac 2000-12-08 01:45:45.000000000 +0100 ++++ b/configure.ac 2013-11-15 13:37:36.490520853 +0100 +@@ -182,29 +182,36 @@ + [ --with-readline-library=DIR + lib spec to readline (e.g. '-L/usr/local/lib -lreadline')], + LIBS="$LIBS $withval", +- AC_CHECK_LIB(readline, rl_callback_read_char, , +- AC_MSG_RESULT([ +- Your readline version does not support readline's alternate interface. +- Please upgrade to readline >= 2.2 and retry. +- ]) +- exit ++ AC_SEARCH_LIBS(rl_callback_read_char, readline, , ++ AC_MSG_RESULT([ ++ Your readline version does not support readline's alternate interface. ++ Please upgrade to readline >= 2.2 and retry. ++ ]) ++ exit + ) + ) + + + +-# check for readline's (macro.c) private variable +-# _rl_executing_macro. ++# check for readline's rl_executing_macro ++# (could be macro.c's private variable _rl_executing_macro). + +-AC_MSG_CHECKING([for _rl_executing_macro in -lreadline]) +-AC_TRY_LINK(,[ ++AC_CHECK_DECL(rl_executing_macro ++, AC_DEFINE(EXECUTING_MACRO_NAME, rl_executing_macro, ++ [ Define the name of the executing macro variable in libreadline. ]) ++, AC_MSG_CHECKING([for _rl_executing_macro in -lreadline]) ++ AC_TRY_LINK(,[ + extern char* _rl_executing_macro; + _rl_executing_macro = (char*) 0; +-], +- AC_MSG_RESULT(yes); ++ ] ++ , AC_MSG_RESULT(yes) + AC_DEFINE(EXECUTING_MACRO_HACK, 1, +- [ Define if _rl_executing_macro is resolved in libreadline. ]), +- AC_MSG_RESULT(no)) ++ [ Define if EXECUTING_MACRO_NAME is resolved in libreadline. ]) ++ AC_DEFINE(EXECUTING_MACRO_NAME, _rl_executing_macro, ++ [ Define the name of the executing macro variable in libreadline. ]) ++ , AC_MSG_RESULT(no)) ++, [AC_INCLUDES_DEFAULT ++#include "$READLINE_INCLUDE_DIR/readline.h"]) + + # check for readline's rl_cleanup_after_signal + +diff -ur a/tclreadline.c b/tclreadline.c +--- a/tclreadline.c 2000-09-20 19:44:34.000000000 +0200 ++++ b/tclreadline.c 2013-11-15 11:09:42.269771129 +0100 +@@ -41,7 +41,7 @@ + * We need it here to decide, if we should read more + * characters from a macro. Dirty, but it should work. + */ +-extern char* _rl_executing_macro; ++extern char* EXECUTING_MACRO_NAME; + #endif + + #include "tclreadline.h" +@@ -249,14 +249,14 @@ + tclrl_state = LINE_PENDING; + + while (!TclReadlineLineComplete()) { +-#ifdef EXECUTING_MACRO_HACK ++#ifdef EXECUTING_MACRO_NAME + /** + * check first, if more characters are + * available from _rl_executing_macro, + * because Tcl_DoOneEvent() will (naturally) + * not detect this `event'. + */ +- if (_rl_executing_macro) ++ if (EXECUTING_MACRO_NAME) + TclReadlineReadHandler((ClientData) NULL, TCL_READABLE); + else + #endif +@@ -468,17 +468,17 @@ + TclReadlineReadHandler(ClientData clientData, int mask) + { + if (mask & TCL_READABLE) { +-#ifdef EXECUTING_MACRO_HACK ++#ifdef EXECUTING_MACRO_NAME + do { + #endif + rl_callback_read_char(); +-#ifdef EXECUTING_MACRO_HACK ++#ifdef EXECUTING_MACRO_NAME + /** + * check, if we're inside a macro and + * if so, read all macro characters + * until the next eol. + */ +- } while (_rl_executing_macro && !TclReadlineLineComplete()); ++ } while (EXECUTING_MACRO_NAME && !TclReadlineLineComplete()); + #endif + } + } +@@ -517,12 +517,12 @@ + + Tcl_AppendResult(tclrl_interp, expansion, (char*) NULL); + +-#ifdef EXECUTING_MACRO_HACK ++#ifdef EXECUTING_MACRO_NAME + /** + * don't stuff macro lines + * into readline's history. + */ +- if(!_rl_executing_macro) { ++ if(!EXECUTING_MACRO_NAME) { + #endif + /** + * don't stuff empty lines +@@ -537,7 +537,7 @@ + if (tclrl_last_line) + free(tclrl_last_line); + tclrl_last_line = strdup(expansion); +-#ifdef EXECUTING_MACRO_HACK ++#ifdef EXECUTING_MACRO_NAME + } + #endif + /** diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-history-expand.patch b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-history-expand.patch new file mode 100644 index 000000000000..6e4d5270e41a --- /dev/null +++ b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-history-expand.patch @@ -0,0 +1,35 @@ +diff -ur a/tclreadline.c b/tclreadline.c +--- a/tclreadline.c 2013-11-16 20:14:28.876272386 +0100 ++++ b/tclreadline.c 2013-11-16 20:14:24.191390550 +0100 +@@ -503,25 +503,22 @@ + char* expansion = (char*) NULL; + int status = history_expand(ptr, &expansion); + +- if (status >= 1) { ++ if (status >= 2) { + /* TODO: make this a valid tcl output */ + printf("%s\n", expansion); + free(ptr); + free(expansion); + return; +- } else if (-1 == status) { ++ } else if (status <= -1) { + Tcl_AppendResult +- (tclrl_interp, "error in history expansion\n", (char*) NULL); ++ (tclrl_interp, "error in history expansion: ", expansion, "\n", (char*) NULL); + TclReadlineTerminate(TCL_ERROR); + free(ptr); + free(expansion); + return; +- } +- /** +- * TODO: status == 2 ... +- */ +- +- Tcl_AppendResult(tclrl_interp, expansion, (char*) NULL); ++ } else { ++ Tcl_AppendResult(tclrl_interp, expansion, (char*) NULL); ++ } + + #ifdef EXECUTING_MACRO_HACK + /** diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-prompt.patch b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-prompt.patch new file mode 100644 index 000000000000..a10a404100d3 --- /dev/null +++ b/dev-tcltk/tclreadline/files/tclreadline-2.1.0-rl-prompt.patch @@ -0,0 +1,12 @@ +diff -ur a/tclreadline.c b/tclreadline.c +--- a/tclreadline.c 2013-11-16 20:14:28.876272386 +0100 ++++ b/tclreadline.c 2013-11-16 20:37:47.455986902 +0100 +@@ -234,7 +234,7 @@ + + rl_callback_handler_install( + objc == 3 ? Tcl_GetStringFromObj(objv[2], 0) +- : "%", TclReadlineLineCompleteHandler); ++ : "% ", TclReadlineLineCompleteHandler); + + Tcl_CreateFileHandler(0, TCL_READABLE, + TclReadlineReadHandler, (ClientData) NULL); diff --git a/dev-tcltk/tclreadline/metadata.xml b/dev-tcltk/tclreadline/metadata.xml new file mode 100644 index 000000000000..bf64b24deb60 --- /dev/null +++ b/dev-tcltk/tclreadline/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>tcltk</herd> + <upstream> + <remote-id type="sourceforge">tclreadline</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild b/dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild new file mode 100644 index 000000000000..9f3ae269dc05 --- /dev/null +++ b/dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils multilib toolchain-funcs + +DEBIAN_PATCH=12 + +DESCRIPTION="Readline extension to TCL" +HOMEPAGE="http://tclreadline.sf.net/" +SRC_URI=" + mirror://sourceforge/${PN}/${P}.tar.gz + mirror://debian/pool/main/t/${PN}/${PN}_${PV}-${DEBIAN_PATCH}.debian.tar.gz" + +SLOT="0" +LICENSE="BSD" +KEYWORDS="alpha amd64 ppc ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="static-libs" + +DEPEND=" + dev-lang/tcl:0= + sys-libs/readline:0=" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-gold.patch + "${FILESDIR}"/${P}-alloc-free.patch + "${FILESDIR}"/${P}-rl-executing-macro.patch + "${FILESDIR}"/${P}-rl-history-expand.patch + "${FILESDIR}"/${P}-rl-prompt.patch + "${WORKDIR}"/debian/patches/complete_nontcl.patch + "${WORKDIR}"/debian/patches/completion_matches.patch + "${WORKDIR}"/debian/patches/completion_pbug.patch + "${WORKDIR}"/debian/patches/kfreebsd.patch + "${WORKDIR}"/debian/patches/link.patch + "${WORKDIR}"/debian/patches/manpage.patch + "${WORKDIR}"/debian/patches/memuse.patch +# "${WORKDIR}"/debian/patches/tclrldir.patch + "${WORKDIR}"/debian/patches/tclshpath.patch + "${WORKDIR}"/debian/patches/tinfo.patch + "${WORKDIR}"/debian/patches/varnames.patch + + ) + +src_prepare() { + sed \ + -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" \ + -e "/^TCLRL_LIBDIR/s:lib:$(get_libdir):g" \ + -i configure.in || die + mv configure.{in,ac} || die + sed \ + -e 's:configure.in:configure.ac:g' \ + -i "${WORKDIR}"/debian/patches/* || die + autotools-utils_src_prepare +} + +src_configure() { + local myeconfargs=( + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + --with-tcl-includes="${EPREFIX}/usr/include" + --with-readline-includes="${EPREFIX}/usr/include" + --with-readline-library="-lreadline" + ) + autotools-utils_src_configure +} |