Revision: 41200
          http://brlcad.svn.sourceforge.net/brlcad/?rev=41200&view=rev
Author:   starseeker
Date:     2010-11-01 15:38:59 +0000 (Mon, 01 Nov 2010)

Log Message:
-----------
take a stab a reproducing the broken func test.

Modified Paths:
--------------
    brlcad/branches/cmake/src/other/tcl/CMake/tcl.cmake
    brlcad/branches/cmake/src/other/tcl/CMakeLists.txt

Modified: brlcad/branches/cmake/src/other/tcl/CMake/tcl.cmake
===================================================================
--- brlcad/branches/cmake/src/other/tcl/CMake/tcl.cmake 2010-10-31 00:57:37 UTC 
(rev 41199)
+++ brlcad/branches/cmake/src/other/tcl/CMake/tcl.cmake 2010-11-01 15:38:59 UTC 
(rev 41200)
@@ -475,7 +475,27 @@
        SET(TCL_CFLAGS "${TCL_CFLAGS} 
-DTCL_CFGVAL_ENCODING=\"${TCL_CFGVAL_ENCODING}\"" CACHE STRING "TCL CFLAGS" 
FORCE)
 ENDMACRO(SC_TCL_CFG_ENCODING)
 
+
 #--------------------------------------------------------------------
+# SC_TCL_CHECK_BROKEN_FUNC
+#--------------------------------------------------------------------
+MACRO(SC_TCL_CHECK_BROKEN_FUNC)
+       CHECK_FUNCTION_EXISTS(${ARGV0} HAVE_${ARGV0})
+       IF(HAVE_${ARGV0})
+               SET(COMPILE_SRC "
+               int main() {
+               ${ARGV1}
+               }")
+               CHECK_C_SOURCE_RUNS("${COMPILE_SRC}"  WORKING_${ARGV0})
+               IF(NOT WORKING_${ARGV0})
+                       SET(COMPAT_SRCS ${COMPAT_SRCS} compat/${ARGV0}.c CACHE 
STRING "Compatibility srcs" FORCE)
+               ENDIF(NOT WORKING_${ARGV0})
+       ELSE(HAVE_${ARGV0})
+               SET(COMPAT_SRCS ${COMPAT_SRCS} compat/${ARGV0}.c CACHE STRING 
"Compatibility srcs" FORCE)
+       ENDIF(HAVE_${ARGV0})
+ENDMACRO(SC_TCL_CHECK_BROKEN_FUNC)
+
+#--------------------------------------------------------------------
 # SC_TCL_GETHOSTBYADDR_R
 #--------------------------------------------------------------------
 MACRO(SC_TCL_GETHOSTBYADDR_R)

Modified: brlcad/branches/cmake/src/other/tcl/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/src/other/tcl/CMakeLists.txt  2010-10-31 00:57:37 UTC 
(rev 41199)
+++ brlcad/branches/cmake/src/other/tcl/CMakeLists.txt  2010-11-01 15:38:59 UTC 
(rev 41200)
@@ -267,6 +267,30 @@
 # Handle time
 SC_TIME_HANDLER()
 
+# memove check
+CHECK_FUNCTION_EXISTS(memmove, HAVE_MEMMOVE)
+IF(NOT HAVE_MEMMOVE)
+       SET(TCL_CFLAGS "${TCL_CFLAGS} -DNO_MEMMOVE=1") 
+       SET(TCL_CFLAGS "${TCL_CFLAGS} -DNO_STRING_H=1") 
+ENDIF(NOT HAVE_MEMMOVE)
+
+
+# Test for bad functions
+SC_TCL_CHECK_BROKEN_FUNC(
+       strstr "
+       extern int strstr();
+       exit(strstr(\"\\\0test\", \"test\") ? 1 : 0);"
+)
+
+
+SC_TCL_CHECK_BROKEN_FUNC(
+       strtoul "
+       extern int strtoul();
+       char *term, *string = \"0\";
+       exit(strtoul(string,&term,0) != 0 || term != string+1);"
+)
+
+
 CHECK_INCLUDE_FILE_D(sys/types.h HAVE_SYS_TYPES_H)
 CHECK_INCLUDE_FILE_D(sys/stat.h HAVE_SYS_STAT_H)
 CHECK_INCLUDE_FILE_D(sys/fstatfs.h HAVE_SYS_FSTATFS_H)
@@ -307,6 +331,10 @@
 CHECK_FUNCTION_EXISTS_D(OSSpinLockLock HAVE_OSSPINLOCKLOCK)
 CHECK_FUNCTION_EXISTS_D(pthread_atfork HAVE_PTHREAD_ATFORK)
 
+IF(COMPAT_SRCS)
+       ADD_TCL_CFLAG(USE_COMPAT)
+ENDIF(COMPAT_SRCS)
+
 IF(APPLE)
        # Now that all the tests are done, configure the tclConfig.h file:
        configure_file(${CMAKE_CURRENT_SOURCE_DIR}/unix/tclConfig.h.in 
${TCL_BINARY_DIR}/include/tclConfig.h)


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

------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store 
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to