[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