Revision: 40933
          http://brlcad.svn.sourceforge.net/brlcad/?rev=40933&view=rev
Author:   starseeker
Date:     2010-10-07 17:34:18 +0000 (Thu, 07 Oct 2010)

Log Message:
-----------
Check for members in structures

Modified Paths:
--------------
    brlcad/branches/cmake/CMakeLists.txt
    brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake

Modified: brlcad/branches/cmake/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/CMakeLists.txt        2010-10-07 17:16:57 UTC (rev 
40932)
+++ brlcad/branches/cmake/CMakeLists.txt        2010-10-07 17:34:18 UTC (rev 
40933)
@@ -728,6 +728,7 @@
 BRLCAD_INCLUDE_FILE(dirent.h HAVE_DIRENT_H)
 
 # Need to compare this with the configure.ac list 
+BRLCAD_INCLUDE_FILE(dlfcn.h HAVE_DLFCN_H)
 BRLCAD_INCLUDE_FILE(dslib.h HAVE_DSLIB_H)
 BRLCAD_INCLUDE_FILE(getopt.h HAVE_GETOPT_H)
 BRLCAD_INCLUDE_FILE(gl/device.h HAVE_GL_DEVICE_H)
@@ -789,6 +790,9 @@
 # ***         Check for Types/Structures - Stage 5 of 9           ***
 # *******************************************************************
 
+BRLCAD_STRUCT_MEMBER("struct stat" st_blksize sys/stat.h 
STRUCT_STAT_ST_BLKSIZE)
+BRLCAD_STRUCT_MEMBER("struct stat" st_blocks sys/stat.h STRUCT_STAT_ST_BLOCKS)
+
 # socklen_t
 BRLCAD_TYPE_SIZE("socklen_t" SOCKLEN_T "sys/types.h")
 IF(NOT SOCKLEN_T)

Modified: brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake
===================================================================
--- brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake        
2010-10-07 17:16:57 UTC (rev 40932)
+++ brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake        
2010-10-07 17:34:18 UTC (rev 40933)
@@ -6,6 +6,7 @@
 INCLUDE(CheckIncludeFileCXX)
 INCLUDE(CheckTypeSize)
 INCLUDE(CheckLibraryExists)
+INCLUDE(CheckStructHasMember)
 INCLUDE(ResolveCompilerPaths)
 
 MACRO(BRLCAD_FUNCTION_EXISTS function var)
@@ -38,6 +39,13 @@
        endif(CONFIG_H_FILE AND ${var})
 ENDMACRO(BRLCAD_TYPE_SIZE)
 
+MACRO(BRLCAD_STRUCT_MEMBER structname member header var)
+       CHECK_STRUCT_HAS_MEMBER(${structname} ${member} ${header} ${var})
+       if(CONFIG_H_FILE AND ${var})
+               FILE(APPEND ${CONFIG_H_FILE} "#cmakedefine HAVE_${var} 1\n")
+       endif(CONFIG_H_FILE AND ${var})
+ENDMACRO(BRLCAD_STRUCT_MEMBER)
+
 MACRO(BRLCAD_CHECK_LIBRARY targetname lname func)
        IF(NOT ${targetname}_LIBRARY)
                CHECK_LIBRARY_EXISTS(${lname} ${func} "" 
HAVE_${targetname}_${lname})


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to