| # | |
| # Minimal libtool support for the D language. | |
| # Adapted from the Go language support files. | |
| # | |
| # _LT_LANG_D_CONFIG([TAG]) | |
| # -------------------------- | |
| # Ensure that the configuration variables for the GNU D compiler | |
| # are suitably defined. These variables are subsequently used by _LT_CONFIG | |
| # to write the compiler configuration to `libtool'. | |
| m4_defun([_LT_LANG_D_CONFIG], | |
| [AC_REQUIRE([AC_PROG_GDC])dnl | |
| AC_LANG_SAVE | |
| # Source file extension for D test sources. | |
| ac_ext=d | |
| # Object file extension for compiled D test sources. | |
| objext=o | |
| _LT_TAGVAR(objext, $1)=$objext | |
| # Code to be used in simple compile tests | |
| lt_simple_compile_test_code="\ | |
| module object; | |
| shared int some_variable = 0; | |
| " | |
| # Code to be used in simple link tests | |
| lt_simple_link_test_code="\ | |
| module object; | |
| extern(C) int main() { return 0; } | |
| " | |
| # ltmain only uses $CC for tagged configurations so make sure $CC is set. | |
| _LT_TAG_COMPILER | |
| # save warnings/boilerplate of simple test code | |
| _LT_COMPILER_BOILERPLATE | |
| _LT_LINKER_BOILERPLATE | |
| # Allow CC to be a program name with arguments. | |
| lt_save_CC=$CC | |
| lt_save_CFLAGS=$CFLAGS | |
| lt_save_GCC=$GCC | |
| GCC=yes | |
| CC=${GDC-"gdc"} | |
| CFLAGS=$GDCFLAGS | |
| compiler=$CC | |
| _LT_TAGVAR(compiler, $1)=$CC | |
| _LT_TAGVAR(LD, $1)=$CC | |
| _LT_CC_BASENAME([$compiler]) | |
| # GDC did not exist at the time GCC didn't implicitly link libc in. | |
| _LT_TAGVAR(archive_cmds_need_lc, $1)=no | |
| _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds | |
| _LT_TAGVAR(reload_flag, $1)=$reload_flag | |
| _LT_TAGVAR(reload_cmds, $1)=$reload_cmds | |
| ## CAVEAT EMPTOR: | |
| ## There is no encapsulation within the following macros, do not change | |
| ## the running order or otherwise move them around unless you know exactly | |
| ## what you are doing... | |
| if test -n "$compiler"; then | |
| _LT_COMPILER_NO_RTTI($1) | |
| _LT_COMPILER_PIC($1) | |
| _LT_COMPILER_C_O($1) | |
| _LT_COMPILER_FILE_LOCKS($1) | |
| _LT_LINKER_SHLIBS($1) | |
| _LT_LINKER_HARDCODE_LIBPATH($1) | |
| _LT_CONFIG($1) | |
| fi | |
| AC_LANG_RESTORE | |
| GCC=$lt_save_GCC | |
| CC=$lt_save_CC | |
| CFLAGS=$lt_save_CFLAGS | |
| ])# _LT_LANG_D_CONFIG |