On 12-06-26 02:03 AM, Mathieu Desnoyers wrote: > * Alexandre Montplaisir ([email protected]) wrote: >> [...] >> diff --git a/tests/hello-mt/README b/tests/hello-mt/README >> new file mode 100644 >> index 0000000..0584dca >> --- /dev/null >> +++ b/tests/hello-mt/README >> @@ -0,0 +1,11 @@ >> +This is a multi-threaded version of the "hello" test program. It uses >> OpenMP for >> +parallelization, and as such requires at least GCC 4.2. > Hrm. This adds a dependency on gcc 4.2. The entire project will fail to > build because of this test on other compiler, older gcc, right ? We > should have a configure.ac check that tests openmp availability. So I > won't merge this for now.
Staying up late, aren't we? ;) Oh ok, I thought we said the other day that GCC 4.2 was old enough to not be worth testing for. In any case, here's a patch to check for OpenMP at configure time (goes on top of the previous one). Two caveats however: - Since the main part of the project doesn't use OpenMP, I don't think we want to turn the "-fopenmp" CFLAG on for the whole thing. So I just hard-coded "-fopenmp" for this test only. I don't know if any other compiler uses some other flag to turn on the OpenMP support, but we only support GCC anyway, don't we? - The autoconf macro requires Autoconf 2.62. Current Debian stable has 2.67, I don't know if it's a big problem. Good night, Alex > > Thanks, > > Mathieu > >
>From 496a74a33dc47b61c37b14e0fb0ad5bdeacaf03b Mon Sep 17 00:00:00 2001 From: Alexandre Montplaisir <[email protected]> Date: Tue, 26 Jun 2012 02:56:19 -0400 Subject: [UST PATCH] Only build the hello-mt test if OpenMP is available Since this test is the only part in the whole tree that uses OpenMP, we'll simply set the CFLAG manually for this test rather than using it project-wide. Signed-off-by: Alexandre Montplaisir <[email protected]> --- README | 2 +- configure.ac | 10 ++++++++++ tests/hello-mt/Makefile.am | 4 ++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/README b/README index 52aebd8..b9df1e6 100644 --- a/README +++ b/README @@ -30,7 +30,7 @@ This source tree is based on the autotools suite from GNU to simplify portability. Here are some things you should have on your system in order to compile the git repository tree : -- GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50) +- GNU autotools (automake >=1.10, autoconf >=2.62, autoheader >=2.62) (make sure your system wide "automake" points to a recent version!) - GNU Libtool >=2.2 (for more information, go to http://www.gnu.org/software/autoconf/) diff --git a/configure.ac b/configure.ac index 0a50ed0..1924d0b 100644 --- a/configure.ac +++ b/configure.ac @@ -271,6 +271,16 @@ AS_IF([test "x$with_sdt" = "xyes"],[ ]) ]) +#Check for OpenMP, if available we will build the test that uses it +AC_OPENMP() +AS_IF([ test "x$ac_cv_prog_c_openmp" != "xunsupported" && test "x$ac_cv_prog_c_openmp" != "x"],[ + openmp_available=yes +],[ + openmp_available=no +]) +AM_CONDITIONAL([BUILD_OPENMP_TEST], [test "x$openmp_available" = "xyes"]) + + #currently disabled. #tests/hello2/Makefile #tests/basic/Makefile diff --git a/tests/hello-mt/Makefile.am b/tests/hello-mt/Makefile.am index 4b7e16d..98ecc6f 100644 --- a/tests/hello-mt/Makefile.am +++ b/tests/hello-mt/Makefile.am @@ -1,3 +1,5 @@ +if BUILD_OPENMP_TEST + AM_CPPFLAGS = -I$(top_srcdir)/include -Wsystem-headers AM_CFLAGS = -fopenmp @@ -11,3 +13,5 @@ endif if LTTNG_UST_BUILD_WITH_LIBC_DL hello_LDADD += -lc endif + +endif -- 1.7.10.4
_______________________________________________ lttng-dev mailing list [email protected] http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
