Hi, On Mon, Dec 07, 2015 at 12:19:08PM +0100, Martin Jambor wrote: > Hi, > > this patch contains changes to the configuration mechanism and offload > bits, so that users can build compilers with HSA support.
when writing up how to build an HSA-enabled GCC for the wiki page, and checking the process actually works I realized that AMD no longer ships libhsakmt as a part of the run time. So we either have to tell users to copy the library over to the same directory where the run-time is (what I did on my machines and then forgot about it) or provide one more configuration option, otherwise configure libgomp fails. The patch below does the second. I have verified that the configuration works as intended fo freshly downloaded/built HSA run-time and libhsakmt. I am going to commit it to the branch shortly and of course would need it as part of hsa merge, Sorry for realizing this so late, Martin 2015-12-09 Martin Jambor <mjam...@suse.cz> libgomp/ * plugin/configfrag.ac (hsa-kmt-lib): New. gcc/ * doc/install.texi (Configuration): Document --with-hsa-kmt-lib. --- gcc/doc/install.texi | 5 +++++ libgomp/configure | 17 +++++++++++++++-- libgomp/plugin/configfrag.ac | 8 ++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 232586d..afd891c 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -1999,6 +1999,11 @@ shorthand for @option{--with-hsa-runtime-lib=@/@var{hsainstalldir}/lib} and @option{--with-hsa-runtime-include=@/@var{hsainstalldir}/include}. +@item --with-hsa-kmt-lib=@var{pathname} + +If you configure GCC with HSA offloading but do not have the HSA +KMT library installed in a standard location then you can +explicitly specify the directory where it resides. @end table @subheading Cross-Compiler-Specific Options diff --git a/libgomp/plugin/configfrag.ac b/libgomp/plugin/configfrag.ac index c50e5cb..fd77429 100644 --- a/libgomp/plugin/configfrag.ac +++ b/libgomp/plugin/configfrag.ac @@ -118,6 +118,14 @@ if test "x$HSA_RUNTIME_LIB" != x; then HSA_RUNTIME_LDFLAGS=-L$HSA_RUNTIME_LIB fi +AC_ARG_WITH(hsa-kmt-lib, + [AS_HELP_STRING([--with-hsa-kmt-lib=PATH], + [specify directory for installed HSA KMT library.])]) +if test "x$with_hsa_kmt_lib" != x; then + HSA_RUNTIME_LDFLAGS="$HSA_RUNTIME_LDFLAGS -L$with_hsa_kmt_lib" + HSA_RUNTIME_LIB= +fi + PLUGIN_HSA=0 PLUGIN_HSA_CPPFLAGS= PLUGIN_HSA_LDFLAGS= -- 2.6.3