Revision: 40611
http://brlcad.svn.sourceforge.net/brlcad/?rev=40611&view=rev
Author: starseeker
Date: 2010-09-20 13:45:22 +0000 (Mon, 20 Sep 2010)
Log Message:
-----------
Add more macro logic - autotools docs call a couple of these obsolete, so may
want to think about finishing full duplication of the logic for dirent...
Modified Paths:
--------------
brlcad/branches/cmake/CMakeLists.txt
brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake
Added Paths:
-----------
brlcad/branches/cmake/misc/CMake/test_srcs/sys_wait_test.c
Modified: brlcad/branches/cmake/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/CMakeLists.txt 2010-09-20 13:02:36 UTC (rev
40610)
+++ brlcad/branches/cmake/CMakeLists.txt 2010-09-20 13:45:22 UTC (rev
40611)
@@ -724,21 +724,18 @@
# syslog.h, tar.h, termios.h, trace.h, ucontext.h, ulimit.h, unistd.h,
# utime.h, utmpx.h, wordexp.h
-# Need to define CMake functionality that does the same thing
-# as these AC macros:
+# Tests for standard functionality based on AC_HEADER_* macros (see
+# http://www.gnu.org/software/hello/manual/autoconf/Particular-Headers.html)
+# AC_HEADER_STDC
CMAKE_HEADER_STDC()
-#
-# also:
-# AC_HEADER_DIRENT
+# AC_HEADER_DIRENT - not yet fully at parity with its autotools counterpart
+CMAKE_HEADER_DIRENT()
# AC_HEADER_SYS_WAIT
-#
-# see
-# http://www.gnu.org/software/hello/manual/autoconf/Particular-Headers.html
+CMAKE_HEADER_SYS_WAIT()
# Need to compare this with the configure.ac list
BRLCAD_INCLUDE_FILE(alloca.h HAVE_ALLOCA_H)
BRLCAD_INCLUDE_FILE(dslib.h HAVE_DSLIB_H)
-BRLCAD_INCLUDE_FILE(dirent.h HAVE_DIRENT_H)
BRLCAD_INCLUDE_FILE(getopt.h HAVE_GETOPT_H)
BRLCAD_INCLUDE_FILE(gl/device.h HAVE_GL_DEVICE_H)
BRLCAD_INCLUDE_FILE(grp.h HAVE_GRP_H)
Modified: brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake
===================================================================
--- brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake
2010-09-20 13:02:36 UTC (rev 40610)
+++ brlcad/branches/cmake/misc/CMake/BRLCAD_CheckFunctions.cmake
2010-09-20 13:45:22 UTC (rev 40611)
@@ -92,3 +92,25 @@
FILE(APPEND ${CONFIG_H_FILE} "#define STDC_HEADERS 1\n")
ENDIF(HAVE_STDLIB_H AND HAVE_STDARG_H AND HAVE_STRING_H AND HAVE_FLOAT_H AND
WORKING_CTYPE_MACROS)
ENDMACRO(CMAKE_HEADER_STDC)
+
+# Based on AC_HEADER_DIRENT
+MACRO(CMAKE_HEADER_DIRENT)
+ BRLCAD_INCLUDE_FILE(dirent.h HAVE_DIRENT_H)
+ IF(NOT HAVE_DIRENT_H)
+ BRLCAD_INCLUDE_FILE(sys/ndir.h HAVE_SYS_NDIR_H)
+ IF(NOT HAVE_SYS_NDIR_H)
+ BRLCAD_INCLUDE_FILE(sys/dir.h HAVE_SYS_DIR_H)
+ IF(NOT HAVE_SYS_DIR_H)
+ BRLCAD_INCLUDE_FILE(ndir.h HAVE_NDIR_H)
+ ENDIF(NOT HAVE_SYS_DIR_H)
+ ENDIF(NOT HAVE_SYS_NDIR_H)
+ ENDIF(NOT HAVE_DIRENT_H)
+ENDMACRO(CMAKE_HEADER_DIRENT)
+
+# Based on AC_HEADER_SYS_WAIT
+MACRO(CMAKE_HEADER_SYS_WAIT)
+ CHECK_C_FILE_RUNS(${CMAKE_SOURCE_DIR}/misc/CMake/test_srcs/sys_wait_test.c
WORKING_SYS_WAIT)
+ IF(WORKING_SYS_WAIT)
+ FILE(APPEND ${CONFIG_H_FILE} "#define HAVE_SYS_WAIT_H 1\n")
+ ENDIF(WORKING_SYS_WAIT)
+ENDMACRO(CMAKE_HEADER_SYS_WAIT)
Added: brlcad/branches/cmake/misc/CMake/test_srcs/sys_wait_test.c
===================================================================
--- brlcad/branches/cmake/misc/CMake/test_srcs/sys_wait_test.c
(rev 0)
+++ brlcad/branches/cmake/misc/CMake/test_srcs/sys_wait_test.c 2010-09-20
13:45:22 UTC (rev 40611)
@@ -0,0 +1,19 @@
+#include <sys/types.h>
+#include <sys/wait.h>
+#ifndef WEXITSTATUS
+# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
+#endif
+#ifndef WIFEXITED
+# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
+#endif
+
+int
+main ()
+{
+ int s;
+ wait (&s);
+ s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
+ ;
+ return 0;
+}
+
Property changes on: brlcad/branches/cmake/misc/CMake/test_srcs/sys_wait_test.c
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits