[LLVMdev] CMake "sudo make install" & headers

Samuel Williams space.ship.traveller at gmail.com
Fri Oct 1 17:10:32 PDT 2010


Dear Óscar,

If you review the install log I sent, you will see that the patterns still appear to work as expected.

Despite that this may be a flaws in CMake, it may be prudent to see if it is possible to fix this for Mac OS X users? It may also affect other platforms?

According to the documentation: The FILES_MATCHING option may be given before the first match option to disable installation of files (but not directories) not matched by any expression. I'm not sure I understand exactly what this means, but it seems to appear that it it is superfluous? Previously, it states: A PATTERN will match only complete file names. So, the patterns only apply to files anyway, and not directories? I fail to see the point of FILES_MATCHING, but I may just be misinterpreting the documentation.

Kind regards,
Samuel

On 2/10/2010, at 12:23 PM, Óscar Fuentes wrote:

> The following message is a courtesy copy of an article
> that has been posted to gmane.comp.compilers.llvm.devel as well.
> 
> Samuel Williams <space.ship.traveller at gmail.com> writes:
> 
>> Sorry for the rapid fire replies, but this configuration works for me:
> 
> It "works" on the sense that it installs the headers, but removing the
> FILES_MATCHING clause changes the semantics of the command: the
> subsequent PATTERNs that controls which files are to be installesd
> becomes ineffective.
> 
>> install(DIRECTORY include/
>>  DESTINATION include
>> #  FILES_MATCHING
>>  PATTERN "*.def"
>>  PATTERN "*.h"
>>  PATTERN "*.td"
>>  PATTERN "*.inc"
>>  PATTERN ".svn" EXCLUDE
>>  )
>> 
>> install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
>>  DESTINATION include
>> #  FILES_MATCHING
>>  PATTERN "*.def"
>>  PATTERN "*.h"
>>  PATTERN "*.gen"
>>  PATTERN "*.inc"
>>  # Exclude include/llvm/CMakeFiles/intrinsics_gen.dir, matched by "*.def"
>>  PATTERN "CMakeFiles" EXCLUDE
>>  PATTERN ".svn" EXCLUDE
>>  )
>> 
>> It seems like there is either a bug with FILES_MATCHING or an issue
>> with the way it is being used.
> 
> It is clear that CMake is not behaving as it should in your
> machine. Please file a bug report on the CMake bug tracker with the
> necessary information for reproducing it (versions, commands for
> building and installing LLVM starting from the "svn checkout", etc)
> 
> [snip]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20101002/44b2ac08/attachment.html>


More information about the llvm-dev mailing list