diff options
author | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2013-12-13 16:49:11 +0000 |
---|---|---|
committer | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2013-12-13 16:49:11 +0000 |
commit | ba1f54c0934bd0420fbe79d1f774404967d63abf (patch) | |
tree | efe89bfea29527b6e12757e6947843c533bd7bc8 /src/common/android/testing | |
parent | Expose the ability to supply additional user streams in the windows dump gene... (diff) | |
download | breakpad-ba1f54c0934bd0420fbe79d1f774404967d63abf.tar.xz |
Misc Android-related fixes.
- src/common/android/testing/mkdtemp.h:
Fixes a compilation error when using the (recent) NDK r9b,
see comments in the source file for details.
- android/test-driver, Makefile.am, Makefile.in:
Autotools 1.12 changed the way tests are run during "make check"
so add a new "custom test driver" to run tests on Android, and
modify Makefile.am / Makefile.in accordingly. Otherwise,
'make check' tried to run the tests on the host.
- android/test-shell.sh:
Allow several tests to run in parallel on the device, by
creating a custom test directory for each test process.
This allows running "make check -j8" reliably.
- src/common/linux/file_id_unittest.cc:
Disable the SelfStrip test on Android, since it assumes a 'strip'
executable is available on the target system where the test runs.
BUG=NONE
R=mark@chromium.org, ted.mielczarek@gmail.com
TEST=android/run-checks.sh --ndk-dir=/path/to/android-ndk-r9b
Review URL: https://breakpad.appspot.com/904003
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1259 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/common/android/testing')
-rw-r--r-- | src/common/android/testing/mkdtemp.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/common/android/testing/mkdtemp.h b/src/common/android/testing/mkdtemp.h index 85644c9f..b86e2cd7 100644 --- a/src/common/android/testing/mkdtemp.h +++ b/src/common/android/testing/mkdtemp.h @@ -27,9 +27,11 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// Android doesn't provide mkdtemp(). Keep this implementation in an -// C++ anonymous namespace to avoid conflicts on Chromium (which -// already provides an extern "C" mkdtemp function). +// mkdtemp() wasn't declared in <stdlib.h> until NDK r9b due to a simple +// packaging bug (the function has always been implemented in all versions +// of the C library). This header is provided to build Breakpad with earlier +// NDK revisions (e.g. the one used by Chromium). It may be removed in the +// future once all major projects upgrade to use a more recent NDK. // // The reason this is inlined here is to avoid linking a new object file // into each unit test program (i.e. keep build files simple). @@ -44,9 +46,14 @@ #include <string.h> #include <sys/stat.h> +// Using a macro renaming trick here is necessary when building against +// NDK r9b. Otherwise the compiler will complain that calls to mkdtemp() +// are ambiguous. +#define mkdtemp breakpad_mkdtemp + namespace { -char* mkdtemp(char* path) { +char* breakpad_mkdtemp(char* path) { if (path == NULL) { errno = EINVAL; return NULL; |