merge of '0b604857bbf871639fdb43ee8380222e8ef64bb7'
[vuplus_openembedded] / packages / ckermit / ckermit_211.bb
1 DESCRIPTION = "C-Kermit is a combined serial and network communication \
2 software package offering a consistent, medium-independent, \
3 cross-platform approach to connection establishment, terminal \
4 sessions, file transfer, character-set translation, and automation \
5 of communication tasks."
6 LICENSE = "Kermit"
7 HOMEPAGE = "http://www.columbia.edu/kermit/"
8 SECTION = "console/network"
9 SRC_URI = "ftp://kermit.columbia.edu/kermit/archives/cku${PV}.tar.gz"
10 PR = "r1"
11
12 #
13 # From http://www.columbia.edu/kermit/ck80.html#license
14 #
15 #       "Free Unix Distributions: C-Kermit may be included in "free Unix"
16 #       distributions such as GNU/Linux, FreeBSD, NetBSD, and OpenBSD. See the
17 #       license for details."
18 #
19 # A distributions based on OpenEmbedded (OpenZaurus, OpenSimpad etc) is a
20 # "free Unix" distribution, therefore we can include the package.
21 #
22 #
23 # Please note that the license is not 100% because it limits what you can
24 # do:
25 #
26 #       "The C-Kermit source code may not be changed without the consent of
27 #       the Kermit Project, which will not be unreasonably withheld (this is
28 #       simply a matter of keeping a consistent and supportable code base)."
29 #
30 # But we don't change the source code in any way, so we comply to the license.
31 # So, essentially for us C-Kermit is free as in beer, but not in freedom.
32 #
33 # That is true for other distros. C-Kkermit is distributed by:
34 #
35 #       Debian: http://packages.debian.org/unstable/comm/ckermit
36 #       Gentoo: http://mirror.pudas.net/gentoo-x86-portage/app-misc/ckermit/ckermit-8.0.211.ebuild
37 #       SuSE: http://www.novell.com/products/linuxpackages/enterpriseserver/s390/ckermit.html
38 #       Fedora Core: http://cvs.fedora.redhat.com/viewcvs/devel/ckermit/
39 #       PLD: http://cvs.pld.org.pl/SPECS/ckermit.spec
40 #
41 # and, according to the Kermit website http://www.columbia.edu/kermit/ck80.html also with
42 #
43 #       Red Hat 9 (on earlier Red Hat's it was on the PowerTools CD)
44 #       HP-UX
45 #       FreeBSD
46 #       NetBSD
47 #       OpenBSD
48 #
49 # ... and probably other distro's as well.
50 #
51
52 S = "${WORKDIR}"
53
54 export CC2 = "${CC}"
55 export BINDIR = "${bindir}"
56 export MANDIR = "${mandir}/man1"
57 export INFODIR = "${infodir}"
58
59 # Additional flags. For uclibc we add -DNOARROWKEYS which stops ckermit
60 # trying to look inside the stdio headers.
61 CKERMIT_ADDITIONAL = ""
62 CKERMIT_ADDITIONAL_linux-uclibc = "-DNOARROWKEYS"
63
64 do_compile () {
65         # The original makefile doesn't differentiate between CC and CC_FOR_BUILD,
66         # so we build wart manually. Note that you need a ckwart.o with the proper
67         # timestamp to make this hack work:
68         ${BUILD_CC} -c ckwart.c
69         ${BUILD_CC} -o wart ckwart.o
70         ./wart ckcpro.w ckcpro.c
71
72         # read ${S}/ckccfg.txt to understand this :-)
73         oe_runmake wermit CFLAGS="${CFLAGS} -DLINUX -DCK_POSIX_SIG \
74                 -DNOTCPOPTS -DLINUXFSSTND -DNOCOTFMC -DPOSIX -DUSE_STRERROR \
75                 -DNOSYSLOG -DHAVE_PTMX -DNO_DNS_SRV -DNOGFTIMER \
76                 -DNOB_50 -DNOB_75 -DNOB_134 -DNOB_150 -DNOB_200 \
77                 -DNOB_1800 -DNOB_3600 -DNOB_7200 -DNOB_76K -DNOB_230K \
78                 -DNOB_460K -DNOB_921K \
79                 -DNOAPC -DNOCSETS -DNONET -DNOUNICODE -DNOHELP -DNODEBUG \
80                 -DNOFRILLS -DNOFTP -DNODIAL -DNOPUSH -DNOIKSD -DNOHTTP -DNOFLOAT \
81                 -DNOSERVER -DNOSEXP -DNORLOGIN -DNOOLDMODEMS -DNOSSH -DNOLISTEN \
82                 -DNORESEND -DNOAUTODL -DNOSTREAMING -DNOHINTS -DNOCKXYZ -DNOLEARN \
83                 -DNOMKDIR -DNOPERMS -DNOCKTIMERS -DNOCKREGEX -DNOREALPATH \
84                 -DCK_SMALL -DNOLOGDIAL -DNORENAME -DNOWHATAMI \
85                 ${CKERMIT_ADDITIONAL}"
86 }
87
88 do_install () {
89         install -d ${D}${BINDIR} ${D}${MANDIR} ${D}${INFODIR}
90         oe_runmake 'DESTDIR=${D}' 'MANDIR=${D}${MANDIR}' install
91         # Fix up dangling symlink
92         rm ${D}${BINDIR}/kermit-sshsub
93         (cd ${D}${BINDIR} && ln -s ${BINDIR}/kermit kermit-sshusb)
94 }