summaryrefslogtreecommitdiff
path: root/package/editors
diff options
context:
space:
mode:
Diffstat (limited to 'package/editors')
-rw-r--r--package/editors/Config.in13
-rw-r--r--package/editors/ed/Config.in9
-rw-r--r--package/editors/ed/ed.mk59
-rw-r--r--package/editors/nano/Config.in9
-rw-r--r--package/editors/nano/nano.mk59
-rw-r--r--package/editors/uemacs/Config.in8
-rw-r--r--package/editors/uemacs/uemacs-4.0.15-lt.01.patch33
-rw-r--r--package/editors/uemacs/uemacs-4.0.15-lt.02.patch16
-rw-r--r--package/editors/uemacs/uemacs.mk48
9 files changed, 251 insertions, 3 deletions
diff --git a/package/editors/Config.in b/package/editors/Config.in
index b979df85a..b4e7e4023 100644
--- a/package/editors/Config.in
+++ b/package/editors/Config.in
@@ -1,5 +1,12 @@
-menu "Editors"
+menuconfig BR2_TEXTEDIT_SUPPORT
+ bool "Text editors"
+ default y
+ help
+ Support for text editors
+if BR2_TEXTEDIT_SUPPORT
+source "package/editors/ed/Config.in"
+source "package/editors/nano/Config.in"
+source "package/editors/uemacs/Config.in"
source "package/editors/vim/Config.in"
-
-endmenu
+endif
diff --git a/package/editors/ed/Config.in b/package/editors/ed/Config.in
new file mode 100644
index 000000000..d14343fdf
--- /dev/null
+++ b/package/editors/ed/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_ED
+ bool "ed"
+ default n
+ help
+ A line-oriented text editor. Used to create, display, modify,
+ and otherwise manipulate text files. Often used in scripts
+ rather than invoked directly.
+
+ http://www.gnu.org/software/ed/
diff --git a/package/editors/ed/ed.mk b/package/editors/ed/ed.mk
new file mode 100644
index 000000000..00ce8567e
--- /dev/null
+++ b/package/editors/ed/ed.mk
@@ -0,0 +1,59 @@
+#############################################################
+#
+# ed
+#
+#############################################################
+ED_VERSION:=0.8
+ED_SOURCE:=ed-$(ED_VERSION).tar.bz2
+ED_SITE:=$(BR2_GNU_MIRROR)/ed/
+ED_CAT:=$(BZCAT)
+ED_DIR:=$(BUILD_DIR)/ed-$(ED_VERSION)
+ED_BINARY:=ed
+ED_TARGET_BINARY:=bin/ed
+
+$(DL_DIR)/$(ED_SOURCE):
+ $(WGET) -P $(DL_DIR) $(ED_SITE)/$(ED_SOURCE)
+
+$(ED_DIR)/.unpacked: $(DL_DIR)/$(ED_SOURCE)
+ $(ED_CAT) $(DL_DIR)/$(ED_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(ED_DIR) package/ed/ ed-\*.patch
+ touch $@
+
+$(ED_DIR)/.configured: $(ED_DIR)/.unpacked
+ (cd $(ED_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) \
+ $(TARGET_CONFIGURE_ARGS) \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ )
+ touch $@
+
+$(ED_DIR)/$(ED_BINARY): $(ED_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC) -C $(ED_DIR)
+
+$(TARGET_DIR)/$(ED_TARGET_BINARY): $(ED_DIR)/$(ED_BINARY)
+ $(INSTALL) -D $(ED_DIR)/$(ED_BINARY) $(TARGET_DIR)/$(ED_TARGET_BINARY)
+
+ed: uclibc $(TARGET_DIR)/$(ED_TARGET_BINARY)
+
+ed-source: $(DL_DIR)/$(ED_SOURCE)
+
+ed-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(ED_DIR) uninstall
+ -$(MAKE) -C $(ED_DIR) clean
+
+ed-dirclean:
+ rm -rf $(ED_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_ED)),y)
+TARGETS+=ed
+endif
diff --git a/package/editors/nano/Config.in b/package/editors/nano/Config.in
new file mode 100644
index 000000000..272c061ee
--- /dev/null
+++ b/package/editors/nano/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_NANO
+ bool "nano"
+ default n
+ select BR2_PACKAGE_NCURSES
+ help
+ A nice ncurses-based editor. Started out as a clone of pico.
+ Great editor for new users.
+
+ http://www.nano-editor.org/
diff --git a/package/editors/nano/nano.mk b/package/editors/nano/nano.mk
new file mode 100644
index 000000000..c50f14064
--- /dev/null
+++ b/package/editors/nano/nano.mk
@@ -0,0 +1,59 @@
+#############################################################
+#
+# nano
+#
+#############################################################
+NANO_VERSION:=1.3.12
+NANO_SOURCE:=nano-$(NANO_VERSION).tar.gz
+NANO_SITE:=http://www.nano-editor.org/dist/v1.3/
+NANO_DIR:=$(BUILD_DIR)/nano-$(NANO_VERSION)
+NANO_CAT:=$(ZCAT)
+NANO_BINARY:=src/nano
+NANO_TARGET_BINARY:=bin/nano
+
+$(DL_DIR)/$(NANO_SOURCE):
+ $(WGET) -P $(DL_DIR) $(NANO_SITE)/$(NANO_SOURCE)
+
+nano-source: $(DL_DIR)/$(NANO_SOURCE)
+
+$(NANO_DIR)/.unpacked: $(DL_DIR)/$(NANO_SOURCE)
+ $(NANO_CAT) $(DL_DIR)/$(NANO_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ $(CONFIG_UPDATE) $(NANO_DIR)
+ touch $@
+
+$(NANO_DIR)/.configured: $(NANO_DIR)/.unpacked
+ (cd $(NANO_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) \
+ $(TARGET_CONFIGURE_ARGS) \
+ ac_cv_header_regex_h=no \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/ \
+ --enable-tiny \
+ )
+ touch $@
+
+$(NANO_DIR)/$(NANO_BINARY): $(NANO_DIR)/.configured
+ $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(NANO_DIR)
+
+$(TARGET_DIR)/$(NANO_TARGET_BINARY): $(NANO_DIR)/$(NANO_BINARY)
+ install -D $(NANO_DIR)/$(NANO_BINARY) $(TARGET_DIR)/$(NANO_TARGET_BINARY)
+
+nano: uclibc ncurses $(TARGET_DIR)/$(NANO_TARGET_BINARY)
+
+nano-clean:
+ rm -f $(TARGET_DIR)/$(NANO_TARGET_BINARY)
+ -$(MAKE) -C $(NANO_DIR) clean
+
+nano-dirclean:
+ rm -rf $(NANO_DIR)
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_NANO)),y)
+TARGETS+=nano
+endif
diff --git a/package/editors/uemacs/Config.in b/package/editors/uemacs/Config.in
new file mode 100644
index 000000000..6c78bd8ce
--- /dev/null
+++ b/package/editors/uemacs/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_UEMACS
+ bool "uemacs"
+ default n
+ select BR2_PACKAGE_NCURSES
+ help
+ A small emacs.
+
+ ftp://ftp.kernel.org/pub/software/editors/uemacs/
diff --git a/package/editors/uemacs/uemacs-4.0.15-lt.01.patch b/package/editors/uemacs/uemacs-4.0.15-lt.01.patch
new file mode 100644
index 000000000..855dd3510
--- /dev/null
+++ b/package/editors/uemacs/uemacs-4.0.15-lt.01.patch
@@ -0,0 +1,33 @@
+diff -rup em-4.0.15-lt.oorig/display.c em-4.0.15-lt/display.c
+--- em-4.0.15-lt.oorig/display.c 1994-05-21 12:40:56.000000000 +0200
++++ em-4.0.15-lt/display.c 2005-11-16 16:54:22.000000000 +0100
+@@ -9,6 +9,7 @@
+ */
+
+ #include <stdio.h>
++#include <errno.h>
+ #include "estruct.h"
+ #include "edef.h"
+
+diff -rup em-4.0.15-lt.oorig/main.c em-4.0.15-lt/main.c
+--- em-4.0.15-lt.oorig/main.c 1994-05-21 12:41:03.000000000 +0200
++++ em-4.0.15-lt/main.c 2005-11-16 16:54:01.000000000 +0100
+@@ -123,7 +123,7 @@ char *argv[]; /* argument strings */
+ #endif
+
+ #if UNIX
+- static void emergencyexit();
++ void emergencyexit();
+ #ifdef SIGWINCH
+ extern void sizesignal();
+ #endif
+@@ -599,7 +599,7 @@ quickexit(f, n)
+ return(TRUE);
+ }
+
+-static void emergencyexit(signr)
++void emergencyexit(signr)
+ int signr;
+ {
+ quickexit(FALSE, 0);
+
diff --git a/package/editors/uemacs/uemacs-4.0.15-lt.02.patch b/package/editors/uemacs/uemacs-4.0.15-lt.02.patch
new file mode 100644
index 000000000..946b3d5d6
--- /dev/null
+++ b/package/editors/uemacs/uemacs-4.0.15-lt.02.patch
@@ -0,0 +1,16 @@
+--- em-4.0.15-lt.oorig/lock.c 1999-05-16 09:04:17.000000000 +0200
++++ em-4.0.15-lt/lock.c 2006-03-10 15:22:16.000000000 +0100
+@@ -152,10 +152,8 @@
+
+ strcpy(obuf, errstr);
+ strcat(obuf, " - ");
+- if (errno < sys_nerr)
+- strcat(obuf, sys_errlist[errno]);
+- else
+- strcat(obuf, "(can not get system error message)");
++ strcat(obuf, strerror(errno));
++
+ mlwrite(obuf);
+ }
+ #endif
+
diff --git a/package/editors/uemacs/uemacs.mk b/package/editors/uemacs/uemacs.mk
new file mode 100644
index 000000000..5abe943ee
--- /dev/null
+++ b/package/editors/uemacs/uemacs.mk
@@ -0,0 +1,48 @@
+#############################################################
+#
+# uemacs
+#
+#############################################################
+UEMACS_VERSION:=4.0.15-lt
+UEMACS_SOURCE:=em-$(UEMACS_VERSION).tar.bz2
+UEMACS_CAT:=$(BZCAT)
+UEMACS_SITE:=ftp://ftp.kernel.org/pub/software/editors/uemacs/
+UEMACS_DIR:=$(BUILD_DIR)/em-$(UEMACS_VERSION)
+UEMACS_BINARY:=em
+UEMACS_TARGET_BINARY:=usr/bin/emacs
+
+$(DL_DIR)/$(UEMACS_SOURCE):
+ $(WGET) -P $(DL_DIR) $(UEMACS_SITE)/$(UEMACS_SOURCE)
+
+uemacs-source: $(DL_DIR)/$(UEMACS_SOURCE)
+
+$(UEMACS_DIR)/.unpacked: $(DL_DIR)/$(UEMACS_SOURCE)
+ $(UEMACS_CAT) $(DL_DIR)/$(UEMACS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(UEMACS_DIR) package/uemacs/ uemacs\*.patch
+ touch $(UEMACS_DIR)/.unpacked
+
+$(UEMACS_DIR)/$(UEMACS_BINARY): $(UEMACS_DIR)/.unpacked
+ $(MAKE) -C $(UEMACS_DIR) \
+ CC="$(TARGET_CC)" DEFINES="-DAUTOCONF -DPOSIX -DUSG" CFLAGS+="$(TARGET_CFLAGS) " LIBS=-lncurses
+ $(STRIPCMD) $(UEMACS_DIR)/$(UEMACS_BINARY)
+
+$(TARGET_DIR)/$(UEMACS_TARGET_BINARY): $(UEMACS_DIR)/$(UEMACS_BINARY)
+ $(INSTALL) -m 0755 -D $(UEMACS_DIR)/$(UEMACS_BINARY) $(TARGET_DIR)/$(UEMACS_TARGET_BINARY)
+
+uemacs: uclibc ncurses $(TARGET_DIR)/$(UEMACS_TARGET_BINARY)
+
+uemacs-clean:
+ rm -f $(TARGET_DIR)/$(UEMACS_TARGET_BINARY)
+ -$(MAKE) -C $(UEMACS_DIR) clean
+
+uemacs-dirclean:
+ rm -rf $(UEMACS_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_UEMACS)),y)
+TARGETS+=uemacs
+endif