summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake
diff options
context:
space:
mode:
authorDaniele E. Domenichelli <daniele.domenichelli@iit.it>2013-09-20 13:10:40 (GMT)
committerBrad King <brad.king@kitware.com>2013-10-08 13:43:06 (GMT)
commit73d28d2177a8b014f8807a61d14d3064c5d5c033 (patch)
tree055b3078b3988b33a71a6fd7bea29a5500e709b1 /Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake
parent951a158c8a89512f52779ea29731234fa25b90e5 (diff)
downloadCMake-73d28d2177a8b014f8807a61d14d3064c5d5c033.zip
CMake-73d28d2177a8b014f8807a61d14d3064c5d5c033.tar.gz
CMake-73d28d2177a8b014f8807a61d14d3064c5d5c033.tar.bz2
CheckStructHasMember: Add support for C++
Previously if headers required to check if a struct has a member can be compiled with C++ compiler only, the check would fail because the C compiler fails. As a consequence, the result variable would be set to false, even if the struct has that particular member. Teach CHECK_STRUCT_HAS_MEMBER to accept a new optional argument LANGUAGE that allows one to explicitly set the compiler to use. The new signature is therefore: CHECK_STRUCT_HAS_MEMBER (<struct> <member> <header> <variable> [LANGUAGE <language>])
Diffstat (limited to 'Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake')
-rw-r--r--Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake4
1 files changed, 4 insertions, 0 deletions
diff --git a/Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake b/Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake
new file mode 100644
index 0000000..b319e18
--- /dev/null
+++ b/Tests/RunCMake/CheckModules/CheckStructHasMemberOk.cmake
@@ -0,0 +1,4 @@
+include(CheckStructHasMember)
+check_struct_has_member("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC)
+check_struct_has_member("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC_C LANGUAGE C)
+check_struct_has_member("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC_CXX LANGUAGE CXX)