scott writes in http://bugs.uclibc.org/view.php?id=41
authorEric Andersen <andersen@codepoet.org>
Fri, 25 Feb 2005 02:36:58 +0000 (02:36 -0000)
committerEric Andersen <andersen@codepoet.org>
Fri, 25 Feb 2005 02:36:58 +0000 (02:36 -0000)
this patch adds the package 'readline' which is the GNU readline library used
to get/save history with text input applications.

package/Config.in
package/readline/Config.in [new file with mode: 0644]
package/readline/Makefile.in [new file with mode: 0644]
package/readline/readline.mk [new file with mode: 0644]
package/readline/readline5.patch [new file with mode: 0644]

index 2163ae54d9d36ac7bf27a3b17dc96e5905199879..98006453c048d51d25fc44a2032ced05f597c377 100644 (file)
@@ -82,6 +82,7 @@ source "package/pppd/Config.in"
 source "package/procps/Config.in"
 source "package/python/Config.in"
 source "package/raidtools/Config.in"
+source "package/readline/Config.in"
 source "package/rsync/Config.in"
 source "package/rxvt/Config.in"
 source "package/sfdisk/Config.in"
diff --git a/package/readline/Config.in b/package/readline/Config.in
new file mode 100644 (file)
index 0000000..c27c6be
--- /dev/null
@@ -0,0 +1,7 @@
+#
+config BR2_READLINE
+       bool "readline"
+       default y
+       help
+           Enable GNU readline support?
+
diff --git a/package/readline/Makefile.in b/package/readline/Makefile.in
new file mode 100644 (file)
index 0000000..63b907d
--- /dev/null
@@ -0,0 +1,6 @@
+ifeq ($(strip $(BR2_READLINE)),y)
+TARGETS+=readline
+endif
+ifeq ($(strip $(BR2_PACKAGE_READLINE_TARGET)),y)
+TARGETS+=readline_target
+endif
diff --git a/package/readline/readline.mk b/package/readline/readline.mk
new file mode 100644 (file)
index 0000000..df38572
--- /dev/null
@@ -0,0 +1,82 @@
+#############################################################
+#
+# build GNU readline 
+#
+#############################################################
+READLINE_VER:=5.0
+READLINE_SITE:=ftp://ftp.cwru.edu/pub/bash
+READLINE_SOURCE:=readline-$(READLINE_VER).tar.gz
+#READLINE_DIR1:=$(TOOL_BUILD_DIR)/readline-$(READLINE_VER)
+READLINE_DIR1:=$(BUILD_DIR)/readline-$(READLINE_VER)
+#READLINE_DIR2:=$(BUILD_DIR)/readline-$(READLINE_VER)
+READLINE_CAT:=zcat
+
+##READLINE_BINARY:=readline
+##READLINE_TARGET_BINARY:=usr/bin/readline
+#READLINE_BINARY:=libreadline.a
+READLINE_BINARY:=libhistory.so.$(READLINE_VER)
+READLINE_TARGET_BINARY:=$(TARGET_DIR)/lib/$(READLINE_BINARY)
+#READLINE_TARGET_BINARY:=$(DEST_DIR)/usr/lib/libreadline.a
+
+
+
+$(DL_DIR)/$(READLINE_SOURCE):
+       $(WGET) -P $(DL_DIR) $(READLINE_SITE)/$(READLINE_SOURCE)
+
+$(READLINE_DIR1)/.unpacked: $(DL_DIR)/$(READLINE_SOURCE)
+       $(READLINE_CAT) $(DL_DIR)/$(READLINE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+       # patch to fix old autoconf
+       patch -d $(READLINE_DIR1) -p1 -u  < $(BASE_DIR)/package/readline/readline5.patch
+       touch $(READLINE_DIR1)/.unpacked
+
+
+#              --target=$(GNU_HOST_NAME) \
+# gnu-host-name: $(GNU_HOST_NAME)  powerpc-pc-linux-gnu   
+#              --host=powerpc-linux-uclibc \
+#              --program-prefix=$(TARGET_CROSS) \
+
+$(READLINE_DIR1)/.configured: $(READLINE_DIR1)/.unpacked
+       mkdir -p $(READLINE_DIR1)
+       # gnu-host-name: $(GNU_HOST_NAME) 
+       (cd $(READLINE_DIR1); rm -rf config.cache; \
+               $(READLINE_DIR1)/configure \
+               --build=powerpc-linux-uclibc \
+               --host=powerpc-linux-uclibc \
+               --prefix=$(STAGING_DIR) \
+       );
+       touch $(READLINE_DIR1)/.configured
+
+# old:         --prefix=$(TARGET_DIR) \
+# oldest:      --prefix=$(TARGET_DIR)/opt/vp \
+
+# -SAJ changed HOSTCC to TARGET_CC
+$(READLINE_DIR1)/$(READLINE_BINARY): $(READLINE_DIR1)/.configured
+       #$(MAKE) -e CC=$(TARGET_CC) -C $(READLINE_DIR1)
+       $(MAKE)  -C $(READLINE_DIR1)
+       #$(MAKE) -e CC=$(TARGET_CC) -C $(READLINE_DIR1) install
+       # $(MAKE) -e CC=$(TARGET_CC) -C $(READLINE_DIR1) DESTDIR=$(TARGET_DIR)/opt/vp install
+
+$(STAGING_DIR)/$(READLINE_TARGET_BINARY): $(READLINE_DIR1)/$(READLINE_BINARY)
+       #$(MAKE) -e CC=$(TARGET_CC) -C $(READLINE_DIR1)  install
+       $(MAKE) -C $(READLINE_DIR1)  install
+
+readline: $(STAGING_DIR)/$(READLINE_TARGET_BINARY)
+       # VP- do these post-install steps to clean up runtime env.
+       # VP- remove static libs from runtime environment
+       # also install  .so library files to target root
+       $(MAKE) -C $(READLINE_DIR1)  install-shared DESTDIR=$(TARGET_DIR)
+       ### rm $(TARGET_DIR)/lib/libreadline.a
+       ## #rm $(TARGET_DIR)/lib/libhistory.a
+       # VP- remove backup versions runtime environment
+       ## #rm $(TARGET_DIR)/lib/libreadline*old
+       ## #rm $(TARGET_DIR)/lib/libhistory*old
+
+readline-clean:
+       $(MAKE) -C $(READLINE_DIR1) uninstall
+       -$(MAKE) -C $(READLINE_DIR1) clean
+
+readline-dirclean:
+       rm -rf $(READLINE_DIR1)
+
+readline-source:  $(DL_DIR)/$(READLINE_SOURCE)   $(READLINE_DIR1)/.unpacked
+
diff --git a/package/readline/readline5.patch b/package/readline/readline5.patch
new file mode 100644 (file)
index 0000000..083ac78
--- /dev/null
@@ -0,0 +1,12 @@
+diff -urN orig-readline/support/config.sub readline-5.0/support/config.sub
+--- orig-readline/support/config.sub   2003-09-10 09:16:12.000000000 -0400
++++ readline-5.0/support/config.sub    2004-11-23 14:54:59.000000000 -0500
+@@ -1115,7 +1115,7 @@
+             | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+             | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+-            | -powermax* | -dnix*)
++            | -powermax* | -dnix* | -uclibc*)
+       # Remember, each alternative MUST END IN *, to match a version number.
+               ;;
+       -qnx*)