[cfe-dev] Cannot run clang regression tests with cmake

Douglas Gregor dgregor at apple.com
Thu May 19 11:37:54 PDT 2011


On May 19, 2011, at 10:30 AM, Óscar Fuentes wrote:

> arrowdodger <6yearold at gmail.com> writes:
> 
>> On Thu, May 19, 2011 at 8:28 PM, Óscar Fuentes <ofv at wanadoo.es> wrote:
>> 
>>> The name liblibclang is forced by an unfortunate collision between MS
>>> and GNU name conventions. We can't create clang.dll with MS since we
>>> already have clang.exe on the same directory (.pdb, .ilk and possibly
>>> other files collide) so we must use some other name for clang.dll, like
>>> libclang.dll. Then this produces liblibclang.so on GNU.
>>> 
>> 
>> I've wanted to ask earleir, but forgot about it:
>> Why we can't produce libclang.dll on Win and clang.so on Unixies?
> 
> For the resason explained on the text you didn't quote. The user would
> need to be aware of the difference and do:
> 
> if( MSVC )
>  target_link_libraries(myproject libclang)
> else()
>  target_link_libraries(myproject clang)
> endif()
> 
> Of course this is not a reason that makes impossible to do what you
> suggest. I picked a trade-off. If the consensus is that using different
> names is the right thing, it's okay with me. However, I don't accept
> reasonings of the type: "since I only work on Linux I don't care about
> whatever problems Windows users may have." Please keep in mind that for
> MSVC users cmake is the only way of building LLVM/Clang.

Isn't this why CMake has the OUTPUT_NAME target property?

	- Doug



More information about the cfe-dev mailing list