summaryrefslogtreecommitdiff
path: root/recipes/libedit
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/libedit
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/libedit')
-rw-r--r--recipes/libedit/files/20031222-debian-to-gentoo.patch122
-rw-r--r--recipes/libedit/files/libedit-add-soname.diff8
-rw-r--r--recipes/libedit/libedit_20050118.bb40
3 files changed, 170 insertions, 0 deletions
diff --git a/recipes/libedit/files/20031222-debian-to-gentoo.patch b/recipes/libedit/files/20031222-debian-to-gentoo.patch
new file mode 100644
index 0000000000..4822f2aadf
--- /dev/null
+++ b/recipes/libedit/files/20031222-debian-to-gentoo.patch
@@ -0,0 +1,122 @@
+diff -ur netbsd-cvs/Makefile libedit-20031222/Makefile
+--- netbsd-cvs/Makefile 2003-12-22 13:44:24.798012752 -0500
++++ libedit-20031222/Makefile 2003-12-22 14:55:15.133863488 -0500
+@@ -5,6 +5,7 @@
+
+ WARNS= 3
+ LIB= edit
++LIBS=-lncurses
+
+ OSRCS= chared.c common.c el.c emacs.c fcns.c help.c hist.c key.c map.c \
+ parse.c prompt.c read.c refresh.c search.c sig.c term.c tty.c vi.c
+@@ -22,9 +23,10 @@
+ editline.3 tok_line.3 editline.3 tok_str.3
+
+ # For speed and debugging
+-#SRCS= ${OSRCS} tokenizer.c history.c readline.c
++SRCS= ${OSRCS} tokenizer.c history.c readline.c vis.c unvis.c fgetln.c strlcat.c strlcpy.c
+ # For protection
+-SRCS= editline.c tokenizer.c history.c readline.c
++#SRCS= editline.c tokenizer.c history.c readline.c
++OOBJS= $(patsubst %.c,%.o,$(SRCS))
+
+ LIBEDITDIR?=${.CURDIR}
+
+@@ -38,6 +40,7 @@
+ CPPFLAGS+=-I. -I${.CURDIR}
+ CPPFLAGS+=#-DDEBUG_TTY -DDEBUG_KEY -DDEBUG_READ -DDEBUG -DDEBUG_REFRESH
+ CPPFLAGS+=#-DDEBUG_PASTE -DDEBUG_EDIT
++CFLAGS+=-I. -include ../glibc-bsd-glue/bsdcompat.h -I../glibc-compat -I../glibc-bsd-glue
+
+ AHDR=vi.h emacs.h common.h
+ ASRC=${LIBEDITDIR}/vi.c ${LIBEDITDIR}/emacs.c ${LIBEDITDIR}/common.c
+@@ -46,46 +49,56 @@
+ CLEANFILES+= ${AHDR} fcns.h help.h fcns.c help.c
+
+ SUBDIR= readline
++HOST_SH=sh
++LIBEDITDIR=.
++all: .depend libedit.a libedit.so
+
+ vi.h: vi.c makelist
+ ${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/vi.c \
+- > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ > $@.tmp && \
++ mv $@.tmp $@
+
+ emacs.h: emacs.c makelist
+ ${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/emacs.c \
+- > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ > $@.tmp && \
++ mv $@.tmp $@
+
+ common.h: common.c makelist
+ ${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/common.c \
+- > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ > $@.tmp && \
++ mv $@.tmp $@
+
+ fcns.h: ${AHDR} makelist
+- ${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ ${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > $@.tmp && \
++ mv $@.tmp $@
+
+ fcns.c: ${AHDR} fcns.h help.h makelist
+- ${HOST_SH} ${LIBEDITDIR}/makelist -fc ${AHDR} > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ ${HOST_SH} ${LIBEDITDIR}/makelist -fc ${AHDR} > $@.tmp && \
++ mv $@.tmp $@
+
+ help.c: ${ASRC} makelist
+- ${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ ${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > $@.tmp && \
++ mv $@.tmp $@
+
+ help.h: ${ASRC} makelist
+- ${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ ${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > $@.tmp && \
++ mv $@.tmp $@
+
+ editline.c: ${OSRCS}
+- ${HOST_SH} ${LIBEDITDIR}/makelist -e ${.ALLSRC:T} > ${.TARGET}.tmp && \
+- mv ${.TARGET}.tmp ${.TARGET}
++ ${HOST_SH} ${LIBEDITDIR}/makelist -e ${.ALLSRC:T} > $@.tmp && \
++ mv $@.tmp $@
+
+ test.o: ${LIBEDITDIR}/TEST/test.c
+
+ test: libedit.a test.o
+- ${CC} ${LDFLAGS} ${.ALLSRC} -o ${.TARGET} libedit.a ${LDADD} -ltermcap
++ ${CC} ${LDFLAGS} ${.ALLSRC} -o $@ libedit.a ${LDADD} -ltermcap
+
+-.include <bsd.lib.mk>
+-.include <bsd.subdir.mk>
++.depend: vi.h emacs.h common.h fcns.h help.h help.c
++ -mkdir .a .so
++.c.o:
++ ${CC} ${CFLAGS} -c $< -o .a/$*
++ ${CC} ${CFLAGS} -fPIC -c $< -o .so/$*
++libedit.a: ${OOBJS}
++ ar -r $@ .a/*
++libedit.so: ${OOBJS}
++ ${CC} --shared -o $@ .so/* ${LIBS}
+diff -ur netbsd-cvs/el.c libedit-20031222/el.c
+--- netbsd-cvs/el.c 2003-12-22 13:44:25.474909848 -0500
++++ libedit-20031222/el.c 2003-12-22 15:00:15.545194024 -0500
+@@ -439,8 +439,10 @@
+ static const char elpath[] = "/.editrc";
+ char path[MAXPATHLEN];
+
++#if 0
+ if (issetugid())
+ return (-1);
++#endif
+ if ((ptr = getenv("HOME")) == NULL)
+ return (-1);
+ if (strlcpy(path, ptr, sizeof(path)) >= sizeof(path))
diff --git a/recipes/libedit/files/libedit-add-soname.diff b/recipes/libedit/files/libedit-add-soname.diff
new file mode 100644
index 0000000000..0746ae49ce
--- /dev/null
+++ b/recipes/libedit/files/libedit-add-soname.diff
@@ -0,0 +1,8 @@
+--- Makefile.orig 2005-04-20 18:12:45.000000000 +0200
++++ Makefile 2005-04-20 18:14:37.000000000 +0200
+@@ -101,4 +101,4 @@
+ libedit.a: ${OOBJS}
+ ar -r $@ .a/*
+ libedit.so: ${OOBJS}
+- ${CC} --shared -o $@ .so/* ${LIBS}
++ ${CC} --shared -Wl,-soname=libedit.so.0 -o $@ .so/* ${LIBS}
diff --git a/recipes/libedit/libedit_20050118.bb b/recipes/libedit/libedit_20050118.bb
new file mode 100644
index 0000000000..eee231a22a
--- /dev/null
+++ b/recipes/libedit/libedit_20050118.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "BSD replacement for libreadline"
+HOMEPAGE = "http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libedit/"
+SECTION = "libs"
+LICENSE="BSD"
+DEPENDS = "ncurses"
+PR = "r1"
+
+SRC_URI = "ftp://ftp.linux.ee/pub/gentoo/distfiles/distfiles/libedit-${PV}.tar.bz2 \
+ file://20031222-debian-to-gentoo.patch;patch=1;pnum=1 \
+ file://libedit-add-soname.diff;patch=1;pnum=0"
+
+S = "${WORKDIR}/netbsd-cvs"
+
+CFLAGS += "-I. -include ../glibc-bsd-glue/bsdcompat.h -I../glibc-compat -I../glibc-bsd-glue"
+
+do_configure() {
+ mv ${WORKDIR}/glibc-*/*.c .
+ oe_runmake .depend
+}
+
+do_compile() {
+ oe_runmake LIBS="-lncurses ${LDFLAGS}"
+}
+
+do_stage() {
+ oe_libinstall -a -so libedit ${STAGING_LIBDIR}
+ install -d ${STAGING_INCDIR}/editline/
+ install readline/readline.h ${STAGING_INCDIR}/editline/
+ install histedit.h ${STAGING_INCDIR}/editline/
+}
+
+do_install() {
+ install -d ${D}${libdir} ${D}${includedir}/editline ${D}${mandir}
+ oe_libinstall -a -so libedit ${D}${libdir}
+ install readline/readline.h ${D}${includedir}/editline/
+ install histedit.h ${D}${includedir}/editline/
+ install *.[35] ${D}${mandir}
+}
+
+FILES_${PN} = "${libdir}/libedit.so"