<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Dear Óscar,<div><br></div><div>If you review the install log I sent, you will see that the patterns still appear to work as expected.</div><div><br></div><div>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?</div><div><br></div><div>According to the documentation: <i>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> I'm not sure I understand exactly what this means, but it seems to appear that it it is superfluous? Previously, it states: <i>A PATTERN will match only complete file names</i>. 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.</div><div><br></div><div>Kind regards,</div><div>Samuel</div><div><br><div><div>On 2/10/2010, at 12:23 PM, Óscar Fuentes wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>The following message is a courtesy copy of an article<br>that has been posted to gmane.comp.compilers.llvm.devel as well.<br><br>Samuel Williams <<a href="mailto:space.ship.traveller@gmail.com">space.ship.traveller@gmail.com</a>> writes:<br><br><blockquote type="cite">Sorry for the rapid fire replies, but this configuration works for me:<br></blockquote><br>It "works" on the sense that it installs the headers, but removing the<br>FILES_MATCHING clause changes the semantics of the command: the<br>subsequent PATTERNs that controls which files are to be installesd<br>becomes ineffective.<br><br><blockquote type="cite">install(DIRECTORY include/<br></blockquote><blockquote type="cite">  DESTINATION include<br></blockquote><blockquote type="cite">#  FILES_MATCHING<br></blockquote><blockquote type="cite">  PATTERN "*.def"<br></blockquote><blockquote type="cite">  PATTERN "*.h"<br></blockquote><blockquote type="cite">  PATTERN "*.td"<br></blockquote><blockquote type="cite">  PATTERN "*.inc"<br></blockquote><blockquote type="cite">  PATTERN ".svn" EXCLUDE<br></blockquote><blockquote type="cite">  )<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/<br></blockquote><blockquote type="cite">  DESTINATION include<br></blockquote><blockquote type="cite">#  FILES_MATCHING<br></blockquote><blockquote type="cite">  PATTERN "*.def"<br></blockquote><blockquote type="cite">  PATTERN "*.h"<br></blockquote><blockquote type="cite">  PATTERN "*.gen"<br></blockquote><blockquote type="cite">  PATTERN "*.inc"<br></blockquote><blockquote type="cite">  # Exclude include/llvm/CMakeFiles/intrinsics_gen.dir, matched by "*.def"<br></blockquote><blockquote type="cite">  PATTERN "CMakeFiles" EXCLUDE<br></blockquote><blockquote type="cite">  PATTERN ".svn" EXCLUDE<br></blockquote><blockquote type="cite">  )<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">It seems like there is either a bug with FILES_MATCHING or an issue<br></blockquote><blockquote type="cite">with the way it is being used.<br></blockquote><br>It is clear that CMake is not behaving as it should in your<br>machine. Please file a bug report on the CMake bug tracker with the<br>necessary information for reproducing it (versions, commands for<br>building and installing LLVM starting from the "svn checkout", etc)<br><br>[snip]<br></div></blockquote></div><br></div></body></html>