diff options
author | Henrik Nord <[email protected]> | 2014-03-21 16:39:02 +0100 |
---|---|---|
committer | Henrik Nord <[email protected]> | 2014-03-21 16:39:05 +0100 |
commit | a4030a89eb9a22d250dba2793f274f8731126ea8 (patch) | |
tree | 620592b3560f98be67f71f70fd5596cc110ecd70 /erts/emulator/sys/unix/sys.c | |
parent | c9da6c2f06efa410462299a20e10206843082ac8 (diff) | |
parent | f43a1dc55d42de3097f75ca65baead9a2ff05c78 (diff) | |
download | otp-a4030a89eb9a22d250dba2793f274f8731126ea8.tar.gz otp-a4030a89eb9a22d250dba2793f274f8731126ea8.tar.bz2 otp-a4030a89eb9a22d250dba2793f274f8731126ea8.zip |
Merge branch 'fogfish/embedded-arm-android'
* fogfish/embedded-arm-android:
Raspberry PI / Android a minimal cross-compile configuration
OTP-11805
Diffstat (limited to 'erts/emulator/sys/unix/sys.c')
-rw-r--r-- | erts/emulator/sys/unix/sys.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/erts/emulator/sys/unix/sys.c b/erts/emulator/sys/unix/sys.c index 865cb50a56..c3d7440409 100644 --- a/erts/emulator/sys/unix/sys.c +++ b/erts/emulator/sys/unix/sys.c @@ -149,6 +149,13 @@ extern void erl_crash_dump(char* file, int line, char* fmt, ...); #define DIR_SEPARATOR_CHAR '/' +#if defined(__ANDROID__) +#define SHELL "/system/bin/sh" +#else +#define SHELL "/bin/sh" +#endif /* __ANDROID__ */ + + #if defined(DEBUG) #define ERL_BUILD_TYPE_MARKER ".debug" #elif defined(PURIFY) @@ -1596,7 +1603,7 @@ static ErlDrvData spawn_start(ErlDrvPort port_num, char* name, SysDriverOpts* op } } } else { - execle("/bin/sh", "sh", "-c", cmd_line, (char *) NULL, new_environ); + execle(SHELL, "sh", "-c", cmd_line, (char *) NULL, new_environ); } child_error: _exit(1); @@ -1717,7 +1724,7 @@ static ErlDrvData spawn_start(ErlDrvPort port_num, char* name, SysDriverOpts* op fcntl(i, F_SETFD, 1); qnx_spawn_options.flags = _SPAWN_SETSID; - if ((pid = spawnl(P_NOWAIT, "/bin/sh", "/bin/sh", "-c", cmd_line, + if ((pid = spawnl(P_NOWAIT, SHELL, SHELL, "-c", cmd_line, (char *) 0)) < 0) { erts_free(ERTS_ALC_T_TMP, (void *) cmd_line); reset_qnx_spawn(); |