app-misc/ckermit: import from upstream
BUG=None
TEST=`emerge-{x86,amd64,arm}-generic ckermit`
Change-Id: I54f9c58434eb52161aba03d4ae6c35998776aa33
Reviewed-on: https://gerrit.chromium.org/gerrit/58030
Commit-Queue: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/app-misc/ckermit/Manifest b/app-misc/ckermit/Manifest
new file mode 100644
index 0000000..2a5442b
--- /dev/null
+++ b/app-misc/ckermit/Manifest
@@ -0,0 +1 @@
+DIST cku211.tar.gz 2878523 SHA256 39e7cd4892502344a635952843487d9b4bfa98e59d1e1acad5ef8aa969abba93 SHA512 470bf56d5b5f30721d0030ff89a5cd845f365dba81d097942524cc04dd620070678d278d1009fb67bae3cb875715808cbbfc7c0358b9671f30c65ce1d9bd35ad WHIRLPOOL 160aee04d5f5c425ebb2011b71923257deb154cf1ca7070208cd8a2253189ff5529940c3b1deb7fc5280f5d9ff8f699dff8ebab3881584439b96da251b0c9435
diff --git a/app-misc/ckermit/ckermit-8.0.211-r4.ebuild b/app-misc/ckermit/ckermit-8.0.211-r4.ebuild
new file mode 100644
index 0000000..a6f2582
--- /dev/null
+++ b/app-misc/ckermit/ckermit-8.0.211-r4.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-misc/ckermit/ckermit-8.0.211-r4.ebuild,v 1.5 2013/06/10 17:42:53 vapier Exp $
+
+EAPI="4"
+
+inherit versionator eutils flag-o-matic toolchain-funcs
+
+# Columbia University only uses the third component, e.g. cku211.tar.gz for
+# what we would call 8.0.211.
+MY_P="cku$( get_version_component_range 3 ${PV} )"
+
+DESCRIPTION="combined serial and network communication software package"
+SRC_URI="ftp://kermit.columbia.edu/kermit/archives/${MY_P}.tar.gz"
+HOMEPAGE="http://www.kermit-project.org/"
+
+LICENSE="Kermit"
+SLOT="0"
+KEYWORDS="amd64 arm ~hppa ppc ppc64 x86"
+IUSE="ncurses"
+
+DEPEND="ncurses? ( >=sys-libs/ncurses-5.2 )"
+RDEPEND="${DEPEND}
+ net-dialup/lrzsz"
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-cleanup.patch
+ epatch "${FILESDIR}"/${P}-build-wart.patch
+ tc-export_build_env BUILD_CC
+ sed -i -r \
+ -e 's:"(CC2?) = gcc":"\1=$(CC)":g' \
+ -e 's:"CFLAGS = -O:"CFLAGS = $(CFLAGS):' \
+ makefile || die
+}
+
+ck_use() {
+ use $1 && append-cppflags $2 && libs+=" $3"
+}
+src_compile() {
+ # we don't enable any of the telnet/ftp authentication stuff
+ # since there are other packages which do these things better
+ # USE="kerberos pam shadow ssl zlib"
+ append-cppflags -DNO_AUTHENTICATION -DNOLOGIN -DNOFTP
+
+ local libs
+ ck_use ncurses -DCK_NCURSES -lncurses
+ append-cppflags -DHAVE_PTMX -D_XOPEN_SOURCE -D_BSD_SOURCE #202840
+ append-cppflags -DHAVE_CRYPT_H
+ emake \
+ CC="$(tc-getCC)" \
+ KFLAGS="${CPPFLAGS}" \
+ LIBS="-lcrypt -lresolv ${libs}" \
+ LNKFLAGS="${LDFLAGS}" \
+ linuxa
+}
+
+src_install() {
+ dodir /usr/bin /usr/share/man/man1
+ emake \
+ DESTDIR="${ED}" \
+ BINDIR=/usr/bin \
+ MANDIR="${ED}"/usr/share/man/man1 \
+ MANEXT=1 \
+ install
+ dodoc *.txt
+
+ # make the correct symlink
+ rm "${ED}"/usr/bin/kermit-sshsub || die
+ dosym /usr/bin/kermit /usr/bin/kermit-sshsub
+
+ # the ckermit.ini script is calling the wrong kermit binary --
+ # the one from ${D}
+ sed -i "s:${D}::g" "${ED}"/usr/bin/ckermit.ini
+}
diff --git a/app-misc/ckermit/files/ckermit-8.0.211-build-wart.patch b/app-misc/ckermit/files/ckermit-8.0.211-build-wart.patch
new file mode 100644
index 0000000..59f28a9
--- /dev/null
+++ b/app-misc/ckermit/files/ckermit-8.0.211-build-wart.patch
@@ -0,0 +1,23 @@
+the wart util is used at build time only, so use BUILD_* so we can cross-compile
+
+--- a/makefile
++++ b/makefile
+@@ -1406,12 +1406,17 @@
+
+ ckctel.$(EXT): ckcsym.h ckcdeb.h ckcker.h ckcnet.h ckctel.h ckclib.h
+
++BUILD_CC ?= $(CC)
++BUILD_CFLAGS ?= $(CFLAGS)
++BUILD_CPPFLAGS ?= $(CPPFLAGS)
++BUILD_LDFLAGS ?= $(LDFLAGS)
+ wart: ckwart.$(EXT)
+- $(CC) $(LNKFLAGS) -o wart ckwart.$(EXT) $(LIBS)
++ $(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) -o wart ckwart.$(EXT) $(BUILD_LDFLAGS)
+
+ ckcmdb.$(EXT): ckcmdb.c ckcdeb.h ckcsym.h ckclib.h
+
+ ckwart.$(EXT): ckwart.c
++ $(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) -o $@ -c $<
+
+ ckudia.$(EXT): ckudia.c ckcker.h ckcdeb.h ckucmd.h ckcasc.h ckcsym.h ckcsig.h \
+ ckcnet.h ckctel.h ckclib.h
diff --git a/app-misc/ckermit/files/ckermit-8.0.211-cleanup.patch b/app-misc/ckermit/files/ckermit-8.0.211-cleanup.patch
new file mode 100644
index 0000000..5b7c1ed
--- /dev/null
+++ b/app-misc/ckermit/files/ckermit-8.0.211-cleanup.patch
@@ -0,0 +1,78 @@
+clean up missing prototypes and broken printfs
+
+--- a/ckcmai.c
++++ b/ckcmai.c
+@@ -623,6 +623,8 @@ ACKNOWLEDGMENTS:
+ #include "ckntap.h"
+ #endif /* NT */
+
++#include <time.h>
++
+ #ifndef NOSERVER
+ /* Text message definitions.. each should be 256 chars long, or less. */
+ #ifdef MINIX
+--- a/ckufio.c
++++ b/ckufio.c
+@@ -40,6 +40,7 @@ char *ckzv = "UNIX File support, 8.0.200, 4 Mar 2004";
+ #include "ckcsym.h"
+ #include "ckcdeb.h"
+ #include "ckcasc.h"
++#include "ckuusr.h"
+
+ #ifndef NOCSETS
+ #include "ckcxla.h"
+@@ -1803,6 +1804,8 @@ zxin(n,s,x) int n, x; char *s; {
+ return(fread(s, sizeof (char), x, fp[n]));
+ }
+
++extern int ttwait(int fd, int secs);
++
+ /*
+ Z I N F I L L -- Buffered file input.
+
+--- a/ckutio.c
++++ b/ckutio.c
+@@ -1808,6 +1808,11 @@ ttgwsiz() {
+ #endif /* NONAWS */
+ }
+
++#ifdef CK_NAWS /* Negotiate About Window Size */
++#ifdef RLOGCODE
++_PROTOTYP( int rlog_naws, (void) );
++#endif /* RLOGCODE */
++#endif /* CK_NAWS */
+
+ #ifndef NOSIGWINCH
+ #ifdef SIGWINCH
+--- a/ckuus5.c
++++ b/ckuus5.c
+@@ -7747,7 +7747,7 @@ doshow(x) int x; {
+ printf(" --bannerfile=%s\n",bannerfile ? bannerfile : "(null)");
+ printf(" --cdfile:%s\n",cdmsgstr ? cdmsgstr : "(null)");
+ printf(" --cdmessage:%d\n",srvcdmsg);
+- printf(" --helpfile:%d\n",helpfile);
++ printf(" --helpfile:%s\n",helpfile ? helpfile : "(null)");
+ if (inserver) {
+ printf("\n");
+ break;
+--- a/ckuus7.c
++++ b/ckuus7.c
+@@ -2981,7 +2981,7 @@ dopurge() { /* Do the PURGE command */
+ if (n < tokeep) { /* Not deleting any */
+ count = 0;
+ if (listing)
+- printf(" Matches = %d: Not enough to purge.\n");
++ printf(" Matches = %d: Not enough to purge.\n", n);
+ goto xpurge;
+ }
+
+--- a/ckuusx.c
++++ b/ckuusx.c
+@@ -56,7 +56,6 @@
+ #include <termcap.h>
+ #endif /* NOHTERMCAP */
+ #endif /* BSD44 */
+-#else /* !BSD44 */
+ #ifdef linux
+ #include <term.h>
+ #endif /* linux */
diff --git a/app-misc/ckermit/metadata.xml b/app-misc/ckermit/metadata.xml
new file mode 100644
index 0000000..59e2b8f
--- /dev/null
+++ b/app-misc/ckermit/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ <name>Default assignee for orphaned packages</name>
+ </maintainer>
+</pkgmetadata>