[PATCH] Add clang headers that fix machine-dependent definitions on FreeBSD 9.2
Viktor Kutuzov
vkutuzov at accesssoftek.com
Thu Jul 17 08:12:14 PDT 2014
Right, somehow missed it.
The trunk output reads:
...
# 1 "/Users/tobias/llvm/bin/../lib/clang/3.5.0/include/_types.h" 1 3 4
# 62 "/Users/tobias/llvm/bin/../lib/clang/3.5.0/include/_types.h" 3 4
# 1 "/usr/include/machine/_types.h" 1 3 4
# 32 "/usr/include/machine/_types.h" 3 4
...
what means 'machine/_types.h' has been copied to 'include/_types.h' and not 'include/machine/_types.h' as it should be.
Does your test source compile successfully if you move _types.h under /machine manually?
The code that copies the headers is in clang/lib/Headers/CMakeLists.txt:
set(out_files)
foreach( f ${files} )
set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
set( dst ${output_dir}/${f} )
add_custom_command(OUTPUT ${dst}
DEPENDS ${src}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
COMMENT "Copying clang's ${f}...")
list(APPEND out_files ${dst})
endforeach( f )
So it seems like cmake's copy_if_different doesn't create new directories on Darwin. Can you please confirm that?
http://reviews.llvm.org/D3908
More information about the llvm-commits
mailing list