Return-Path: Delivered-To: apmail-couchdb-commits-archive@www.apache.org Received: (qmail 87038 invoked from network); 2 Feb 2011 23:30:58 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 2 Feb 2011 23:30:58 -0000 Received: (qmail 69592 invoked by uid 500); 2 Feb 2011 23:30:58 -0000 Delivered-To: apmail-couchdb-commits-archive@couchdb.apache.org Received: (qmail 69535 invoked by uid 500); 2 Feb 2011 23:30:57 -0000 Mailing-List: contact commits-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list commits@couchdb.apache.org Received: (qmail 69528 invoked by uid 500); 2 Feb 2011 23:30:57 -0000 Delivered-To: apmail-incubator-couchdb-commits@incubator.apache.org Received: (qmail 69525 invoked by uid 99); 2 Feb 2011 23:30:57 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Feb 2011 23:30:57 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.131] (HELO eos.apache.org) (140.211.11.131) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Feb 2011 23:30:56 +0000 Received: from eosnew.apache.org (localhost [127.0.0.1]) by eos.apache.org (Postfix) with ESMTP id 33AA7673; Wed, 2 Feb 2011 23:30:29 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable From: Apache Wiki To: Apache Wiki Date: Wed, 02 Feb 2011 23:30:28 -0000 Message-ID: <20110202233028.63309.27998@eosnew.apache.org> Subject: =?utf-8?q?=5BCouchdb_Wiki=5D_Update_of_=22AndroidOtpPatch=22_by_MattAdams?= Dear Wiki user, You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for c= hange notification. The "AndroidOtpPatch" page has been changed by MattAdams. http://wiki.apache.org/couchdb/AndroidOtpPatch?action=3Ddiff&rev1=3D2&rev2= =3D3 -------------------------------------------------- For use with [[Installing_on_Android]] = {{{ - (to be updated) + diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in + index fb8d718..4ed25c9 100644 + --- a/erts/emulator/Makefile.in + +++ b/erts/emulator/Makefile.in + @@ -352,6 +352,7 @@ EMULATOR_EXECUTABLE =3D beam$(TF_MARKER).dll + else + ifeq ($(CC), agcc) + EMULATOR_EXECUTABLE =3D libbeam$(TF_MARKER).so + +EMULATOR_EXECUTABLE_REG =3D beam$(TF_MARKER) + else + EMULATOR_EXECUTABLE =3D beam$(TF_MARKER) + endif + @@ -374,7 +375,11 @@ ifeq ($(FLAVOR)-@ERTS_BUILD_SMP_EMU@,smp-no) + all: + @echo '*** Omitted build of emulator with smp support' + else + +ifeq ($(CC), agcc) + +all: generate erts_lib zlib pcre $(BINDIR)/$(EMULATOR_EXECUTABLE) $(BIND= IR)/$(EMULATOR_EXECUTABLE_REG) $(UNIX_ONLY_BUILDS) + +else + all: generate erts_lib zlib pcre $(BINDIR)/$(EMULATOR_EXECUTABLE) $(UNIX= _ONLY_BUILDS) + +endif + ifeq ($(OMIT_OMIT_FP),yes) + @echo '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *' + @echo '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *' + @@ -453,6 +458,7 @@ release_spec: all + $(INSTALL_DATA) $(RELEASE_INCLUDES) $(RELEASE_PATH)/usr/include + $(INSTALL_DATA) $(RELEASE_INCLUDES) $(RELSYSDIR)/include + $(INSTALL_PROGRAM) $(BINDIR)/$(EMULATOR_EXECUTABLE) $(RELSYSDIR)/bin + + $(INSTALL_PROGRAM) $(BINDIR)/$(EMULATOR_EXECUTABLE_REG) $(RELSYSDIR)/bin + ifeq ($(ERLANG_OSTYPE), unix) + $(INSTALL_PROGRAM) $(BINDIR)/$(CS_EXECUTABLE) $(RELSYSDIR)/bin + endif + @@ -1013,6 +1019,13 @@ ifeq ($(CC), agcc) + $(BINDIR)/$(EMULATOR_EXECUTABLE): $(INIT_OBJS) $(OBJS) $(DEPLIBS) + $(PURIFY) $(LD) -o $(BINDIR)/$(EMULATOR_EXECUTABLE) \ + $(HIPEBEAMLDFLAGS) $(LDFLAGS) $(DEXPORT) $(INIT_OBJS) $(OBJS) $(LIBS) -= shared + + + +$(OBJDIR)/beam.o: + + $(CC) $(CFLAGS) $(INCLUDES) -c beam/beam.c -o $(OBJDIR)/beam.o + + + +$(BINDIR)/$(EMULATOR_EXECUTABLE_REG): $(OBJDIR)/beam.o + + $(PURIFY) $(LD) -o $(BINDIR)/$(EMULATOR_EXECUTABLE_REG) \ + + $(HIPEBEAMLDFLAGS) $(LDFLAGS) $(DEXPORT) $(OBJDIR)/beam.o $(LIBS) -L$(B= INDIR) -lbeam + else + $(BINDIR)/$(EMULATOR_EXECUTABLE): $(INIT_OBJS) $(OBJS) $(DEPLIBS) + $(PURIFY) $(LD) -o $(BINDIR)/$(EMULATOR_EXECUTABLE) \ + diff --git a/erts/emulator/sys/unix/erl_child_setup.c b/erts/emulator/sys= /unix/erl_child_setup.c + index 7c6e4a2..c1a1549 100644 + --- a/erts/emulator/sys/unix/erl_child_setup.c + +++ b/erts/emulator/sys/unix/erl_child_setup.c + @@ -116,7 +116,11 @@ main(int argc, char *argv[]) + execv(argv[CS_ARGV_NO_OF_ARGS],&(argv[CS_ARGV_NO_OF_ARGS + 1])); + } + } else { + +#ifdef ANDROID_ARM + + execl("/system/bin/sh", "sh", "-c", argv[CS_ARGV_CMD_IX], (char *) NULL= ); + +#else + execl("/bin/sh", "sh", "-c", argv[CS_ARGV_CMD_IX], (char *) NULL); + +#endif + } + return 1; + } + diff --git a/erts/emulator/sys/unix/sys.c b/erts/emulator/sys/unix/sys.c + index 31ab5d0..9a260a2 100644 + --- a/erts/emulator/sys/unix/sys.c + +++ b/erts/emulator/sys/unix/sys.c + @@ -1539,7 +1539,11 @@ static ErlDrvData spawn_start(ErlDrvPort port_num,= char* name, SysDriverOpts* op + } + } + } else { + +#ifdef ANDROID_ARM + + execle("/system/bin/sh", "sh", "-c", cmd_line, (char *) NULL, new_envi= ron); + +#else + execle("/bin/sh", "sh", "-c", cmd_line, (char *) NULL, new_environ); + +#endif + } + child_error: + _exit(1); + @@ -1660,7 +1664,12 @@ static ErlDrvData spawn_start(ErlDrvPort port_num,= char* name, SysDriverOpts* op + fcntl(i, F_SETFD, 1); + = + qnx_spawn_options.flags =3D _SPAWN_SETSID; + +#ifdef ANDROID_ARM + + /* Are we really in QNX? Then we don't need this special case here.= .. */ + + if ((pid =3D spawnl(P_NOWAIT, "/system/bin/sh", "/system/bin/sh", "-= c", cmd_line, = + +#else + if ((pid =3D spawnl(P_NOWAIT, "/bin/sh", "/bin/sh", "-c", cmd_line, = + +#endif + (char *) 0)) < 0) { + erts_free(ERTS_ALC_T_TMP, (void *) cmd_line); + reset_qnx_spawn(); + diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in + index 0b39808..5d9658e 100644 + --- a/lib/crypto/c_src/Makefile.in + +++ b/lib/crypto/c_src/Makefile.in + @@ -108,7 +108,7 @@ $(OBJDIR)/%.o: %.c + = + $(LIBDIR)/crypto_drv.so: $(OBJS) + $(INSTALL_DIR) $(LIBDIR) = + - $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) $(CRYPTO_LINK_LIB) $(LIBS) -lbeam + + $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) $(CRYPTO_LINK_LIB) $(LIBS) -lbeam -= shared + = + $(LIBDIR)/crypto_drv.dll: $(OBJS) + $(INSTALL_DIR) $(LIBDIR) + diff --git a/otp_build b/otp_build + index ad9d38e..b875b38 100755 + --- a/otp_build + +++ b/otp_build + @@ -284,7 +284,7 @@ do_autoconf () + export WANT_AUTOCONF_VER + fi + exp_ac_vsn=3D$EXPECTED_AUTOCONF_VERSION + - ac_vsn_blob=3D`autoconf --version` + + ac_vsn_blob=3D`autoconf2.59 --version` + ac_vsn=3D`echo x$ac_vsn_blob | sed "s|[^0-9]*\([0-9][^ \t\n]*\).*|\1|"` + case "$ac_vsn" in + $exp_ac_vsn) + @@ -327,11 +327,11 @@ do_autoconf () + rm -f "$d"/autom4te.cache/* + } + echo "=3D=3D=3D running autoconf in $d" + - ( cd "$d" && autoconf ) || exit 1 + + ( cd "$d" && autoconf2.59 ) || exit 1 + chdr=3D`cat "$file" | sed -n "s|.*\(AC_CONFIG_HEADER\).*|\1|p"` + [ "$chdr" =3D "AC_CONFIG_HEADER" ] || continue + echo "=3D=3D=3D running autoheader in $d" + - ( cd "$d" && autoheader ) || exit 1 + + ( cd "$d" && autoheader2.59 ) || exit 1 + done + = + restore_vars OVERRIDE_TARGET TARGET }}} =20