I noticed that if I have a buried CMakeLists.txt file which contains the
following

file(GLOB_RECURSE DICOM_TEST_SERVER_SRC src *.cpp )

and

INCLUDE_DIRECTORIES(
    include
)

Where src contains cpp files and include contains include files CMake uses
absolute paths for include path, but relative directories for the source.

examples produced by cmake:

src:

Creating temporary file
"c:\projects\NIH2009\source\branches\trunk\build\dvip4-Win64\cpp_source\app\dicomserver\dvipdicomsvr.dir\Debug\RSP00006D57442788.rsp"
with contents [ /Od /I
"C:\projects\NIH2009\source\branches\trunk\source\cpp\lib\3rdParty\Win\NVIDIA_GPU_Computing_SDK_2.2\common\inc"
/I
"C:\projects\NIH2009\source\branches\trunk\build\Windows-6.1\install\include"
/I
"C:\projects\NIH2009\source\branches\trunk\source\cpp\app\testing\dicomserver\include"
/I
"C:\projects\NIH2009\source\branches\trunk\source\cpp\lib\3rdParty\Win\CUDA_Toolkit_2.2\include"
/D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "CMAKE_INTDIR=\"Debug\"" /D "_MBCS"
/Gm /EHsc /RTC1 /MTd /Fo"dvipdicomsvr.dir\Debug\\"
/Fd"C:/projects/NIH2009/source/branches/trunk/build/Windows-6.1/ouput/bin/Debug/dvipdicomsvr.pdb"
/W3 /c /Zi /TP /Zm1000
"..\..\..\..\..\source\cpp\app\testing\dicomserver\src\main.cpp"
"..\..\..\..\..\source\cpp\app\testing\dicomserver\src\dcmtksvr.cpp" ]

include:

C:\projects\NIH2009\source\branches\trunk\source\cpp\app\testing\dicomserver\include

Why?

Why I care:

Lets say that I someone wants to check the Visual Studio project goop
produced by CMake in trunk and check out in a diffrent directory in their
branch on another machine.  With absolute paths sprinkled all over
effectively makes this impossible.

-- 
Brian J. Davis
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to