]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
Initial support for the Cuda Compiler Driver on Linux.
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sun, 13 Sep 2009 09:00:31 +0000 (11:00 +0200)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Fri, 18 Sep 2009 18:36:34 +0000 (20:36 +0200)
* libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
file extensions `.cu' and `.cup'.
* libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
(_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
* NEWS, THANKS: Update.
Report by Mahesh Narayanamurthi.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
ChangeLog
NEWS
THANKS
libltdl/config/ltmain.m4sh
libltdl/m4/libtool.m4

index 70ea1c140cf9c8ada55fa77b4a614852afd11ea9..12ca0852b7f9d4d9a6f4581e03415e0a65c223e5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       Initial support for the Cuda Compiler Driver on Linux.
+       * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
+       file extensions `.cu' and `.cup'.
+       * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
+       (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
+       * NEWS, THANKS: Update.
+       Report by Mahesh Narayanamurthi.
+
 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
 
        Control where win32 DLLs get installed.
diff --git a/NEWS b/NEWS
index f96a7179d05de4d86421da6ac1f8fd16eddc2aa9..78433789b85733fbcdef5377f3f0b60b7b74fd42 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,7 @@ New in 2.2.8 2009-??-??: git version 2.2.7a, Libtool team:
   - Initial support for compilers on BlueGene BG/L.
   - Improved support for Atari FreeMiNT.
   - With binutils 2.19.50+, shared libraries can be built on AIX.
+  - Initial support for the Cuda Compiler Driver on GNU/Linux.
 
 * Bug fixes:
 
diff --git a/THANKS b/THANKS
index 54c989bd2d993d7f8f4374b916d6d6dce03d43d3..7731a82bb3e04302c7d4158687f6d58c18c2c339 100644 (file)
--- a/THANKS
+++ b/THANKS
   Kurt D. Zeilenga             Kurt@OpenLDAP.Org
   Maciej Helminiak             dion2@wp.pl
   Maciej W. Rozycki            macro@linux-mips.org
+  Mahesh Narayanamurthi                mahesh.mach@gmail.com
   Manfred Weichel              Manfred.Weichel@pdb.siemens.de
   Marc Espie                   espie@nerim.net
   Marc J. Fraioli              fraioli@dg-rtp.dg.com
index ab9492824b39c482b4792e354d8c5d5b2d881ac9..f1bf43fb8aeb4fd1212b864e1c1bbd88e31a6cd7 100644 (file)
@@ -783,7 +783,7 @@ func_mode_compile ()
     *.[cCFSifmso] | \
     *.ada | *.adb | *.ads | *.asm | \
     *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
-    *.[fF][09]? | *.for | *.java | *.obj | *.sx)
+    *.[fF][09]? | *.for | *.java | *.obj | *.sx | *.cu | *.cup)
       func_xform "$libobj"
       libobj=$func_xform_result
       ;;
index a8c186b37e1788bce096c220f8c5f0f2281a1874..02f5b5deef49f5414cef513a0c7b6b0269399dd6 100644 (file)
@@ -3287,7 +3287,12 @@ m4_defun([_LT_COMPILER_NO_RTTI],
 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
 
 if test "$GCC" = yes; then
-  _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+  case $cc_basename in
+  nvcc*)
+    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
+  *)
+    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
+  esac
 
   _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
     lt_cv_prog_compiler_rtti_exceptions,
@@ -3939,6 +3944,13 @@ m4_if([$1], [CXX], [
       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
       ;;
     esac
+
+    case $cc_basename in
+    nvcc*) # Cuda Compiler Driver 2.2
+      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
+      ;;
+    esac
   else
     # PORTME Check for flag to pass linker flags through the system compiler.
     case $host_os in
@@ -4424,6 +4436,10 @@ _LT_EOF
        xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
          tmp_sharedflag='-qmkshrobj'
          tmp_addflag= ;;
+       nvcc*)  # Cuda Compiler Driver 2.2
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         _LT_TAGVAR(compiler_needs_object, $1)=yes
+         ;;
        esac
        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ C*)                       # Sun C 5.9