1
0
mirror of https://github.com/golang/go synced 2024-11-24 04:30:14 -07:00
go/misc/cgo/testcshared/main3.c
Hyang-Ah Hana Kim 8566979972 misc/cgo/testcshared: add a c-shared test for android/arm.
- main3.c tests main.main is exported when compiled for GOOS=android.
- wait longer for main2.c (it's slow on android/arm)
- rearranged test.bash

Fixes #10070.

Change-Id: I6e5a98d1c5fae776afa54ecb5da633b59b269316
Reviewed-on: https://go-review.googlesource.com/9296
Reviewed-by: David Crawshaw <crawshaw@golang.org>
Run-TryBot: Hyang-Ah Hana Kim <hyangah@gmail.com>
2015-04-24 16:32:31 +00:00

30 lines
785 B
C

// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
#include <stdint.h>
#include <stdio.h>
#include <dlfcn.h>
// Tests "main.main" is exported on android/arm,
// which golang.org/x/mobile/app depends on.
int main(int argc, char** argv) {
void* handle = dlopen(argv[1], RTLD_LAZY | RTLD_GLOBAL);
if (!handle) {
fprintf(stderr, "ERROR: failed to open the shared library: %s\n",
dlerror());
return 2;
}
uintptr_t main_fn = (uintptr_t)dlsym(handle, "main.main");
if (!main_fn) {
fprintf(stderr, "ERROR: missing main.main: %s\n", dlerror());
return 2;
}
// TODO(hyangah): check that main.main can run.
printf("PASS\n");
return 0;
}