From: Dragan T. <dr...@us...> - 2006-12-25 20:12:53
|
Update of /cvsroot/octaviz/octaviz In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30548 Modified Files: CMakeLists.txt Log Message: Fixed segfaults due to the reference counting in octave_value (octave 2.9.x) Fixed varargin issue (hope so) Fixed (somewhat) the build system. This version should not be used for anything but testing. Index: CMakeLists.txt =================================================================== RCS file: /cvsroot/octaviz/octaviz/CMakeLists.txt,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- CMakeLists.txt 23 Oct 2006 01:01:33 -0000 1.4 +++ CMakeLists.txt 25 Dec 2006 20:12:49 -0000 1.5 @@ -16,7 +16,7 @@ OPTION(USE_PREC_HEADERS "Use precompiled headers" OFF) STRING(COMPARE EQUAL ${USE_PREC_HEADERS} "OFF" PCH_ON) IF(PCH_ON) - SET(CXX_COMPILER_PCH "g++-3.4" CACHE STRING "CMake overides compiler environment varibles. Put the compiler name here.") + SET(CXX_COMPILER_PCH "g++" CACHE STRING "CMake overides compiler environment varibles. Put the compiler name here.") ENDIF(PCH_ON) SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/local/lib/vtk /usr/lib/vtk) @@ -54,44 +54,23 @@ SET(OCT_PREFIX ${OCT_PREFIX_EXEC} CACHE INTERNAL "" FORCE) ENDIF(OCT_PREFIX_EXEC MATCHES "^OCT_PREFIX_EXEC$") SET(CMAKE_INSTALL_PREFIX ${OCT_PREFIX} CACHE PATH "Specifies the directory where .oct files will be installed." FORCE) - + # Build the vtkOctave wrapping utility first. - SUBDIRS(Wrapping) + ADD_SUBDIRECTORY(Wrapping) - # Build octave wrappers for VTK kits. - SUBDIRS(Common Filtering Imaging Graphics IO) - SET(vtk_kits Common Filtering Imaging Graphics IO) - IF(VTK_USE_RENDERING) - SUBDIRS(Rendering) - SET(vtk_kits ${vtk_kits} Rendering) - ENDIF(VTK_USE_RENDERING) - IF(VTK_USE_HYBRID) - SUBDIRS(Hybrid) - SET(vtk_kits ${vtk_kits} Hybrid) - ENDIF(VTK_USE_HYBRID) - IF(VTK_USE_PATENTED) - SUBDIRS(Patented) - SET(vtk_kits ${vtk_kits} Patented) - ENDIF(VTK_USE_PATENTED) - IF(VTK_USE_PARALLEL) - SUBDIRS(Parallel) - SET(vtk_kits ${vtk_kits} Parallel) - ENDIF(VTK_USE_PARALLEL) - # Hack that creates symbolic links to functions #ADD_CUSTOM_TARGET(create_links echo "Symbolic links created.") #FOREACH(kit ${vtk_kits}) # ADD_CUSTOM_TARGET(create_links_${kit} cd ${kit}\; ${CMAKE_MAKE_PROGRAM} create_links) # ADD_DEPENDENCIES(create_links create_links_${kit}) #ENDFOREACH(kit) - + # Macro to create Octave wrapper functions MACRO(OCTAVE_WRAP_VTK kit ukit deps) # Hack for symbolic links # ADD_CUSTOM_TARGET(create_links echo "Symlinked ${kit}") INCLUDE(${VTK_KITS_DIR}/vtk${kit}Kit.cmake) - INCLUDE(${VTK_KITS_DIR}/vtk${kit}Kit.cmake) # what we don't want or can't build; # this is an ugly hack[TM] and should be fixed by e.g. @@ -101,12 +80,12 @@ SET(VTK_CLASS_WRAP_EXCLUDE_vtkSignedCharArray 1) SET(VTK_CLASS_WRAP_EXCLUDE_vtkUnsignedLongLongArray 1) - SET(all_oct) - FOREACH(class ${VTK_${ukit}_CLASSES}) - IF(NOT VTK_CLASS_WRAP_EXCLUDE_${class}) - SET(all_oct ${all_oct} ${class}.oct) - ENDIF(NOT VTK_CLASS_WRAP_EXCLUDE_${class}) - ENDFOREACH(class) +# SET(all_oct) +# FOREACH(class ${VTK_${ukit}_CLASSES}) +# IF(NOT VTK_CLASS_WRAP_EXCLUDE_${class}) +# SET(all_oct ${all_oct} ${class}.oct) +# ENDIF(NOT VTK_CLASS_WRAP_EXCLUDE_${class}) +# ENDFOREACH(class) # ADD_CUSTOM_TARGET(vtk${kit}.cc ALL cat ${all_ccs} > vtk${kit}.cc) @@ -117,27 +96,15 @@ # Precompiled headers IF(USE_PREC_HEADERS) # Which flags will mkoctfile use? - SET (PCHFLAGS "") + SET (PCHFLAGS "") - EXEC_PROGRAM("mkoctfile" ARGS "-p CXXPICFLAG" OUTPUT_VARIABLE MKOCT_FLAGS_EXEC) - STRING(REGEX MATCHALL "[^ ]+" MKOCT_FLAGS_LIST ${MKOCT_FLAGS_EXEC}) - FOREACH (flag ${MKOCT_FLAGS_LIST}) - SET (PCHFLAGS ${PCHFLAGS} ${flag}) - ENDFOREACH (flag ${MKOCT_FLAGS_LIST}) - - EXEC_PROGRAM("mkoctfile" ARGS "-p INCFLAGS" OUTPUT_VARIABLE MKOCT_FLAGS_EXEC) - STRING(REGEX MATCHALL "[^ ]+" MKOCT_FLAGS_LIST ${MKOCT_FLAGS_EXEC}) - FOREACH (flag ${MKOCT_FLAGS_LIST}) - SET (PCHFLAGS ${PCHFLAGS} ${flag}) - ENDFOREACH (flag ${MKOCT_FLAGS_LIST}) - - EXEC_PROGRAM("mkoctfile" ARGS "-p XTRA_CXXFLAGS" OUTPUT_VARIABLE MKOCT_FLAGS_EXEC) + EXEC_PROGRAM("mkoctfile" ARGS "-p ALL_CXXFLAGS" OUTPUT_VARIABLE MKOCT_FLAGS_EXEC) STRING(REGEX MATCHALL "[^ ]+" MKOCT_FLAGS_LIST ${MKOCT_FLAGS_EXEC}) - FOREACH (flag ${MKOCT_FLAGS_LIST}) - SET (PCHFLAGS ${PCHFLAGS} ${flag}) - ENDFOREACH (flag ${MKOCT_FLAGS_LIST}) - - #MESSAGE(${PCHFLAGS}) + FOREACH (flag ${MKOCT_FLAGS_LIST}) + SET (PCHFLAGS ${PCHFLAGS} ${flag}) + ENDFOREACH (flag ${MKOCT_FLAGS_LIST}) + +# MESSAGE(${PCHFLAGS}) ADD_CUSTOM_TARGET(OctavizCommon.h.gch ALL ${CXX_COMPILER_PCH} "-c" ${PCHFLAGS} ${oct_flags} ../Common/OctavizCommon.h) ENDIF(USE_PREC_HEADERS) @@ -146,11 +113,16 @@ # Remove prefix from oct install dir STRING(REGEX REPLACE "${CMAKE_INSTALL_PREFIX}" "" OCT_INST_DIR ${OCT_INST_DIR_EXEC}) + SET ( all_oct "" ) FOREACH(class ${VTK_${ukit}_CLASSES}) +# LIST( GET VTK_${ukit}_CLASSES 10 class ) SET(full_name "${VTK_${ukit}_HEADER_DIR}/${class}.h") IF(NOT VTK_CLASS_WRAP_EXCLUDE_${class}) - ADD_CUSTOM_TARGET(${class}.cc ALL ../Wrapping/vtkWrapOctave ${full_name} ../Wrapping/hints 1 ${class}.cc) - ADD_CUSTOM_TARGET(${class}.oct ALL sleep 0 \; mkoctfile ${oct_flags} ${oct_link_flags} -L../Common -loctaviz ${class}.cc) + ADD_CUSTOM_COMMAND( OUTPUT ${class}.cc COMMAND ../Wrapping/vtkWrapOctave ${full_name} ../Wrapping/hints 1 ${class}.cc ) + ADD_CUSTOM_COMMAND( OUTPUT ${class}.oct COMMAND mkoctfile ${oct_flags} -Wno-deprecated ${oct_link_flags} -L../Common -loctaviz ${class}.cc DEPENDS ${class}.cc ) + SET ( all_oct ${all_oct} ${class}.oct ) +# ADD_CUSTOM_TARGET(${class}.cc ALL ../Wrapping/vtkWrapOctave ${full_name} ../Wrapping/hints 1 ${class}.cc) +# ADD_CUSTOM_TARGET(${class}.oct ALL sleep 0 \; mkoctfile ${oct_flags} ${oct_link_flags} -L../Common -loctaviz ${class}.cc) # ADD_DEPENDENCIES(vtk${kit}.cc ${class}.cc) # Hack for symbolic links # ADD_CUSTOM_TARGET(${class}_link echo Symlinking ${class}\; ln -s ${CMAKE_INSTALL_PREFIX}${OCT_INST_DIR}/octaviz/vtk${kit}.oct ${CMAKE_INSTALL_PREFIX}${OCT_INST_DIR}/octaviz/${class}.oct) @@ -161,5 +133,30 @@ # MARK_AS_ADVANCED(CMAKE_INSTALL_PREFIX) - SUBDIRS(Scripts) - SUBDIRS(Examples) + # Build octave wrappers for VTK kits. + ADD_SUBDIRECTORY(Common) + ADD_SUBDIRECTORY(Filtering) + ADD_SUBDIRECTORY(Imaging) + ADD_SUBDIRECTORY(Graphics) + ADD_SUBDIRECTORY(IO) + + SET(vtk_kits Common Filtering Imaging Graphics IO) + IF(VTK_USE_RENDERING) + ADD_SUBDIRECTORY(Rendering) + SET(vtk_kits ${vtk_kits} Rendering) + ENDIF(VTK_USE_RENDERING) + IF(VTK_USE_HYBRID) + ADD_SUBDIRECTORY(Hybrid) + SET(vtk_kits ${vtk_kits} Hybrid) + ENDIF(VTK_USE_HYBRID) + IF(VTK_USE_PATENTED) + ADD_SUBDIRECTORY(Patented) + SET(vtk_kits ${vtk_kits} Patented) + ENDIF(VTK_USE_PATENTED) + IF(VTK_USE_PARALLEL) + ADD_SUBDIRECTORY(Parallel) + SET(vtk_kits ${vtk_kits} Parallel) + ENDIF(VTK_USE_PARALLEL) + + ADD_SUBDIRECTORY(Scripts) + ADD_SUBDIRECTORY(Examples) |