summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiyong Park <jiyong@google.com>2017-10-22 07:47:05 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-10-22 07:47:05 +0000
commita7650f2a2e71118f7d3238cd45aedbf3105fb8b9 (patch)
tree77db4417c952815524785cee95af184a62f86122
parent5a8bf259a2eb7fab63a1106d05e6dc8363f6e6b3 (diff)
parent404525b7f4175d586ee6eda74412d84c1e4dc257 (diff)
downloadmksh-a7650f2a2e71118f7d3238cd45aedbf3105fb8b9.tar.gz
Merge "switch to soong" am: 7569b29092 am: 0aef897d8c
am: 404525b7f4 Change-Id: Iacc7269b12d2561e8e198b903e4efe1f38d1b7e6
-rw-r--r--Android.bp142
-rw-r--r--Android.mk153
2 files changed, 142 insertions, 153 deletions
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..25d0882
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,142 @@
+// Copyright © 2010, 2013
+// Thorsten Glaser <t.glaser@tarent.de>
+// This file is provided under the same terms as mksh.
+
+cc_defaults {
+ name: "sh-defaults",
+
+ srcs: [
+ "src/lalloc.c",
+ "src/edit.c",
+ "src/eval.c",
+ "src/exec.c",
+ "src/expr.c",
+ "src/funcs.c",
+ "src/histrap.c",
+ "src/jobs.c",
+ "src/lex.c",
+ "src/main.c",
+ "src/misc.c",
+ "src/shf.c",
+ "src/syn.c",
+ "src/tree.c",
+ "src/var.c",
+ ],
+
+ local_include_dirs: ["src"],
+
+ cflags: [
+ // Compiler flags...
+ "-Wall",
+ "-Werror",
+ "-Wno-deprecated-declarations",
+ "-fno-asynchronous-unwind-tables",
+ "-fno-strict-aliasing",
+ "-fstack-protector",
+ "-fwrapv",
+
+ // ...various options we choose
+ "-DDEBUG_LEAKS",
+ "-DMKSH_ASSUME_UTF8",
+ "-DMKSH_DONT_EMIT_IDSTRING",
+ "-DKSH_VERSIONNAME_VENDOR_EXT=\" Android\"",
+
+ // ...and the defines from Build.sh.
+ "-DMKSH_BUILDSH",
+ "-D_GNU_SOURCE",
+ "-DSETUID_CAN_FAIL_WITH_EAGAIN",
+ "-DHAVE_STRING_POOLING=1",
+ "-DHAVE_ATTRIBUTE_BOUNDED=1",
+ "-DHAVE_ATTRIBUTE_FORMAT=1",
+ "-DHAVE_ATTRIBUTE_NORETURN=1",
+ "-DHAVE_ATTRIBUTE_PURE=1",
+ "-DHAVE_ATTRIBUTE_UNUSED=1",
+ "-DHAVE_ATTRIBUTE_USED=1",
+ "-DHAVE_SYS_TIME_H=1",
+ "-DHAVE_TIME_H=1",
+ "-DHAVE_BOTH_TIME_H=1",
+ "-DHAVE_SYS_BSDTYPES_H=0",
+ "-DHAVE_SYS_FILE_H=1",
+ "-DHAVE_SYS_MKDEV_H=0",
+ "-DHAVE_SYS_MMAN_H=1",
+ "-DHAVE_SYS_PARAM_H=1",
+ "-DHAVE_SYS_RESOURCE_H=1",
+ "-DHAVE_SYS_SELECT_H=1",
+ "-DHAVE_SYS_SYSMACROS_H=1",
+ "-DHAVE_BSTRING_H=0",
+ "-DHAVE_GRP_H=1",
+ "-DHAVE_IO_H=0",
+ "-DHAVE_LIBGEN_H=1",
+ "-DHAVE_LIBUTIL_H=0",
+ "-DHAVE_PATHS_H=1",
+ "-DHAVE_STDINT_H=1",
+ "-DHAVE_STRINGS_H=1",
+ "-DHAVE_TERMIOS_H=1",
+ "-DHAVE_ULIMIT_H=0",
+ "-DHAVE_VALUES_H=0",
+ "-DHAVE_CAN_INTTYPES=1",
+ "-DHAVE_CAN_UCBINTS=1",
+ "-DHAVE_CAN_INT8TYPE=1",
+ "-DHAVE_CAN_UCBINT8=1",
+ "-DHAVE_RLIM_T=1",
+ "-DHAVE_SIG_T=1",
+ "-DHAVE_SYS_ERRLIST=0",
+ "-DHAVE_SYS_SIGNAME=1",
+ "-DHAVE_SYS_SIGLIST=1",
+ "-DHAVE_FLOCK=1",
+ "-DHAVE_LOCK_FCNTL=1",
+ "-DHAVE_GETRUSAGE=1",
+ "-DHAVE_GETSID=1",
+ "-DHAVE_GETTIMEOFDAY=1",
+ "-DHAVE_KILLPG=1",
+ "-DHAVE_MEMMOVE=1",
+ "-DHAVE_MKNOD=0",
+ "-DHAVE_MMAP=1",
+ "-DHAVE_FTRUNCATE=1",
+ "-DHAVE_NICE=1",
+ "-DHAVE_REVOKE=0",
+ "-DHAVE_SETLOCALE_CTYPE=1",
+ "-DHAVE_LANGINFO_CODESET=1",
+ "-DHAVE_SELECT=1",
+ "-DHAVE_SETRESUGID=1",
+ "-DHAVE_SETGROUPS=1",
+ "-DHAVE_STRERROR=1",
+ "-DHAVE_STRSIGNAL=0",
+ "-DHAVE_STRLCPY=1",
+ "-DHAVE_FLOCK_DECL=1",
+ "-DHAVE_REVOKE_DECL=1",
+ "-DHAVE_SYS_ERRLIST_DECL=0",
+ "-DHAVE_SYS_SIGLIST_DECL=1",
+ "-DHAVE_PERSISTENT_HISTORY=0",
+ "-DMKSH_BUILD_R=562",
+
+ // Additional flags
+ "-DMKSH_DEFAULT_PROFILEDIR=\"/system/etc\"",
+ "-DMKSHRC_PATH=\"/system/etc/mkshrc\"",
+ "-DMKSH_DEFAULT_EXECSHELL=\"/system/bin/sh\"",
+ "-DMKSH_DEFAULT_TMPDIR=\"/data/local\"",
+ ],
+ target: {
+ vendor: {
+ cflags: [
+ // Additional flags for vendor variant
+ "-DMKSH_DEFAULT_PROFILEDIR=\"/vendor/etc\"",
+ "-DMKSHRC_PATH=\"/vendor/etc/mkshrc\"",
+ "-DMKSH_DEFAULT_EXECSHELL=\"/vendor/bin/sh\"",
+ "-DMKSH_DEFPATH_OVERRIDE=\"/vendor/bin:/vendor/xbin\"",
+ ],
+ },
+ },
+}
+
+cc_binary {
+ name: "sh",
+ defaults: ["sh-defaults"],
+}
+
+cc_binary {
+ name: "sh_vendor",
+ defaults: ["sh-defaults"],
+ stem: "sh",
+ vendor: true,
+}
diff --git a/Android.mk b/Android.mk
index bcb5b32..772b0a9 100644
--- a/Android.mk
+++ b/Android.mk
@@ -4,7 +4,6 @@
LOCAL_PATH := $(call my-dir)
-
# /system/etc/mkshrc
include $(CLEAR_VARS)
@@ -15,128 +14,6 @@ LOCAL_MODULE_PATH := $(TARGET_OUT)/etc
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
-
-# /system/bin/sh
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := sh
-LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk
-
-# mksh source files
-MKSH_SRC_FILES := \
- src/lalloc.c src/edit.c src/eval.c src/exec.c \
- src/expr.c src/funcs.c src/histrap.c src/jobs.c \
- src/lex.c src/main.c src/misc.c src/shf.c \
- src/syn.c src/tree.c src/var.c
-
-MKSH_INCLUDES := $(LOCAL_PATH)/src
-
-# Compiler flags...
-MKSH_WARNING_CFLAGS := \
- -Wall -Werror \
- -Wno-deprecated-declarations \
-
-MKSH_CFLAGS += \
- $(MKSH_WARNING_CFLAGS) \
- -fno-asynchronous-unwind-tables \
- -fno-strict-aliasing \
- -fstack-protector -fwrapv \
-
-# ...various options we choose...
-MKSH_CFLAGS += \
- -DDEBUG_LEAKS \
- -DMKSH_ASSUME_UTF8 \
- -DMKSH_DONT_EMIT_IDSTRING \
- -DKSH_VERSIONNAME_VENDOR_EXT=\"\ Android\" \
-
-# ...and the defines from Build.sh.
-MKSH_CFLAGS += \
- -DMKSH_BUILDSH \
- -D_GNU_SOURCE \
- -DSETUID_CAN_FAIL_WITH_EAGAIN \
- -DHAVE_STRING_POOLING=1 \
- -DHAVE_ATTRIBUTE_BOUNDED=1 \
- -DHAVE_ATTRIBUTE_FORMAT=1 \
- -DHAVE_ATTRIBUTE_NORETURN=1 \
- -DHAVE_ATTRIBUTE_PURE=1 \
- -DHAVE_ATTRIBUTE_UNUSED=1 \
- -DHAVE_ATTRIBUTE_USED=1 \
- -DHAVE_SYS_TIME_H=1 \
- -DHAVE_TIME_H=1 \
- -DHAVE_BOTH_TIME_H=1 \
- -DHAVE_SYS_BSDTYPES_H=0 \
- -DHAVE_SYS_FILE_H=1 \
- -DHAVE_SYS_MKDEV_H=0 \
- -DHAVE_SYS_MMAN_H=1 \
- -DHAVE_SYS_PARAM_H=1 \
- -DHAVE_SYS_RESOURCE_H=1 \
- -DHAVE_SYS_SELECT_H=1 \
- -DHAVE_SYS_SYSMACROS_H=1 \
- -DHAVE_BSTRING_H=0 \
- -DHAVE_GRP_H=1 \
- -DHAVE_IO_H=0 \
- -DHAVE_LIBGEN_H=1 \
- -DHAVE_LIBUTIL_H=0 \
- -DHAVE_PATHS_H=1 \
- -DHAVE_STDINT_H=1 \
- -DHAVE_STRINGS_H=1 \
- -DHAVE_TERMIOS_H=1 \
- -DHAVE_ULIMIT_H=0 \
- -DHAVE_VALUES_H=0 \
- -DHAVE_CAN_INTTYPES=1 \
- -DHAVE_CAN_UCBINTS=1 \
- -DHAVE_CAN_INT8TYPE=1 \
- -DHAVE_CAN_UCBINT8=1 \
- -DHAVE_RLIM_T=1 \
- -DHAVE_SIG_T=1 \
- -DHAVE_SYS_ERRLIST=0 \
- -DHAVE_SYS_SIGNAME=1 \
- -DHAVE_SYS_SIGLIST=1 \
- -DHAVE_FLOCK=1 \
- -DHAVE_LOCK_FCNTL=1 \
- -DHAVE_GETRUSAGE=1 \
- -DHAVE_GETSID=1 \
- -DHAVE_GETTIMEOFDAY=1 \
- -DHAVE_KILLPG=1 \
- -DHAVE_MEMMOVE=1 \
- -DHAVE_MKNOD=0 \
- -DHAVE_MMAP=1 \
- -DHAVE_FTRUNCATE=1 \
- -DHAVE_NICE=1 \
- -DHAVE_REVOKE=0 \
- -DHAVE_SETLOCALE_CTYPE=1 \
- -DHAVE_LANGINFO_CODESET=1 \
- -DHAVE_SELECT=1 \
- -DHAVE_SETRESUGID=1 \
- -DHAVE_SETGROUPS=1 \
- -DHAVE_STRERROR=1 \
- -DHAVE_STRSIGNAL=0 \
- -DHAVE_STRLCPY=1 \
- -DHAVE_FLOCK_DECL=1 \
- -DHAVE_REVOKE_DECL=1 \
- -DHAVE_SYS_ERRLIST_DECL=0 \
- -DHAVE_SYS_SIGLIST_DECL=1 \
- -DHAVE_PERSISTENT_HISTORY=0 \
- -DMKSH_BUILD_R=562 \
-
-LOCAL_SRC_FILES := $(MKSH_SRC_FILES)
-
-LOCAL_SYSTEM_SHARED_LIBRARIES := libc
-
-LOCAL_C_INCLUDES := $(MKSH_INCLUDES)
-
-# Additional flags first...
-LOCAL_CFLAGS += \
- -DMKSH_DEFAULT_PROFILEDIR=\"/system/etc\" \
- -DMKSHRC_PATH=\"/system/etc/mkshrc\" \
- -DMKSH_DEFAULT_EXECSHELL=\"/system/bin/sh\" \
- -DMKSH_DEFAULT_TMPDIR=\"/data/local\" \
-
-LOCAL_CFLAGS += $(MKSH_CFLAGS)
-
-include $(BUILD_EXECUTABLE)
-
# /vendor/etc/mkshrc
include $(CLEAR_VARS)
@@ -146,33 +23,3 @@ LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
-
-# /vendor/bin/sh
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := sh_vendor
-LOCAL_MODULE_STEM := sh
-LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk
-LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
-LOCAL_CFLAGS := $(MKSH_WARNING_CFLAGS)
-
-# mksh source files
-LOCAL_SRC_FILES := $(MKSH_SRC_FILES)
-
-LOCAL_C_INCLUDES := $(MKSH_INCLUDES)
-
-# Additional flags first...
-LOCAL_CFLAGS += \
- -DMKSH_DEFAULT_PROFILEDIR=\"/vendor/etc\" \
- -DMKSHRC_PATH=\"/vendor/etc/mkshrc\" \
- -DMKSH_DEFAULT_EXECSHELL=\"/vendor/bin/sh\" \
- -DMKSH_DEFPATH_OVERRIDE=\"/vendor/bin:/vendor/xbin\" \
-
-LOCAL_CFLAGS += $(MKSH_CFLAGS)
-
-include $(BUILD_EXECUTABLE)
-
-MKSH_SRC_FILES:=
-MKSH_CFLAGS:=
-MKSH_WARNING_CFLAGS:=
-MKSH_INCLUDES:=