JOE is an easy-to-use, full-screen, terminal-based text editor.
http://joe-editor.sf.net
[Peter: add uClibc patch, add to package/Config.in, optional ncurses support]
Signed-off-by: Alan Ott <alan@signal11.us>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
menu "Text editors and viewers"
source "package/ed/Config.in"
+source "package/joe/Config.in"
if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
source "package/less/Config.in"
endif
--- /dev/null
+config BR2_PACKAGE_JOE
+ bool "joe"
+ help
+ Joe's Own Editor
+
+ JOE is an easy-to-use, full featured terminal-based screen editor.
+ Its behavior is a blending of WordStar and GNU-EMACS (but it does
+ not use code from either program). It is a great editor for new
+ users or as an alternative to vi.
+
+ http://joe-editor.sf.net
+
+config BR2_PACKAGE_JOE_FULL
+ bool "full install of rc and syntax highlighting files"
+ depends on BR2_PACKAGE_JOE
+ default y
+ help
+ Install all rc and syntax highlighting files. Without this option
+ only the joe binary is installed, which contains a default
+ configuration.
--- /dev/null
+[PATCH] uClibc can be (and by default is) configured without bessel functions
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ umath.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+Index: joe-3.7/umath.c
+===================================================================
+--- joe-3.7.orig/umath.c
++++ joe-3.7/umath.c
+@@ -7,6 +7,12 @@
+ */
+ #include "types.h"
+
++/* uClibc can be configured without bessel functions */
++#include <features.h>
++#if defined (__UCLIBC__) && !defined(__DO_XSI_MATH__)
++#define NO_BESSEL
++#endif
++
+ unsigned char *merr;
+
+ int mode_hex;
+@@ -396,10 +402,12 @@
+ double m_fabs(double n) { return fabs(n); }
+ double m_erf(double n) { return erf(n); }
+ double m_erfc(double n) { return erfc(n); }
++#ifndef NO_BESSEL
+ double m_j0(double n) { return j0(n); }
+ double m_j1(double n) { return j1(n); }
+ double m_y0(double n) { return y0(n); }
+ double m_y1(double n) { return y1(n); }
++#endif
+
+ double calc(BW *bw, unsigned char *s)
+ {
+@@ -434,10 +442,12 @@
+ v = get(USTR "abs"); v->func = m_fabs;
+ v = get(USTR "erf"); v->func = m_erf;
+ v = get(USTR "erfc"); v->func = m_erfc;
++#ifndef NO_BESSEL
+ v = get(USTR "j0"); v->func = m_j0;
+ v = get(USTR "j1"); v->func = m_j1;
+ v = get(USTR "y0"); v->func = m_y0;
+ v = get(USTR "y1"); v->func = m_y1;
++#endif
+ }
+
+ v = get(USTR "top");
--- /dev/null
+################################################################################
+#
+# joe
+#
+################################################################################
+
+JOE_VERSION = 3.7
+JOE_SITE = http://downloads.sourceforge.net/project/joe-editor/JOE%20sources/joe-$(JOE_VERSION)
+JOE_LICENSE = GPLv1+
+JOE_LICENSE_FILES = COPYING
+
+ifeq ($(BR2_PACKAGE_NCURSES),y)
+JOE_DEPENDENCIES += ncurses
+JOE_CONF_OPT += --enable-curses
+else
+JOE_CONF_OPT += --disable-curses
+endif
+
+ifneq ($(BR2_PACKAGE_JOE_FULL),y)
+define JOE_INSTALL_TARGET_CMDS
+ $(INSTALL) -m 0755 -D $(@D)/joe $(TARGET_DIR)/usr/bin/joe
+endef
+endif
+
+$(eval $(autotools-package))