diff options
-rw-r--r-- | app-shells/sash/ChangeLog | 9 | ||||
-rw-r--r-- | app-shells/sash/Manifest | 18 | ||||
-rw-r--r-- | app-shells/sash/files/sash-3.6-readline.patch | 301 | ||||
-rw-r--r-- | app-shells/sash/sash-3.7-r1.ebuild | 44 |
4 files changed, 16 insertions, 356 deletions
diff --git a/app-shells/sash/ChangeLog b/app-shells/sash/ChangeLog index 74b5ce36b321..97ae1d20b3fd 100644 --- a/app-shells/sash/ChangeLog +++ b/app-shells/sash/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for app-shells/sash -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/sash/ChangeLog,v 1.50 2012/07/08 17:03:32 armin76 Exp $ +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-shells/sash/ChangeLog,v 1.51 2013/07/09 18:37:24 kensington Exp $ + + 09 Jul 2013; Michael Palimaka <kensington@gentoo.org> + -files/sash-3.6-readline.patch, -sash-3.7-r1.ebuild: + Remove old. 08 Jul 2012; Raúl Porcel <armin76@gentoo.org> sash-3.7-r3.ebuild: alpha/ia64/m68k/s390/sh/sparc stable wrt #418451 @@ -178,4 +182,3 @@ sash is always static now... previous versions were only built statically if 'static' USE keyword was set - diff --git a/app-shells/sash/Manifest b/app-shells/sash/Manifest index fb31bd6182bd..18aebe5f53cb 100644 --- a/app-shells/sash/Manifest +++ b/app-shells/sash/Manifest @@ -1,17 +1,19 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 +Hash: SHA256 -AUX sash-3.6-readline.patch 7225 SHA256 b6401d3912352992aa7d39cab22435632d455f3b5a1f269d907c5b207fb7480f SHA512 1cd81e6be10c9cc54d586ecdd20630c9266d1797aa924e67a8d1de7e7368b35c5ab3946406eedc7ea927869e877fa799e1eda2f6d2a134796e8e251048a9603a WHIRLPOOL 9a8b9535b5ff124a1bc7b3e29239f5f652b9ef5965d688f2fe90c0573a0c5c12064d2c0148477a27e46a185dc8eae7c7a8f4708415ea585431205dc94c157c4c AUX sash-3.7-builtin.patch 465 SHA256 ce968bfe95a2444fae473f678e4394b4acea2b7510b48ba63b554d2537de1bf1 SHA512 3c278b7a6570195d62aee65582edffa74e12a68cd684b7855256083b45c99a5a8f6506e2c59ab4edbd1ba094e7d512dfe7c90a79945f2be5261a5975d5b95d23 WHIRLPOOL 13b77b280d1a08bba3636c50a1b196d1459add18f0fa76dcd04d1b4035c3895bd0a51736f7554ba3cf16e99ffa77c4a0b2f8685041ffcb7ec32516b1e12d9d59 DIST sash-3.7.tar.gz 50337 SHA256 352726adb9736ba5a9b459d5c8a7d7c3b2c36cc99363adccc25a8a991d719c7f SHA512 2bb9ee46cc0518abba9e30be5ddac8b0424fd41dbacddaa0f9417ff29b5be321780537aa3b23b802ffcea1567e39bfd729c30326a7639a06c5b2ad5e6124c391 WHIRLPOOL 4ee6a6f7866a31549b15fc32ce2d3fc2c42de3565816452d2ac72feb0a6025a0c343b41efcf8d6b3b70ca7b222f9c8ce7fa06827ce97a505ad815116bbe5bb83 -EBUILD sash-3.7-r1.ebuild 1102 SHA256 ac7b764eccc9cff5c0dd5a58f69001fc518199747ad9c9a52560413295002b3d SHA512 aec20eecc44835cbdac0b97a85010db82a057606e8a1f8bb60d490a0760f959730a15e130a929a0ce427c7efaa60a576ac91faf92c5863cf633be985a92cf8ce WHIRLPOOL f7c24304c865d8110ee7f164167af3634d01cb9f68e673e32d5b931517329c80419cb02fab0c2add59ddaf195d0677cbab52eb8ce14a250be82bff17f64a4923 EBUILD sash-3.7-r3.ebuild 1033 SHA256 aa22f3e42b8342c0404e2b7e4c59b9a5a67e37353f2b50871d9cb267ddf6ab9f SHA512 f4698c030dcfd25d9ab9593b785e9ce18c447687c02cb2e5308491e6c2a4bbdf3707e7701b1673f72ebb241ddb7af326279a81faa72db5160797b8d5f711711a WHIRLPOOL 6dc3254aaa4f9ed84e3d1da338ae97d9a385b5f54f3994d40498341fb15d44642bbe344f1cef50fb0829e7ab0406c237d00402d004e75b15fae6dc0dc579ea96 -MISC ChangeLog 6239 SHA256 22c23df1c69d6ef6e50627a19ac7f8c4c56ad61f3f5da3b1b705bc213b4efdf5 SHA512 4e310c5f27db8454968d3ba20afc52f181cb173d40b0d59212b48d3a3e582bd731d7f2cfdfee84577ca50217aad15dd105ed6aa42e86392a38eb9ab09bd1fd60 WHIRLPOOL 688353486573ad6de9c80fe536e9d1f7f6625b91b942a7d96da3709ff3c32c49096d46da4a0a5611950f24103ef7cc3dc1c6f7c49ae355430be6bc5754424401 +MISC ChangeLog 6367 SHA256 64c400f3250fc3493ec0223019086d4244d160d6626b5829298584ab82e0ca83 SHA512 f8776009e3b62acaeabdac08c50a24d31862bbfa56c3a0a8d15ca565d58b4915256af77b74789a767e2d30c564ad15d938361d2151daf23fbe0fa1ec77468243 WHIRLPOOL e604c44bd68ff0679714c307c617f52e0d707cdc1ab00c673cce8bf8aaa80d6e573b146f0200502da6021692577af83bb551c287c54096a2553b53fc058c4d70 MISC metadata.xml 214 SHA256 0e019c1dee563e5b23815be471ae1b65fcaf721a91ec48037446d41ca787d3e5 SHA512 701b8c51f43f8660d40700929c243a2dae9f19dcbc7b8eca877e20eadc1ae2e0c84f7c7d8c3cb576055c1a49a55e9c759ef469eeda67026ce252d341937f6691 WHIRLPOOL 977119e736e0795137df14faae681f7fa07ba8297a19ef4a7d7b93de7efceaed16f7103f179a762be41b8849c33c535b55d16d2fd0ea795df0525592752e0156 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.17 (GNU/Linux) +Version: GnuPG v2.0.20 (GNU/Linux) -iEYEARECAAYFAk/5vWwACgkQuQc30/atMkAUlgCfX0zWodj1dZjQejon4FrUHWcs -BSkAn36029BICfSojKofn565TH5mzyjC -=QuL/ +iQEcBAEBCAAGBQJR3Ff4AAoJEMbwO6tnXQ0s3wAH/jMdy4lykFZt5XH0Dkpihd6m +jH66Y/w31f32nPkoC+UH5J7YD7j8mjHQo8uq2FL7KT8BxTb71XIlyXZbenAjuJBV +JqWySwkmrv6ZUMvroZb/A1J8ur3VuczJk+FrOVEN/Elsri7rpBPShWEze1w4PSsy +cAQ0k/TfDC5J+Oz/JQeo3yH7C6LlPHtpF2dmTmSs3cwP2OGaVe1vm6YFcJ6HoiLi ++U38nryw10inWBYytUWe/juEZr8TG5NXra6f5kL/9H+QXT3ZEC4F6Dc87XRVqQPX +2LTq2INFrwhaRiLUHq/D1EDCJFYScEll+fW0eFIDyVJnpTzNt8gmlaPsQX1+j+Y= +=7R9q -----END PGP SIGNATURE----- diff --git a/app-shells/sash/files/sash-3.6-readline.patch b/app-shells/sash/files/sash-3.6-readline.patch deleted file mode 100644 index 79749e48f944..000000000000 --- a/app-shells/sash/files/sash-3.6-readline.patch +++ /dev/null @@ -1,301 +0,0 @@ ---- sash-3.6/Makefile -+++ sash-3.6/Makefile -@@ -19,10 +19,11 @@ - -DHAVE_LINUX_ATTR=$(HAVE_LINUX_ATTR) \ - -DHAVE_LINUX_MOUNT=$(HAVE_LINUX_MOUNT) \ - -DHAVE_BSD_MOUNT=$(HAVE_BSD_MOUNT) \ -- -DMOUNT_TYPE=$(MOUNT_TYPE) -+ -DMOUNT_TYPE=$(MOUNT_TYPE) \ -+ -DHAVE_READLINE - - LDFLAGS = -static -s --LIBS = -lz -+LIBS = -lz -lreadline -lncurses - - - BINDIR = /bin ---- sash-3.6/sash.c -+++ sash-3.6/sash.c -@@ -384,6 +384,201 @@ - static void usage(void); - static Alias * findAlias(const char * name); - -+#ifdef HAVE_READLINE -+/*--- Interface of readline 4.0 by vlk@vinf.ru ---*/ -+ -+#include <readline/readline.h> -+#include <readline/history.h> -+#include <dirent.h> -+ -+char * dupstr (char *s); -+void initialize_readline (void); -+char ** fileman_completion (char *text, int start, int end); -+char *command_generator (char *text, int state); -+void err_alloc(int ErrorNumber); -+extern char *xmalloc (); -+ -+static char ** listBase; -+static long listSize; -+ -+void -+err_alloc(int ErrorNumber) -+{ -+ fprintf(stderr, "Memory space failed: %d\n",ErrorNumber); -+ return; -+} -+ -+/* Add a one item to exec-command array */ -+static int -+listAdd(const char * new_item) -+{ -+ if ((listBase = realloc(listBase, sizeof(char *) * ( listSize + 1 ))) == 0 ) -+ { -+ err_alloc(3); exit(1); -+ } -+ listBase[listSize] = strdup(new_item); -+ listSize++; -+ return(0); -+} -+ -+static int -+genExecList(void) -+{ -+ char * dirName; -+ char * path; -+ char * endPath; -+ char * fullName; -+ struct dirent **namelist; -+ int n; -+ -+ if (getenv("PATH") == 0) -+ return(1); -+ else -+ { -+ if ((path = strdup(getenv("PATH"))) == 0) -+ { -+ err_alloc(4); -+ return(1); -+ } -+ } -+ /* -+ * Check out each path to see if the program exists and is -+ * executable in that path. -+ */ -+ for ( ; path; path = endPath) -+ { -+ /* -+ * Find the end of the next path and NULL terminate -+ * it if necessary. -+ */ -+ endPath = strchr(path, ':'); -+ -+ if (endPath) -+ *endPath++ = '\0'; -+ -+ /* -+ * Get the directory name, defaulting it to DOT if -+ * it is null. -+ */ -+ dirName = path; -+ -+ /* -+ * See if the program exists and is executable. -+ */ -+ if (access(dirName, F_OK) < 0) -+ { -+ if (errno != ENOENT) -+ printf("%s: %s\n", dirName, strerror(errno)); -+ -+ continue; -+ } -+ n = scandir(dirName, &namelist, 0, alphasort); -+ if (n < 0) -+ perror("scandir"); -+ else -+ while(n--) -+ { -+ if (strncmp(namelist[n]->d_name,".",1) != 0) -+ { -+ fullName = malloc(sizeof(dirName) + 1 \ -+ + sizeof(namelist[n]->d_name)); -+ strcpy(fullName, dirName); -+ strcat(fullName, "/"); -+ strcat(fullName, namelist[n]->d_name); -+ if (access(fullName,X_OK|F_OK) == 0) -+ listAdd(namelist[n]->d_name); -+ } -+ } -+ } -+return(0); -+} -+ -+/******************************************************************/ -+/* BEGIN Interface to Readline Completion */ -+/******************************************************************/ -+ -+char * dupstr (char *s) -+{ -+ char *r; -+ -+ r = xmalloc (strlen (s) + 1); -+ strcpy (r, s); -+ return (r); -+} -+ -+/* Tell the GNU Readline library how to complete. We want to try to complete -+ on command names if this is the first word in the line, or on filenames -+ if not. */ -+void initialize_readline (void) -+{ -+ /* Allow conditional parsing of the ~/.inputrc file. */ -+ rl_readline_name = "readline"; -+ -+ /* Tell the completer that we want a crack first. */ -+ rl_attempted_completion_function = (CPPFunction *)fileman_completion; -+} -+ -+/* Attempt to complete on the contents of TEXT. START and END bound the -+ region of rl_line_buffer that contains the word to complete. TEXT is -+ the word to complete. We can use the entire contents of rl_line_buffer -+ in case we want to do some simple parsing. Return the array of matches, -+ or NULL if there aren't any. */ -+char ** fileman_completion (char *text, int start, int end) -+{ -+ char **matches; -+ -+ matches = (char **)NULL; -+ -+ /* If this word is at the start of the line, then it is a command -+ to complete. Otherwise it is the name of a file in the current -+ directory. */ -+ if (start == 0) // is it the begin of string ? -+ matches = rl_completion_matches (text, command_generator); -+ return (matches); -+} -+ -+/* Generator function for command completion. STATE lets us know whether -+ to start from scratch; without any state (i.e. STATE == 0), then we -+ start at the top of the list. */ -+char * command_generator (char *text, int state) -+{ -+ static int list_index, len; -+ char *ename; -+ static long exec_count; -+ -+ /* If this is a new word to complete, initialize now. This includes -+ saving the length of TEXT for efficiency, and initializing the index -+ variable to 0. */ -+ if (!state) -+ { -+ exec_count = 0; -+ list_index = 0; -+ len = strlen (text); -+ } -+ -+ /* Return the next name which partially matches from the command list. */ -+ -+ while (ename = (char*)commandEntryTable[list_index].name) -+ { -+ list_index++; -+ if (strncmp (ename, text, len) == 0) -+ return (dupstr(ename)); -+ } -+ -+ while (exec_count < listSize) -+ { -+ ename = listBase[exec_count]; -+ exec_count++; -+ if (strncmp (ename, text, len) == 0) -+ return(dupstr(ename)); -+ } -+ /* If no names matched, then return NULL. */ -+ return ((char *)NULL); -+} -+/******************************************************************/ -+/* END Interface to Readline Completion */ -+/******************************************************************/ -+#endif - - /* - * Global interrupt flag. -@@ -405,7 +600,16 @@ - commandFile = NULL; - quietFlag = FALSE; - aliasFlag = FALSE; -+#ifdef HAVE_READLINE -+ /* -+ * Default our path if it is not set. -+ */ -+ if (getenv("PATH") == NULL) -+ putenv("PATH=/bin:/usr/bin:/sbin:/usr/sbin"); - -+ genExecList(); -+ initialize_readline (); /* Bind our completer. */ -+#endif - /* - * Look for options. - */ -@@ -554,6 +758,9 @@ - static void - readFile(const char * name) - { -+#ifdef HAVE_READLINE -+ char *input_line = NULL; -+#endif - FILE * fp; - int cc; - BOOL ttyFlag; -@@ -586,9 +793,10 @@ - - while (TRUE) - { -- if (ttyFlag) -+#ifndef HAVE_READLINE -+ if (ttyFlag) - showPrompt(); -- -+#endif - if (intFlag && !ttyFlag && (fp != stdin)) - { - fclose(fp); -@@ -805,17 +805,34 @@ - return; - } - -- if (fgets(buf, CMD_LEN - 1, fp) == NULL) -+#ifdef HAVE_READLINE -+ if (name != NULL) - { -- if (ferror(fp) && (errno == EINTR)) -+#endif -+ if (fgets(buf, CMD_LEN - 1, fp) == NULL) - { -- clearerr(fp); -+ if (ferror(fp) && (errno == EINTR)) -+ { -+ clearerr(fp); -+ continue; -+ } - -- continue; -+ break; - } -- -- break; -+#ifdef HAVE_READLINE - } -+ if (name == NULL) -+ { -+ input_line = readline(prompt ? prompt : "$ "); -+ if (input_line) -+ { -+ if (*input_line) -+ add_history(input_line); -+ strcpy(buf,input_line); -+ } -+ free(input_line); -+ } -+#endif - - cc = strlen(buf); - diff --git a/app-shells/sash/sash-3.7-r1.ebuild b/app-shells/sash/sash-3.7-r1.ebuild deleted file mode 100644 index 501056b23706..000000000000 --- a/app-shells/sash/sash-3.7-r1.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/sash/sash-3.7-r1.ebuild,v 1.4 2011/09/25 19:43:27 vapier Exp $ - -EAPI="3" - -inherit eutils flag-o-matic toolchain-funcs - -DESCRIPTION="A small static UNIX Shell with readline support" -HOMEPAGE="http://www.canb.auug.org.au/~dbell/ http://dimavb.st.simbirsk.su/vlk/" -SRC_URI="http://www.canb.auug.org.au/~dbell/programs/${P}.tar.gz" - -LICENSE="freedist" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86" -IUSE="readline" - -DEPEND="|| ( <sys-libs/zlib-1.2.5.1-r2 sys-libs/zlib[static-libs] ) - readline? ( - >=sys-libs/readline-4.1 - sys-libs/ncurses[static-libs] - )" -RDEPEND="" - -src_prepare() { - epatch "${FILESDIR}"/sash-3.7-builtin.patch - use readline && epatch "${FILESDIR}"/sash-3.6-readline.patch - - sed -i \ - -e "s:-O3:${CFLAGS}:" \ - -e "/^LDFLAGS /s: -s$: ${LDFLAGS}:" \ - Makefile || die -} - -src_compile() { - emake CC="$(tc-getCC)" || die -} - -src_install() { - into / - dobin sash || die - doman sash.1 - dodoc README -} |