The include directory should contain exactly one directory: llvm. All include/* directories need to be made into include/llvm/* directories. The reason for this is so that llvm #includes (especally by users of LLVM) cannot clash with any other software system. Right now we have header files in include/Support and include/Config that could clash with header files from some "Support" or "Config" application or module of an application. After this change is made, including *any* LLVM header will have the form: #include <llvm/MODULE/HEADER.h>
*** Bug 183 has been marked as a duplicate of this bug. ***
Created attachment 170 [details] Script to do the cvs repository modifications Review and run this script against the LLVM cvs repository in order to make copies of ,v files for headers moved to new locations. This needs to be done before I can commit the file modifications.
The attachment needs to be run so I can commit changes. Note that the resolution to this bug will also encapsulate the movement of abstract data types from include/Support to include/llvm/ADT, as noted in bug 351.
One more thing to be done before resolving this: Split the abstract data type implementations out of lib/Support and into lib/ADT. This will also require a new library to be linked with in the various tools. Either that or rename libsupport.a libsupport+adt.a
This change has been implemented. All public header files are now in include/llvm. The change set is too big to list here but it begins with: http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20040830/017770.html and ends with: http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20040830/017837.html Yes, changes in 67 directories :)