summaryrefslogtreecommitdiff
path: root/app-editors/teco
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /app-editors/teco
reinit the tree, so we can have metadata
Diffstat (limited to 'app-editors/teco')
-rw-r--r--app-editors/teco/Manifest12
-rw-r--r--app-editors/teco/files/teco-double-free.diff20
-rw-r--r--app-editors/teco/files/teco-gcc4.patch11
-rw-r--r--app-editors/teco/files/teco-warnings.patch47
-rw-r--r--app-editors/teco/metadata.xml27
-rw-r--r--app-editors/teco/teco-1.00-r4.ebuild65
6 files changed, 182 insertions, 0 deletions
diff --git a/app-editors/teco/Manifest b/app-editors/teco/Manifest
new file mode 100644
index 000000000000..e91b1c419c51
--- /dev/null
+++ b/app-editors/teco/Manifest
@@ -0,0 +1,12 @@
+AUX teco-double-free.diff 936 SHA256 f3fdc8fe496b07df9a9dcc6be77f50880092d1f2cc9022b745346c6e56a5d66d SHA512 da914d198a057138c43d3fc7f3bd0f2b9577287c0c37319c09e128bf76af771dbd23301c2630eb4f7884d2298672632cec382fe2bddd06e2a315872023b05583 WHIRLPOOL c201b3bcebb38d08c87da2559256ca238f9bfa99fcb9d0652031bb6a56c0a25268490b0927dfd8ff7a32320104fb0a1649c52446794e0ec1ca81174439956362
+AUX teco-gcc4.patch 336 SHA256 71c86488f422dd77ffab53990433aff66ca24bcdda3cf3c077a01bd5a753d3e4 SHA512 8eb39de57df5f234c38d69c6b89c0422575113b9568336b8f726a2ae733c4af3e54c0e9da06d23c2ec34281fba7899df4a3af046d05d486a2c3d07eb7b55bf28 WHIRLPOOL 13e317000a0a50015194812f81618409997b44f5309a3d8e65a850eb901e6599556721b5ba22e3356edc44dbea9edb8e7b29e9e67026c05aeac4a432fd7dd9f2
+AUX teco-warnings.patch 1206 SHA256 e91ae1938f72d411a57369100f9ce40492f3b805b2670658e5f5ec9a1fccc0db SHA512 7294ef66917eb549d9437327b32160317313d343c731423e34a07ed407e5595e7ac52d57c55bc1e5c6732f5ed0840533aa9c546ee32f4ea2bef54adf5a91b249 WHIRLPOOL bf45ff3cb203607696eb694464f7c653f07bb0b89b4ef17e6b5a089eec12a123b0882a43df493c95d09fce1fd32d831ebdcb826625709c4530f0c89f3f5a73ca
+DIST tech.txt.gz 1971 SHA256 b363c59a4e97793e0c7bd0011cfc6d6669621e7a8b7c98e88da0d098aae83b7c SHA512 8c74d813d7e1bcd2f911982a8b49fa8b97ff85475a4798ea23d9a25ef30ad7243cfc851525aea895eec1a2f69aad84b6cce890ee6a29763a63c1a6d1358a200f WHIRLPOOL 5814546368ee3a0794c098496c25b5ccfe63c84e72cc802edfdbfe415f4a1920d518496b67011c63d0e3ff950204af5c61bad0e1684c35b1c724a977b2145a5a
+DIST teco.doc.gz 129896 SHA256 c2102dcfc223e5f8fe189b2dd75dfb6f8dbdf1e7509761c974da45e6ba115c66 SHA512 ea294aaa0d54de5b58ef645fbaf5c9512f5a27fb2b49b1120b4a712d01c6482f01a53ac2dac7c8eabdf110823a4556563cde828fc7416479b9c23157282e76da WHIRLPOOL 650e504660874a88170ca8e88735ac7e3c9a0587191aa56591c441949402ea170cf72f23084d85c2bd74de340a42585b64f9a93b45c2f4089fd4f9d2642394e8
+DIST teco.tar.gz 61305 SHA256 2d20d7246df15863a3cc485ee38706fd4dd8650aab0578d202913cc5750fc8e4 SHA512 686b3944a82d088a2fce12a9b770f4aa5f58aaadde064b3d3342114f0ece2d7cbae27d0e92fd026def6f62a3ff0dc82b37146e30a93b2ec195dc7f376b45fdf7 WHIRLPOOL 976dfcffd0dd9c40e97574c22efc99b8985484534a4f8f8deae218daad9ccc6c4f29e1c352ec0be5e73368993d3d04e757b708ca325b42b8fa3c1e71ae2e42b9
+DIST tecolore.txt.gz 7039 SHA256 a7cd56d4d9bce8befd8d73fe8cbb1ab22740571f52354880c84ffd0fcd22d884 SHA512 f8b66637dd140057331bb950b639f755b7d2a58c6d9feb5c89c062350f3213b40f4e955c586643312b4bcdcfd5ce67c621c8f7351e08a4303be35af967ce206e WHIRLPOOL c847df458b938d3b6a5d41ea868bbf1107a191cd5cf0f5e93e93d8c8c1f1fb55574bf5db9768fbfbf520d5306ffdae8b0915167e9a7a6ff958b9a286df077cc3
+DIST tecoprog.doc.gz 15629 SHA256 8e0349b73ffcd22c668d81ea1427f93324d8f236862847634f7118fd4cde26d7 SHA512 f49de461d6411345e9e72b51bf39bc1155acc07901b54d8fda94b99a4a573005ccffc475ef8aac3bfc0b8bd246dc0077399d4bcef70e8a5e753c45995df7ad55 WHIRLPOOL 17a80c2ee2c66509689359103167c6e6c2809f8a3f54d6293de8288f37641491a34ead63691572e99e84e07c39565f441f6b56e5a8c9e20ae32f5641dac69a45
+EBUILD teco-1.00-r4.ebuild 1700 SHA256 501beb8fe0c9187629852b48254928f644852c4930c3b238c86351e241be345c SHA512 53257dd5f8ce362efc3b2be0885135c58df3866f3c9275c0db086ed7d9d035c0de001cdcc6f5a316320681b481d36757fb67c984d0e95c51e328cf0c6683f304 WHIRLPOOL df6c2c0381cfc2323c3713e5a03c722d013b13cc7abcfbc2cd9eb8bf1cce1f48843df593bf18e7b1241bb357abb50703d749eb3f0e261a4a68f07cdeebfb7dd8
+MISC ChangeLog 2403 SHA256 08a5258e892d76e6d16d6f5394954658240fe1246e9bebe777e1f6b1ca40b6a2 SHA512 9f650e86d3ab15e5c583134bb6ca7b8306a5672718822b9de587c13d51b88d37a83c8fc2235bd77698d1ce68533ede8fbf96a05098a309162d079c0934a57705 WHIRLPOOL 6eaf5ff0ce6f244fce3ca5179141e6b085ff22f82f74cad3596cf4897bdd5ab3f58f62f05b56c4e3fd1474a43cec2a45bc927c255dab2020dc4181013aa4b76c
+MISC ChangeLog-2015 3839 SHA256 c52bbe4da51b4b03fc7a60e7f0eab5af839159bb63ccdb48a6dbad40bc4b02cf SHA512 93b513856af3c077d557f72109c70c9e63ed50ad75dc9a61d17e693f84bfab70b136444b1b3de38fffc1bc93684c2303331206422a1a680877737ee1908248e1 WHIRLPOOL 0e5d4ad0d2759403e40bdb3c4f1eefad79dbd9fef800533fe77a8eea659a4928ccd2d14d787a5fe3957184f23b665e628b9d5e30e415e0d1e14f67a6f47923b5
+MISC metadata.xml 1356 SHA256 8785ab159352886ebd0df438a641693f463533983128347e44750fb4a1366c71 SHA512 3e8680b16e6de3e239f453d13d4b0cb41545aace84af0e9cf8103c0f605cec29467bb0b5feebd592dbded84cd109360c42f63da69115870fb57c97f8137dfdc0 WHIRLPOOL 768b22108afd173f782f7a41c55467d98788a3cd2d52fa9ddfe45be781d24405d04871f05563d75ff28c86ada450452d6a762b2236481114583e0dfddfaaeeeb
diff --git a/app-editors/teco/files/teco-double-free.diff b/app-editors/teco/files/teco-double-free.diff
new file mode 100644
index 000000000000..5a62b23d90be
--- /dev/null
+++ b/app-editors/teco/files/teco-double-free.diff
@@ -0,0 +1,20 @@
+--- te_exec2.c 1993-11-12 21:12:47.000000000 +0000
++++ te_exec2.c.new 2005-08-21 18:31:26.495907720 +0100
+@@ -197,7 +197,7 @@
+ {
+ if (eisw) /* if ending a file execute, restore the previous "old command string" */
+ {
+- fclose(eisw); /* return the file descriptor */
++ fclose(eisw), eisw = NULL; /* return the file descriptor */
+ dly_free_blist(cbuf.f); /* return the command string used by the file (after execution done) */
+ cbuf.f = oldcstring.f;
+ cbuf.z = oldcstring.z;
+@@ -214,7 +214,7 @@
+ oldcstring.z = cbuf.z;
+ cbuf.f = NULL; /* and make it inaccessible to "rdcmd" */
+ }
+- if (eisw) fclose(eisw); /* if a command file had been open, close it */
++ if (eisw) fclose(eisw), eisw = NULL; /* if a command file had been open, close it */
+ esp->val1 = (eisw = t_eisw) ? -1 : 0;
+ esp->flag1 = colonflag;
+ colonflag = 0;
diff --git a/app-editors/teco/files/teco-gcc4.patch b/app-editors/teco/files/teco-gcc4.patch
new file mode 100644
index 000000000000..fe4d8d3759b4
--- /dev/null
+++ b/app-editors/teco/files/teco-gcc4.patch
@@ -0,0 +1,11 @@
+--- te_subs.c.orig 2007-03-18 19:58:40 +0100
++++ te_subs.c 2007-03-18 19:58:57 +0100
+@@ -231,7 +231,7 @@
+ char c;
+ {
+ if (isdigit(c)) return(c - '0' + 1);
+- else if isalpha(c) return(mapch_l[c] - 'a' + 11);
++ else if (isalpha(c)) return(mapch_l[c] - 'a' + 11);
+ else if (fors)
+ {
+ if (c == '_') return (SERBUF);
diff --git a/app-editors/teco/files/teco-warnings.patch b/app-editors/teco/files/teco-warnings.patch
new file mode 100644
index 000000000000..f8bbfbfff181
--- /dev/null
+++ b/app-editors/teco/files/teco-warnings.patch
@@ -0,0 +1,47 @@
+Include stdlib.h for exit(3).
+Fix conflicting type for malloc(3).
+Avoid casting pointers from/to int.
+
+--- teco-orig/te_defs.h
++++ teco/te_defs.h
+@@ -6,6 +6,7 @@
+ /* version for multiple buffers 04/19/89 11.25 */
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <ctype.h>
+ #include <setjmp.h>
+
+--- teco-orig/te_rdcmd.c
++++ teco/te_rdcmd.c
+@@ -94,7 +94,8 @@
+ qreg[i].f = cbuf.f; /* put the old command string in its place */
+ if (qreg[i].f) qreg[i].f->b = (struct buffcell *) &qreg[i];
+ qreg[i].z = cbuf.z;
+- cbuf.f = (struct buffcell *) (cbuf.z = 0); /* no old command string */
++ cbuf.f = NULL; /* no old command string */
++ cbuf.z = 0;
+ err = 0; /* no previous error */
+ goto restart;
+ }
+--- teco-orig/te_utils.c
++++ teco/te_utils.c
+@@ -13,7 +13,6 @@
+
+ struct buffcell *get_bcell()
+ {
+- char *malloc();
+ struct buffcell *p;
+ int i;
+
+--- teco-orig/te_window.c
++++ teco/te_window.c
+@@ -1051,7 +1051,7 @@
+ pp->c = loc % CELLSIZE;
+ pp->dot = loc;
+ }
+- return( (int) pb0->f);
++ return(pb0->f != NULL);
+ }
+
+ /* routine to move N lines (back, forward, or 0) */
diff --git a/app-editors/teco/metadata.xml b/app-editors/teco/metadata.xml
new file mode 100644
index 000000000000..df81ef45c27c
--- /dev/null
+++ b/app-editors/teco/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ulm@gentoo.org</email>
+ <name>Ulrich Müller</name>
+</maintainer>
+<longdescription lang="en">
+ TECO /tee'koh/ /n.,v. obs./ 1. [originally an acronym for `[paper]
+ Tape Editor and COrrector'; later, `Text Editor and COrrector'] /n./
+ A text editor developed at MIT and modified by just about everybody.
+ With all the dialects included, TECO may have been the most prolific
+ editor in use before EMACS, to which it was directly ancestral.
+ Noted for its powerful programming-language-like features and its
+ unspeakably hairy syntax. It is literally the case that every string
+ of characters is a valid TECO program (though probably not a useful
+ one); one common game used to be mentally working out what the TECO
+ commands corresponding to human names did.
+
+ In mid-1991, TECO is pretty much one with the dust of history,
+ having been replaced in the affections of hackerdom by EMACS.
+ Descendants of an early (and somewhat lobotomized) version adopted
+ by DEC can still be found lurking on VMS and a couple of crufty
+ PDP-11 operating systems, however, and ports of the more advanced
+ MIT versions remain the focus of some antiquarian interest.
+</longdescription>
+</pkgmetadata>
diff --git a/app-editors/teco/teco-1.00-r4.ebuild b/app-editors/teco/teco-1.00-r4.ebuild
new file mode 100644
index 000000000000..cf8e0ec22eb5
--- /dev/null
+++ b/app-editors/teco/teco-1.00-r4.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils toolchain-funcs flag-o-matic readme.gentoo
+
+DESCRIPTION="Classic TECO editor, Predecessor to EMACS"
+HOMEPAGE="http://www.ibiblio.org/pub/linux/apps/editors/tty/ http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/teco"
+SRC_URI="http://www.ibiblio.org/pub/linux/apps/editors/tty/teco.tar.gz
+ doc? ( mirror://gentoo/tecolore.txt.gz
+ mirror://gentoo/tech.txt.gz
+ mirror://gentoo/teco.doc.gz
+ mirror://gentoo/tecoprog.doc.gz )"
+
+LICENSE="freedist"
+SLOT="0"
+KEYWORDS="alpha amd64 ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="doc"
+
+RDEPEND="sys-libs/ncurses:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ unpack teco.tar.gz
+ if use doc; then
+ mkdir doc
+ cd doc || die
+ unpack tecolore.txt.gz tech.txt.gz teco.doc.gz tecoprog.doc.gz
+ fi
+}
+
+src_prepare() {
+ local pkg_config=$("$(tc-getPKG_CONFIG)" --libs ncurses)
+ sed -i -e "s:\$(CC):& \$(LDFLAGS):;s:-ltermcap:${pkg_config}:" \
+ Makefile || die
+ # bug 103257
+ epatch "${FILESDIR}"/${PN}-double-free.diff
+ epatch "${FILESDIR}"/${PN}-gcc4.patch
+ epatch "${FILESDIR}"/${PN}-warnings.patch
+}
+
+src_compile() {
+ append-flags -ansi
+ append-cppflags -D_POSIX_SOURCE
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ dobin te
+ doman te.1
+ dodoc sample.tecorc sample.tecorc2 READ.ME MANIFEST
+ if use doc; then
+ cd doc
+ dodoc tecolore.txt tech.txt teco.doc tecoprog.doc
+ fi
+
+ DOC_CONTENTS="The TECO binary is called te.
+ \nSample configurations and documentation are available
+ in /usr/share/doc/${PF}/."
+ readme.gentoo_create_doc
+}