On 12/18/2012 11:02 AM, Stephen Kelly wrote: > I didn't look into the implementation of it yet. By 'intern', you mean > storing const char * instead of std::string with the cmListFileBacktrace > object, and maintaining the strings elsewhere (globally?)?
Yes, something along these lines. > Yes. Do you have any idea of what you'd like to see generalized? The > interception and struct for handling the INCLUDE_DIRECTORIES property > itself? The cmPropertyMap/cmProperty infrastructure could potentially store structures with the string values plus meta-data instead of just the strings as now. Then we would not need special cases for certain properties in the C++ logic, just some kind of a boolean or enum of possible behaviors that is kept with the property value or perhaps its definition. > Do you mean > > set(CMAKE_DEBUG_TARGET_PROPERTIES INCLUDE_DIRECTORIES) > > ? Yes. > That would be fine if the arg can be a list. > > set(CMAKE_DEBUG_TARGET_PROPERTIES > "INCLUDE_DIRECTORIES;COMPILE_DEFINITIONS" > ) > > but then I don't think it's much better than: > > set(CMAKE_DEBUG_TARGET_INCLUDE_DIRECTORIES ON) > set(CMAKE_DEBUG_TARGET_COMPILE_DEFINITIONS ON) The first one would generalize better and avoid special handling in C++ for each property. -Brad -- 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://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers