On 24/09/13 16:44, Brad King wrote:
> On 09/24/2013 09:46 AM, Daniele E. Domenichelli wrote:
>> I pushed a commit to the CheckStructHasMember_CXX topic, can you review
>> it?
> You can simplify the implementation using ${ARGN} to get the arguments
> beyond those explicitly named in the signature.
You mean something like this?
if("${ARGN}" STREQUAL "")
set(_lang C)
elseif("${ARGN}" MATCHES "^LANGUAGE;([a-zA-Z]+)$")
set(_lang "${CMAKE_MATCH_1}")
else()
message(FATAL_ERROR "Unknown arguments:\n ${ARGN}\n")
endif()
[...]
if("${_lang}" STREQUAL "C")
[...]
elseif("${_lang}" STREQUAL "CXX")
[...]
else()
message(FATAL_ERROR "Unknown language:\n ${_lang}\nSupported languages:
C, CXX.\n")
endif()
Is the "MATCHES" using a list as a string "safe"? Or is there another way to
simplify it?
Otherwise I can do the same using list(LENGTH) and list(GET) instead of ARGC
and ARGV4/5, but it looks more complicated.
Cheers,
Daniele
--
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