aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.7/libgomp/configure.ac
diff options
context:
space:
mode:
authorGeunsik Lim <leemgs@gmail.com>2012-12-25 15:02:18 +0900
committerGeunsik Lim <leemgs@gmail.com>2012-12-25 15:02:18 +0900
commit51df2e98d22e2c6f5d2a16860bc8fc3644179c1d (patch)
tree2e659524cc999dd795ba838ff86f4eb8cc01fcfb /gcc-4.7/libgomp/configure.ac
parent40c7254330088e605a544fe4ab0c25beb63fce20 (diff)
downloadtoolchain_gcc-51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.tar.gz
toolchain_gcc-51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.tar.bz2
toolchain_gcc-51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.zip
Support OpenMP+Bionic on ICS/GCC-4.7.2 for task parallelism
The patch supports OpenMP library to parallelize the existing C/C++ code (e.g: for task parallelism) rapidly/easily without any modification of android platform on multicore embedded devices. The original patch is made by Keith Obenschain (using GCC 4.4.3). . Archive - https://android-review.googlesource.com/#/c/34491/ I just moved GCC version from 4.4.3 to 4.7.2 for ktoolchain version 2.5. The patch is good to me when I evaluate a lot of C/C++ source code with OpenMP's #parama. we move the version of OpenMP from version 2.5 to version 3.1. Please, refer to the "kandroid toolchain" menu in www.kandroid.org to compile source code including bionic and openmp library on real Android devices. http://kandroid.org/board/board.php?board=toolchain&command=body&no=16 I tested Openmp library with the latest GCC 4.7.2 on Android/ARM devices as following. Please refer to the below example. geunsik@rhel6$> ./arm-linux-androideabi-gcc openmptest.c -L /usr/local/ktoolchain-cortexa9-ver2.5-20120515-bionic/arm-linux-androideabi/lib -lgomp -o openmptest [ENTER] geunsik@rhel6$> geunsik@rhel6$> geunsik@rhel6$> file ./openmptest ./openmptest: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped Change-Id: I20cb3c1ac5c000445c043310158179723bd69fe2 Signed-off-by: Geunsik Lim <leemgs@gmail.com> Acked-by: Geunsik Lim <geunsik.lim@gmail.com>
Diffstat (limited to 'gcc-4.7/libgomp/configure.ac')
-rw-r--r--gcc-4.7/libgomp/configure.ac9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc-4.7/libgomp/configure.ac b/gcc-4.7/libgomp/configure.ac
index d87ed2932..292db2a13 100644
--- a/gcc-4.7/libgomp/configure.ac
+++ b/gcc-4.7/libgomp/configure.ac
@@ -184,6 +184,13 @@ AC_LINK_IFELSE(
void *g(void *d) { return NULL; }],
[pthread_t t; pthread_create(&t,NULL,g,NULL);])],
[XPCFLAGS=" -Wc,-pthread"],
+ [CFLAGS="$save_CFLAGS" LIBS="$LIBS"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [#include <pthread.h>
+ void *g(void *d) { return NULL; }],
+ [pthread_t t; pthread_create(&t,NULL,g,NULL);])],
+ [],
[CFLAGS="$save_CFLAGS" LIBS="-lpthread $LIBS"
AC_LINK_IFELSE(
[AC_LANG_PROGRAM(
@@ -191,7 +198,7 @@ AC_LINK_IFELSE(
void *g(void *d) { return NULL; }],
[pthread_t t; pthread_create(&t,NULL,g,NULL);])],
[],
- [AC_MSG_ERROR([Pthreads are required to build libgomp])])])
+ [AC_MSG_ERROR([Pthreads are required to build libgomp])])])])
# Check for functions needed.
AC_CHECK_FUNCS(getloadavg clock_gettime strtoull)