[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CMake зависимости



  Похоже, проблема глубже.

http://public.kitware.com/Bug/view.php?id=13938

Заголовочные файлы с одинаковыми именами подключаемые
"локально" (т.е. через "") не попадают в depends (ну, попадает
только один). Даже если находятся в разных директориях,
как по ссылке.

"I constructed a minimal example which reproduces the issue.
The include tree is:

main.cpp -> a/a.h -> x.h (a.h includes x.h without path and x.h is in a/)
        \-> c/c.h -> x.h (c.h includes x.h without path and x.h is in c/)

Now cmake detects the dependency only for one of the two x.h!

Note:
I even added all files to the executable
add_executable(main main.cpp a/a.h a/x.h c/c.h c/x.h)"

--
Гриша Тертычный


2013/5/26  <yuri.nefedov@gmail.com>:
> On Sun, 26 May 2013, Artem Chuprina wrote:
>
>> Andrey Rahmatullin -> debian-russian@lists.debian.org  @ Sun, 26 May 2013
>> 14:10:24 +0600:
>>
>> >> Если в C-файле делается include файлов с одинаковыми именами,
>> AR> Жжоте.
>>
>> В чем-то ты, конечно, прав, но что делать, если C это жжение позволяет
>> если не по стандарту, то по крайней мере во всех вменяемых реализациях?
>>
>
>   А стандарт по этому поводу ничего и не говорит, кроме как
>  "an implementation-defined" для того где и как ищется...
>
>   Я только раз с таким столкнулся, да и то решилось тем,
>   что второй файл было естественно вызывать как "LIB/name.h".
>   Чем не решение?
>
>  Ю.

Reply to: