[llvm-commits] [llvm] r112976 - /llvm/trunk/Makefile.rules

NAKAMURA Takumi geek4civic at gmail.com
Sat Sep 4 18:57:44 PDT 2010


Dan,

A bad news, it broke mingw's enable_shared.

HAVE_LINK_VERSION_SCRIPT is set on mingw by autoconf,
regadless of functionality of it.

Also RPATH, RDYNAMIC are set.

They are accepted but ignored by GNU ld win32.

To reorder "if (HAVE_LINK_VERSION_SCRIPT) clause and if (cyginw ||
mingw) clause",
it would be resolved.


Thank you, ...Takumi


2010/9/4 Dan Gohman <gohman at apple.com>:
> Author: djg
> Date: Fri Sep  3 12:29:33 2010
> New Revision: 112976
>
> URL: http://llvm.org/viewvc/llvm-project?rev=112976&view=rev
> Log:
> Fix Windows stuff to follow the existing source organization.
>
> Modified:
>    llvm/trunk/Makefile.rules
>
> Modified: llvm/trunk/Makefile.rules
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/Makefile.rules?rev=112976&r1=112975&r2=112976&view=diff
> ==============================================================================
> --- llvm/trunk/Makefile.rules (original)
> +++ llvm/trunk/Makefile.rules Fri Sep  3 12:29:33 2010
> @@ -961,23 +961,9 @@
>  clean-local::
>        -$(Verb) $(RM) -f $(NativeExportsFile)
>  else
> -NativeExportsFile := $(EXPORTED_SYMBOL_FILE)
> -endif
> -endif
> -
> -# Now add the linker command-line options to use the native export file.
> -
> -ifeq ($(HOST_OS),Darwin)
> -LLVMLibsOptions += -Wl,-exported_symbols_list,$(NativeExportsFile)
> -endif
> -
> -# GNU ld Win32 accepts .DEF files that contain "DATA" entries.
>  ifeq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW))
> +# GNU ld Win32 accepts .DEF files that contain "DATA" entries.
>  NativeExportsFile := $(ObjDir)/$(notdir $(EXPORTED_SYMBOL_FILE:.exports=.def))
> -
> -# LLVMLibsOptions is invalidated at processing tools/llvm-shlib.
> -SharedLinkOptions += $(NativeExportsFile)
> -
>  $(NativeExportsFile): $(EXPORTED_SYMBOL_FILE) $(ObjDir)/.dir
>        $(Echo) Generating $(notdir $@)
>        $(Verb) $(ECHO) "EXPORTS" > $@
> @@ -985,12 +971,28 @@
>  clean-local::
>        -$(Verb) $(RM) -f $(NativeExportsFile)
>  else
> +# Default behavior: just use the exports file verbatim.
> +NativeExportsFile := $(EXPORTED_SYMBOL_FILE)
> +endif
> +endif
> +endif
> +
> +# Now add the linker command-line options to use the native export file.
> +
> +# Darwin
> +ifeq ($(HOST_OS),Darwin)
> +LLVMLibsOptions += -Wl,-exported_symbols_list,$(NativeExportsFile)
> +endif
>
>  # gold, bfd ld, etc.
>  ifeq ($(HAVE_LINK_VERSION_SCRIPT),1)
>  LLVMLibsOptions += -Wl,--version-script,$(NativeExportsFile)
>  endif
>
> +# Windows
> +ifeq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW))
> +# LLVMLibsOptions is invalidated at processing tools/llvm-shlib.
> +SharedLinkOptions += $(NativeExportsFile)
>  endif
>
>  endif
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>




More information about the llvm-commits mailing list