This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, libgomp] libgomp.fortran/fortran.exp - add -fintrinsic-modules-path ${blddir}


On Thu, Jul 03, 2014 at 12:19:15PM +0200, Thomas Schwinge wrote:
> I found the following to work (but so far only did libgomp testing), but
> that is a little bit more intrusive, but may actually be the right thing
> to do.  (Possibly also in additional places where ${tool}_target_compile
> is used?  CCing testsuite maintainers.)  Comments?

What about this instead, pass it only for Fortran tests and nothing else?
Only very lightly tested so far.

2014-07-03  Jakub Jelinek  <jakub@redhat.com>

	* testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
	matches regex $lang_source_re, add $lang_include_flags to options.
	* testsuite/libgomp.c/c.exp: Unset lang_include_flags.
	* testsuite/libgomp.c++/c++.exp: Likewise.
	* testsuite/libgomp.fortran/fortran.exp: Likewise.  Set lang_source_re
	and lang_include_flags instead of adding -fintrinsic-modules-path= to
	ALWAYS_CFLAGS.
	* testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.

--- libgomp/testsuite/lib/libgomp.exp.jj	2013-11-12 11:30:59.000000000 +0100
+++ libgomp/testsuite/lib/libgomp.exp	2014-07-03 13:24:31.951953289 +0200
@@ -184,6 +184,8 @@ proc libgomp_target_compile { source des
     global lang_test_file
     global lang_library_path
     global lang_link_flags
+    global lang_include_flags
+    global lang_source_re
 
     if { [info exists lang_test_file] } {
         if { $blddir != "" } {
@@ -193,6 +195,10 @@ proc libgomp_target_compile { source des
             lappend options "ldflags=-L${blddir}/${lang_library_path}"
         }
         lappend options "ldflags=${lang_link_flags}"
+	if { [info exists lang_include_flags] \
+	     && [regexp ${lang_source_re} ${source}] } {
+	    lappend options "additional_flags=${lang_include_flags}"
+	}
     }
 
     if { [target_info needs_status_wrapper] != "" && [info exists gluefile] } {
--- libgomp/testsuite/libgomp.c/c.exp.jj	2013-11-12 11:30:59.000000000 +0100
+++ libgomp/testsuite/libgomp.c/c.exp	2014-07-03 12:43:08.091889315 +0200
@@ -5,6 +5,9 @@ if [info exists lang_library_path] then
 if [info exists lang_test_file] then {
     unset lang_test_file
 }
+if [info exists lang_include_flags] then {
+    unset lang_include_flags
+}
 
 load_lib libgomp-dg.exp
 load_gcc_lib gcc-dg.exp
--- libgomp/testsuite/libgomp.c++/c++.exp.jj	2013-11-12 11:30:59.000000000 +0100
+++ libgomp/testsuite/libgomp.c++/c++.exp	2014-07-03 12:43:23.488808394 +0200
@@ -7,6 +7,9 @@ set shlib_ext [get_shlib_extension]
 set lang_link_flags "-lstdc++"
 set lang_test_file_found 0
 set lang_library_path "../libstdc++-v3/src/.libs"
+if [info exists lang_include_flags] then {
+    unset lang_include_flags
+}
 
 # Initialize dg.
 dg-init
--- libgomp/testsuite/libgomp.fortran/fortran.exp.jj	2013-11-12 11:30:59.000000000 +0100
+++ libgomp/testsuite/libgomp.fortran/fortran.exp	2014-07-03 13:23:26.074295258 +0200
@@ -8,6 +8,9 @@ global ALWAYS_CFLAGS
 set shlib_ext [get_shlib_extension]
 set lang_library_path	"../libgfortran/.libs"
 set lang_link_flags	"-lgfortran"
+if [info exists lang_include_flags] then {
+    unset lang_include_flags
+}
 set lang_test_file_found 0
 set quadmath_library_path "../libquadmath/.libs"
 
@@ -19,7 +22,8 @@ dg-init
 lappend ALWAYS_CFLAGS "additional_flags=-fopenmp"
 
 if { $blddir != "" } {
-    lappend ALWAYS_CFLAGS "additional_flags=-fintrinsic-modules-path=${blddir}"
+    set lang_source_re {^.*\.[fF](|90|95|03|08)$}
+    set lang_include_flags "-fintrinsic-modules-path=${blddir}"
     # Look for a static libgfortran first.
     if [file exists "${blddir}/${lang_library_path}/libgfortran.a"] {
         set lang_test_file "${lang_library_path}/libgfortran.a"
--- libgomp/testsuite/libgomp.graphite/graphite.exp.jj	2014-01-03 11:41:28.000000000 +0100
+++ libgomp/testsuite/libgomp.graphite/graphite.exp	2014-07-03 12:42:59.942930755 +0200
@@ -21,6 +21,9 @@ if [info exists lang_library_path] then
 if [info exists lang_test_file] then {
     unset lang_test_file
 }
+if [info exists lang_include_flags] then {
+    unset lang_include_flags
+}
 
 load_lib libgomp-dg.exp
 load_gcc_lib gcc-dg.exp


	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]