summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Maw <jonathan.maw@codethink.co.uk>2013-05-15 15:29:10 +0000
committerJonathan Maw <jonathan.maw@codethink.co.uk>2013-05-20 15:21:14 +0000
commit1d6fc298099b4359e9ec50af1811419f5ab8d514 (patch)
tree8a08b874cd40e765f68abc35b048d79591f316a5
parent7d01cc699a583ad79086bcbff698fb9420d1b0e7 (diff)
downloadlibeditline-baserock/morph.tar.gz
Make libeditline build successfullybaserock/morph
np/vis.h had to be added because we do not have that header installed. makelist had to be given exec permissions. config.h had to be modified to make it use np/vis.h
-rw-r--r--config.h2
-rw-r--r--libeditline.morph27
-rwxr-xr-x[-rw-r--r--]makelist0
-rw-r--r--np/vis.h86
4 files changed, 114 insertions, 1 deletions
diff --git a/config.h b/config.h
index e2fc0ca..64fa7bc 100644
--- a/config.h
+++ b/config.h
@@ -6,7 +6,7 @@
/* #undef HAVE_CURSES_H */
/* #undef HAVE_NCURSES_H */
/* #undef HAVE_TERM_H */
-#define HAVE_VIS_H 1
+/* #define HAVE_VIS_H 1 */
#define HAVE_ISSETUGID 1
#define HAVE_STRLCAT 1
diff --git a/libeditline.morph b/libeditline.morph
new file mode 100644
index 0000000..eece48b
--- /dev/null
+++ b/libeditline.morph
@@ -0,0 +1,27 @@
+name: libeditline
+kind: chunk
+build-system: manual
+build-commands:
+ # Notes:
+ # 1. bmake does not look for system headers if DESTDIR is defined.
+ # 2. MAKEFLAGS contained commands for parallel builds, which broke
+ # when it tried to use common.h before it was created.
+ # 3. Making manpages calls `nroff` and we don't want manpages anyway.
+ # 4. The macro __RCSID is not defined in our cdefs.h, so is defined as
+ # something else.
+ - |
+ `# [1]` unset DESTDIR; \
+ `# [2]` unset MAKEFLAGS; \
+ bmake \
+ `# [3]` MK_MAN=no \
+ PREFIX="$PREFIX" \
+ `# [4]` CFLAGS="\"-D__RCSID(foo)=static const char rcsid[]=foo\""
+install-commands:
+ # Notes:
+ # 1. It tries to use "install -C" which is not available with busybox
+ # 2. It tries to install manpages that we didn't build.
+ - |
+ bmake PREFIX="$PREFIX" DESTDIR="$DESTDIR" \
+ `# [1]` INC_COPY=" " \
+ `# [2]` MK_MAN=no \
+ install
diff --git a/makelist b/makelist
index 3c0d8fc..3c0d8fc 100644..100755
--- a/makelist
+++ b/makelist
diff --git a/np/vis.h b/np/vis.h
new file mode 100644
index 0000000..cd624c7
--- /dev/null
+++ b/np/vis.h
@@ -0,0 +1,86 @@
+/*-
+ * Copyright (c) 1990, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)vis.h 8.1 (Berkeley) 6/2/93
+ * $FreeBSD: src/include/vis.h,v 1.11 2003/10/30 10:40:49 phk Exp $
+ */
+
+#ifndef _VIS_H_
+#define _VIS_H_
+
+#include <sys/types.h>
+
+/*
+ * to select alternate encoding format
+ */
+#define VIS_OCTAL 0x01 /* use octal \ddd format */
+#define VIS_CSTYLE 0x02 /* use \[nrft0..] where appropriate */
+
+/*
+ * to alter set of characters encoded (default is to encode all
+ * non-graphic except space, tab, and newline).
+ */
+#define VIS_SP 0x04 /* also encode space */
+#define VIS_TAB 0x08 /* also encode tab */
+#define VIS_NL 0x10 /* also encode newline */
+#define VIS_WHITE (VIS_SP | VIS_TAB | VIS_NL)
+#define VIS_SAFE 0x20 /* only encode "unsafe" characters */
+
+/*
+ * other
+ */
+#define VIS_NOSLASH 0x40 /* inhibit printing '\' */
+#define VIS_HTTPSTYLE 0x80 /* http-style escape % HEX HEX */
+#define VIS_GLOB 0x100 /* encode glob(3) magics */
+
+/*
+ * unvis return codes
+ */
+#define UNVIS_VALID 1 /* character valid */
+#define UNVIS_VALIDPUSH 2 /* character valid, push back passed char */
+#define UNVIS_NOCHAR 3 /* valid sequence, no character produced */
+#define UNVIS_SYNBAD -1 /* unrecognized escape sequence */
+#define UNVIS_ERROR -2 /* decoder in unknown state (unrecoverable) */
+
+/*
+ * unvis flags
+ */
+#define UNVIS_END 1 /* no more characters */
+
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+char *vis(char *, int, int, int);
+int strvis(char *, const char *, int);
+int strvisx(char *, const char *, size_t, int);
+int strunvis(char *, const char *);
+int strunvisx(char *, const char *, int);
+int unvis(char *, int, int *, int);
+__END_DECLS
+
+#endif /* !_VIS_H_ */