You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
178 lines
4.5 KiB
178 lines
4.5 KiB
// Copyright © 2010, 2013
|
|
// Thorsten Glaser <t.glaser@tarent.de>
|
|
// This file is provided under the same terms as mksh.
|
|
|
|
package {
|
|
default_applicable_licenses: ["external_mksh_license"],
|
|
}
|
|
|
|
license {
|
|
name: "external_mksh_license",
|
|
visibility: [":__subpackages__"],
|
|
license_kinds: [
|
|
"SPDX-license-identifier-BSD",
|
|
"SPDX-license-identifier-MIT",
|
|
"SPDX-license-identifier-Unicode-DFS",
|
|
"legacy_notice",
|
|
],
|
|
license_text: [
|
|
"NOTICE",
|
|
],
|
|
}
|
|
|
|
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",
|
|
"-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=592",
|
|
|
|
// Additional flags
|
|
"-DMKSH_DEFAULT_PROFILEDIR=\"/system/etc\"",
|
|
"-DMKSHRC_PATH=\"/system/etc/mkshrc\"",
|
|
"-DMKSH_DEFAULT_EXECSHELL=\"/system/bin/sh\"",
|
|
"-DMKSH_DEFAULT_TMPDIR=\"/data/local\"",
|
|
],
|
|
|
|
stl: "none",
|
|
system_shared_libs: ["libc"],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "sh",
|
|
defaults: ["sh-defaults"],
|
|
recovery_available: true,
|
|
vendor_ramdisk_available: true,
|
|
}
|
|
|
|
cc_binary {
|
|
name: "sh_vendor",
|
|
defaults: ["sh-defaults"],
|
|
stem: "sh",
|
|
vendor: true,
|
|
cflags: [
|
|
// Additional flags for vendor variant
|
|
"-UMKSH_DEFAULT_PROFILEDIR",
|
|
"-UMKSHRC_PATH",
|
|
"-UMKSH_DEFAULT_EXECSHELL",
|
|
"-DMKSH_DEFAULT_PROFILEDIR=\"/vendor/etc\"",
|
|
"-DMKSHRC_PATH=\"/vendor/etc/mkshrc\"",
|
|
"-DMKSH_DEFAULT_EXECSHELL=\"/vendor/bin/sh\"",
|
|
"-DMKSH_DEFPATH_OVERRIDE=\"/vendor/bin:/vendor/xbin\"",
|
|
],
|
|
}
|
|
|
|
// /system/etc/mkshrc
|
|
prebuilt_etc {
|
|
name: "mkshrc",
|
|
src: "mkshrc",
|
|
}
|
|
|
|
// /vendor/etc/mkshrc
|
|
prebuilt_etc {
|
|
name: "mkshrc_vendor",
|
|
src: "mkshrc_vendor",
|
|
filename: "mkshrc",
|
|
soc_specific: true,
|
|
}
|