Move linenoise to its own static library.
This allows us to publish its license, as required
by the terms of its license.
diff --git a/liblinenoise/Android.mk b/liblinenoise/Android.mk
new file mode 100644
index 0000000..b32a5f1
--- /dev/null
+++ b/liblinenoise/Android.mk
@@ -0,0 +1,12 @@
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+# Static library
+# ========================================================
+
+include $(CLEAR_VARS)
+LOCAL_MODULE:= liblinenoise
+LOCAL_SRC_FILES := linenoise.c
+
+
+include $(BUILD_STATIC_LIBRARY)
diff --git a/liblinenoise/MODULE_LICENSE_BSD_LIKE b/liblinenoise/MODULE_LICENSE_BSD_LIKE
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/liblinenoise/MODULE_LICENSE_BSD_LIKE
diff --git a/liblinenoise/NOTICE b/liblinenoise/NOTICE
new file mode 100644
index 0000000..f61419e
--- /dev/null
+++ b/liblinenoise/NOTICE
@@ -0,0 +1,28 @@
+Copyright (c) 2010, Salvatore Sanfilippo <antirez at gmail dot com>
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+ * 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.
+
+ * Neither the name of Redis 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 COPYRIGHT HOLDERS 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 COPYRIGHT OWNER 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.
\ No newline at end of file
diff --git a/sh/linenoise.c b/liblinenoise/linenoise.c
similarity index 99%
rename from sh/linenoise.c
rename to liblinenoise/linenoise.c
index c21089b..ab57ae6 100644
--- a/sh/linenoise.c
+++ b/liblinenoise/linenoise.c
@@ -68,8 +68,6 @@
* Effect: moves cursor forward of n chars
*
*/
-
- #ifdef WITH_LINENOISE
#include <termios.h>
#include <unistd.h>
@@ -435,5 +433,3 @@
history_len = history_max_len;
return 1;
}
-
-#endif // WITH_LINENOISE
\ No newline at end of file
diff --git a/sh/linenoise.h b/liblinenoise/linenoise.h
similarity index 97%
rename from sh/linenoise.h
rename to liblinenoise/linenoise.h
index 3fbe6b4..57bf9d1 100644
--- a/sh/linenoise.h
+++ b/liblinenoise/linenoise.h
@@ -34,12 +34,8 @@
#ifndef __LINENOISE_H
#define __LINENOISE_H
-#ifdef WITH_LINENOISE
-
char *linenoise(const char *prompt);
int linenoiseHistoryAdd(const char *line);
int linenoiseHistorySetMaxLen(int len);
-#endif
-
#endif /* __LINENOISE_H */
diff --git a/sh/Android.mk b/sh/Android.mk
index f5218ed..958c3dc 100644
--- a/sh/Android.mk
+++ b/sh/Android.mk
@@ -13,7 +13,6 @@
expand.c \
input.c \
jobs.c \
- linenoise.c \
main.c \
memalloc.c \
miscbltin.c \
@@ -34,6 +33,8 @@
LOCAL_CFLAGS += -DSHELL -DWITH_LINENOISE
+LOCAL_STATIC_LIBRARIES := liblinenoise
+
make_ash_files: PRIVATE_SRC_FILES := $(SRC_FILES)
make_ash_files: PRIVATE_CFLAGS := $(LOCAL_CFLAGS)
make_ash_files:
diff --git a/sh/input.c b/sh/input.c
index 9377bd0..96e65d2 100644
--- a/sh/input.c
+++ b/sh/input.c
@@ -65,7 +65,7 @@
#include "myhistedit.h"
#ifdef WITH_LINENOISE
-#include "linenoise.h"
+#include "../liblinenoise/linenoise.h"
#endif
#define EOF_NLEFT -99 /* value of parsenleft when EOF pushed back */