blob: 7f7f5ad2ee64622b94ff93bf5b08f55d4d380b37 [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001SUMMARY = "Library for editing typed command lines"
2DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \
3command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \
4additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \
5lines, and perform csh-like history expansion on previous commands."
6SECTION = "libs"
Andrew Geissler6ce62a22020-11-30 19:58:47 -06007HOMEPAGE = "https://tiswww.case.edu/php/chet/readline/rltop.html"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05008
9# GPLv2+ (< 6.0), GPLv3+ (>= 6.0)
10LICENSE = "GPLv3+"
11LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
12
13DEPENDS += "ncurses"
14
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050015SRC_URI = "${GNU_MIRROR}/readline/${BPN}-${PV}.tar.gz;name=archive"
16SRC_URI += "file://inputrc"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050017
18inherit autotools texinfo
19
20EXTRA_AUTORECONF += "--exclude=autoheader"
21
22LEAD_SONAME = "libreadline.so"
23
Patrick Williams213cb262021-08-07 19:21:33 -050024do_configure:prepend () {
Patrick Williamsc124f4f2015-09-15 14:41:29 -050025 if [ ! -e ${S}/acinclude.m4 ]; then
26 cat ${S}/aclocal.m4 > ${S}/acinclude.m4
27 fi
28}
29
Patrick Williams213cb262021-08-07 19:21:33 -050030do_install:append () {
Patrick Williamsc124f4f2015-09-15 14:41:29 -050031 # Make install doesn't properly install these
32 oe_libinstall -so -C shlib libhistory ${D}${libdir}
33 oe_libinstall -so -C shlib libreadline ${D}${libdir}
34
35 rmdir ${D}${bindir}
Patrick Williamsc0f7c042017-02-23 20:41:17 -060036 rm -rf ${D}${datadir}/${BPN}/*.c
37 rmdir ${D}${datadir}/${BPN} || true
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050038
39 install -m 0755 -d ${D}${sysconfdir}
40 install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
Patrick Williamsc124f4f2015-09-15 14:41:29 -050041}
42
43BBCLASSEXTEND = "native nativesdk"
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050044
Patrick Williams213cb262021-08-07 19:21:33 -050045CONFFILES:${PN} += "${sysconfdir}/inputrc"
Brad Bishopf3f93bb2019-10-16 14:33:32 -040046
Andrew Geissler82c905d2020-04-13 13:39:40 -050047inherit update-alternatives
48
49ALTERNATIVE_PRIORITY = "100"
Patrick Williams213cb262021-08-07 19:21:33 -050050ALTERNATIVE:${PN}-doc = "history.3"
Andrew Geissler82c905d2020-04-13 13:39:40 -050051ALTERNATIVE_LINK_NAME[history.3] = "${mandir}/man3/history.3"
52
Brad Bishopf3f93bb2019-10-16 14:33:32 -040053# OpenSuse injects versions into libreadline leading to conficits between our native one and theirs
54# see their spec file for where this is injected. Extra versioning is harmless so we just do the same.
Patrick Williams213cb262021-08-07 19:21:33 -050055SRC_URI:append:class-native = " file://rl-native.map"
56LDFLAGS:append:class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map"