[vtkusers] [vtk-developers] FFMPEG latest release in VTK

Berk Geveci berk.geveci at kitware.com
Wed Dec 2 07:13:39 EST 2009


Is it possible that you ran diff the wrong way. This shows that you
took out bunch of search paths:

-FIND_PATH(FFMPEG_INCLUDE_DIR avformat.h
-       PATHS
-       $ENV{FFMPEG_DIR}/include
-       $ENV{OSGDIR}/include
-       $ENV{OSG_ROOT}/include
-       ~/Library/Frameworks
-       /Library/Frameworks
-       /usr/local/include
-       /usr/include
-       /sw/include # Fink
-       /opt/local/include # DarwinPorts
-       /opt/csw/include # Blastwave
-       /opt/include
-       /usr/freeware/include
-       PATH_SUFFIXES ffmpeg
-       DOC "Location of FFMPEG Headers"
-)

-berk

On Tue, Dec 1, 2009 at 5:54 PM, Arnaud GELAS
<arnaud_gelas at hms.harvard.edu> wrote:
> I liked how you test if it is the "old" version or the new "one": simple,
> smart and very efficient!
>
> Apparently it was working fine on Nicolas's desktop (Linux, Ubuntu, local
> installation), but failing on mine (Linux, FC12, installed using yum).
> FFMPEG_INCLUDE_DIR was not found.
> By modifying a little your patch, it is now properly working on my desktop,
> and I guess with these last modifications it should also work on mac since
> your were only checking in (/usr/ or /usr/local/). I am not so sure if it is
> going to work on windows yet...
>
> If you want, we can set up some experimental build on Nicolas, my machine
> and mac for tonight and the next days to track possible bugs or errors.
>
> Arnaud
>
> On 12/01/2009 04:36 PM, Berk Geveci wrote:
>>
>> Here is the patch to support latest ffmpeg (based on the ParaView tree
>> so you have to do patch -p2). Let me know what you guys think and if
>> there are no objections, I can commit it.
>>
>> -berk
>>
>> On Tue, Dec 1, 2009 at 4:29 PM, Arnaud GELAS
>> <arnaud_gelas at hms.harvard.edu>  wrote:
>>
>>>
>>> Hi Berk,
>>>
>>> we are definitively interested in these changes!
>>> When do you expect to commit this code?
>>>
>>> Arnaud
>>>
>>> On 12/01/2009 04:05 PM, Berk Geveci wrote:
>>>
>>>>
>>>> Is this backwards compatible (i.e. would it work with older version of
>>>> ffmpeg)? I have some local changes to make VTK work with the latest
>>>> ffmpeg as well as older versions. If yours is not backwards
>>>> compatible, I'll probably ignore it and commit my stuff. Otherwise, I
>>>> can compare the two codes and commit the one that looks better.
>>>>
>>>> -berk
>>>>
>>>> On Tue, Dec 1, 2009 at 3:47 PM, Nicolas Rannou
>>>> <Nicolas_Rannou at hms.harvard.edu>   wrote:
>>>>
>>>>
>>>>>
>>>>> Hello,
>>>>>
>>>>> so far, we have to use old versions of FFMPEG in order to make it
>>>>> usable
>>>>> with vtkFFMPEGWriter.cxx.
>>>>> here is a solution to use FFMPEG latest release in VTK (note that we
>>>>> checked
>>>>> with ffmpeg folks and we only used LGPL components).
>>>>>
>>>>> It has been tested on Linux and Mac so far.
>>>>>
>>>>> You only need to replace:
>>>>>  - FindFFMPEG.cmake in /VTK/CMake/
>>>>>  - CMakeLists.txt in /VTK/IO/
>>>>>  - vtkFFMPEGWriter.cxx in /VTK/IO/
>>>>>
>>>>> Would it be possible to integrate it in VTK? Indeed, the previous
>>>>> FFMPEG
>>>>> working version is more than 2 years old and it would be nice to
>>>>> upgrade
>>>>> to
>>>>> the next versions. I am not sure if old versions of ffmpeg with vtk
>>>>> properly
>>>>> work on mac, and windows...
>>>>> Since VTK is a visualization tool, easily recording video using FFMPEG
>>>>> would
>>>>> be very usefull!!!
>>>>>
>>>>> Few days back, I also asked if it was possible to add:
>>>>> SET( VTK_USE_FFMPEG_ENCODER "@VTK_USE_FFMPEG_ENCODER@" ) in
>>>>> /VTK/VTKConfig.cmake.in
>>>>> indeed, it appears that this variable is missing.
>>>>>
>>>>> Do I need to open a request/bug on Mantis for that?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Nicolas
>>>>>
>>>>>
>>>>> Nicolas Rannou wrote:
>>>>>
>>>>>
>>>>>>
>>>>>> Mathieu Malaterre wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> On Tue, Dec 1, 2009 at 3:36 PM, David E DeMarle
>>>>>>> <dave.demarle at kitware.com>   wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> The recommended way to get ffmpeg to work with vtk is to download
>>>>>>>> the
>>>>>>>> old version of ffmpeg that is known to work with VTK from from
>>>>>>>> http://www.vtk.org/VTK/resources/software.html#addons, and follow
>>>>>>>> the
>>>>>>>> directions in the README.
>>>>>>>>
>>>>>>>> If you need to use a modern ffmpeg then FFMPEG_INCLUDE should point
>>>>>>>> to
>>>>>>>> a directory that has ffmpeg/avformat.h in it. If you can't find that
>>>>>>>> in /usr/include, find out where ubuntu's ffmpeg package puts
>>>>>>>> it.Note,
>>>>>>>> some linux distributions have separate developer and user packages
>>>>>>>> and
>>>>>>>> you generally have to install the developer package to get the
>>>>>>>> header
>>>>>>>> files, but I do not suspect that is the problem in this case.
>>>>>>>>
>>>>>>>> You will also have to change the vtk ffmpeg exporter class to work
>>>>>>>> with the new ffmpeg library. I recall seeing a patch on the mailing
>>>>>>>> list or the bug tracker that does that, but I can't seem to track it
>>>>>>>> down right now.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> debian is using this one:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> http://patch-tracker.debian.org/patch/misc/view/vtk/5.2.1-13/IO/vtkFFMPEGWriter.cxx
>>>>>>>
>>>>>>> HTH
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> We just fixed this in linux.
>>>>>> You should remplace
>>>>>>
>>>>>> -FindFFMPEG.cmake in VTK/CMake/
>>>>>> -CMakeLists in VTK/IO/
>>>>>> -vtkFFMPEGWriter.cxx in VTK/IO/
>>>>>>
>>>>>> We still have to check that it works properly in mac and windows...
>>>>>>
>>>>>> HTH
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> IF(VTK_USE_METAIO)
>>>>>  SET(_VTK_METAIO_LIB vtkmetaio)
>>>>>  SET(_VTK_METAIO_SOURCES vtkMetaImageReader.cxx vtkMetaImageWriter.cxx
>>>>> )
>>>>> ELSE(VTK_USE_METAIO)
>>>>>  SET(_VTK_METAIO_LIB)
>>>>>  SET(_VTK_METAIO_SOURCES)
>>>>> ENDIF(VTK_USE_METAIO)
>>>>>
>>>>> SET(KIT IO)
>>>>> SET(UKIT IO)
>>>>> SET(KIT_TCL_LIBS vtkFilteringTCL)
>>>>> SET(KIT_PYTHON_LIBS vtkFilteringPythonD)
>>>>> SET(KIT_JAVA_LIBS vtkFilteringJava)
>>>>> SET(KIT_INTERFACE_LIBRARIES vtkFiltering)
>>>>> SET(KIT_LIBS vtkDICOMParser vtkNetCDF ${_VTK_METAIO_LIB} vtksqlite
>>>>>  ${VTK_PNG_LIBRARIES} ${VTK_ZLIB_LIBRARIES} ${VTK_JPEG_LIBRARIES}
>>>>>  ${VTK_TIFF_LIBRARIES} ${VTK_EXPAT_LIBRARIES}
>>>>>  ${KWSYS_NAMESPACE})
>>>>>
>>>>> SET( Kit_SRCS
>>>>> vtkAbstractParticleWriter.cxx
>>>>> vtkAVSucdReader.cxx
>>>>> vtkBMPReader.cxx
>>>>> vtkBMPWriter.cxx
>>>>> vtkBYUReader.cxx
>>>>> vtkBYUWriter.cxx
>>>>> vtkBase64InputStream.cxx
>>>>> vtkBase64OutputStream.cxx
>>>>> vtkBase64Utilities.cxx
>>>>> vtkCGMWriter.cxx
>>>>> vtkChacoReader.cxx
>>>>> vtkCosmoReader.cxx
>>>>> vtkDEMReader.cxx
>>>>> vtkDICOMImageReader.cxx
>>>>> vtkDataCompressor.cxx
>>>>> vtkDataObjectReader.cxx
>>>>> vtkDataObjectWriter.cxx
>>>>> vtkDataReader.cxx
>>>>> vtkDataSetReader.cxx
>>>>> vtkDataSetWriter.cxx
>>>>> vtkDataWriter.cxx
>>>>> vtkDelimitedTextWriter.cxx
>>>>> vtkEnSight6BinaryReader.cxx
>>>>> vtkEnSight6Reader.cxx
>>>>> vtkEnSightGoldBinaryReader.cxx
>>>>> vtkEnSightGoldReader.cxx
>>>>> vtkEnSightMasterServerReader.cxx
>>>>> vtkEnSightReader.cxx
>>>>> vtkFLUENTReader.cxx
>>>>> vtkFacetWriter.cxx
>>>>> vtkGenericDataObjectReader.cxx
>>>>> vtkGenericDataObjectWriter.cxx
>>>>> vtkGESignaReader.cxx
>>>>> vtkGAMBITReader.cxx
>>>>> vtkGaussianCubeReader.cxx
>>>>> vtkGenericEnSightReader.cxx
>>>>> vtkGenericMovieWriter.cxx
>>>>> vtkGlobFileNames.cxx
>>>>> vtkGraphReader.cxx
>>>>> vtkGraphWriter.cxx
>>>>> vtkIVWriter.cxx
>>>>> vtkImageReader.cxx
>>>>> vtkImageReader2.cxx
>>>>> vtkImageReader2Collection.cxx
>>>>> vtkImageReader2Factory.cxx
>>>>> vtkImageWriter.cxx
>>>>> vtkInputStream.cxx
>>>>> vtkJavaScriptDataWriter.cxx
>>>>> vtkJPEGReader.cxx
>>>>> vtkJPEGWriter.cxx
>>>>> vtkMFIXReader.cxx
>>>>> vtkMaterialLibrary.cxx
>>>>> vtkMCubesReader.cxx
>>>>> vtkMCubesWriter.cxx
>>>>> vtkMedicalImageProperties.cxx
>>>>> vtkMedicalImageReader2.cxx
>>>>> ${_VTK_METAIO_SOURCES}
>>>>> vtkMINCImageAttributes.cxx
>>>>> vtkMINCImageReader.cxx
>>>>> vtkMINCImageWriter.cxx
>>>>> vtkMultiBlockPLOT3DReader.cxx
>>>>> vtkMoleculeReaderBase.cxx
>>>>> vtkNetCDFCOARDSReader.cxx
>>>>> vtkNetCDFReader.cxx
>>>>> vtkOBJReader.cxx
>>>>> vtkOutputStream.cxx
>>>>> vtkOpenFOAMReader.cxx
>>>>> vtkPDBReader.cxx
>>>>> vtkPLOT3DReader.cxx
>>>>> vtkPLY.cxx
>>>>> vtkPLYReader.cxx
>>>>> vtkPLYWriter.cxx
>>>>> vtkPNGReader.cxx
>>>>> vtkPNGWriter.cxx
>>>>> vtkPNMReader.cxx
>>>>> vtkPNMWriter.cxx
>>>>> vtkParticleReader.cxx
>>>>> vtkPolyDataReader.cxx
>>>>> vtkPolyDataWriter.cxx
>>>>> vtkPostScriptWriter.cxx
>>>>> vtkRectilinearGridReader.cxx
>>>>> vtkRectilinearGridWriter.cxx
>>>>> vtkRTXMLPolyDataReader.cxx
>>>>> vtkRowQuery.cxx
>>>>> vtkSESAMEReader.cxx
>>>>> vtkShaderCodeLibrary.cxx
>>>>> vtkSLACParticleReader.cxx
>>>>> vtkSLACReader.cxx
>>>>> vtkSQLDatabase.cxx
>>>>> vtkSQLDatabaseSchema.cxx
>>>>> vtkSQLiteDatabase.cxx
>>>>> vtkSQLiteQuery.cxx
>>>>> vtkSQLQuery.cxx
>>>>> vtkSLCReader.cxx
>>>>> vtkSTLReader.cxx
>>>>> vtkSTLWriter.cxx
>>>>> vtkSimplePointsReader.cxx
>>>>> vtkSortFileNames.cxx
>>>>> vtkStructuredGridReader.cxx
>>>>> vtkStructuredGridWriter.cxx
>>>>> vtkStructuredPointsReader.cxx
>>>>> vtkStructuredPointsWriter.cxx
>>>>> vtkTableReader.cxx
>>>>> vtkTableWriter.cxx
>>>>> vtkTecplotReader.cxx
>>>>> vtkTIFFReader.cxx
>>>>> vtkTIFFWriter.cxx
>>>>> vtkTreeReader.cxx
>>>>> vtkTreeWriter.cxx
>>>>> vtkUGFacetReader.cxx
>>>>> vtkUnstructuredGridReader.cxx
>>>>> vtkUnstructuredGridWriter.cxx
>>>>> vtkVolume16Reader.cxx
>>>>> vtkVolumeReader.cxx
>>>>> vtkWriter.cxx
>>>>> vtkXMLCompositeDataReader.cxx
>>>>> vtkXMLDataParser.cxx
>>>>> vtkXMLDataReader.cxx
>>>>> vtkXMLDataSetWriter.cxx
>>>>> vtkXMLFileReadTester.cxx
>>>>> vtkXMLHierarchicalBoxDataReader.cxx
>>>>> vtkXMLHierarchicalDataReader.cxx
>>>>> vtkXMLImageDataReader.cxx
>>>>> vtkXMLImageDataWriter.cxx
>>>>> vtkXMLHyperOctreeReader.cxx
>>>>> vtkXMLHyperOctreeWriter.cxx
>>>>> vtkXMLMaterial.cxx
>>>>> vtkXMLMaterialParser.cxx
>>>>> vtkXMLMaterialReader.cxx
>>>>> vtkXMLMultiBlockDataReader.cxx
>>>>> vtkXMLMultiGroupDataReader.cxx
>>>>> vtkXMLCompositeDataWriter.cxx
>>>>> vtkXMLMultiBlockDataWriter.cxx
>>>>> vtkXMLHierarchicalBoxDataWriter.cxx
>>>>> vtkXMLPDataReader.cxx
>>>>> vtkXMLPDataSetWriter.cxx
>>>>> vtkXMLPDataWriter.cxx
>>>>> vtkXMLPImageDataReader.cxx
>>>>> vtkXMLPImageDataWriter.cxx
>>>>> vtkXMLPPolyDataReader.cxx
>>>>> vtkXMLPPolyDataWriter.cxx
>>>>> vtkXMLPRectilinearGridReader.cxx
>>>>> vtkXMLPRectilinearGridWriter.cxx
>>>>> vtkXMLPStructuredDataReader.cxx
>>>>> vtkXMLPStructuredDataWriter.cxx
>>>>> vtkXMLPStructuredGridReader.cxx
>>>>> vtkXMLPStructuredGridWriter.cxx
>>>>> vtkXMLPUnstructuredDataReader.cxx
>>>>> vtkXMLPUnstructuredDataWriter.cxx
>>>>> vtkXMLPUnstructuredGridReader.cxx
>>>>> vtkXMLPUnstructuredGridWriter.cxx
>>>>> vtkXMLParser.cxx
>>>>> vtkXMLPolyDataReader.cxx
>>>>> vtkXMLPolyDataWriter.cxx
>>>>> vtkXMLReader.cxx
>>>>> vtkXMLRectilinearGridReader.cxx
>>>>> vtkXMLRectilinearGridWriter.cxx
>>>>> vtkXMLShader.cxx
>>>>> vtkXMLStructuredDataReader.cxx
>>>>> vtkXMLStructuredDataWriter.cxx
>>>>> vtkXMLStructuredGridReader.cxx
>>>>> vtkXMLStructuredGridWriter.cxx
>>>>> vtkXMLUnstructuredDataReader.cxx
>>>>> vtkXMLUnstructuredDataWriter.cxx
>>>>> vtkXMLUnstructuredGridReader.cxx
>>>>> vtkXMLUnstructuredGridWriter.cxx
>>>>> vtkXMLUtilities.cxx
>>>>> vtkXMLWriter.cxx
>>>>> vtkXMLWriterC.cxx
>>>>> vtkXYZMolReader.cxx
>>>>> vtkZLibDataCompressor.cxx
>>>>> )
>>>>>
>>>>> SET_SOURCE_FILES_PROPERTIES(
>>>>> vtkAbstractParticleWriter
>>>>> vtkDataCompressor
>>>>> vtkEnSightReader
>>>>> vtkGenericMovieWriter
>>>>> vtkMoleculeReaderBase
>>>>> vtkRowQuery
>>>>> vtkSQLDatabase
>>>>> vtkSQLQuery
>>>>> vtkVolumeReader
>>>>> vtkWriter
>>>>> vtkXMLCompositeDataReader.cxx
>>>>> vtkXMLCompositeDataWriter
>>>>> vtkXMLDataReader
>>>>> vtkXMLPDataReader
>>>>> vtkXMLPDataWriter
>>>>> vtkXMLPStructuredDataReader
>>>>> vtkXMLPStructuredDataWriter
>>>>> vtkXMLPUnstructuredDataReader
>>>>> vtkXMLPUnstructuredDataWriter
>>>>> vtkXMLReader
>>>>> vtkXMLStructuredDataReader
>>>>> vtkXMLStructuredDataWriter
>>>>> vtkXMLUnstructuredDataReader
>>>>> vtkXMLUnstructuredDataWriter
>>>>> vtkXMLWriter
>>>>> ABSTRACT
>>>>> )
>>>>>
>>>>> INSTALL(FILES
>>>>>  ${CMAKE_CURRENT_SOURCE_DIR}/vtkMINC.h
>>>>>  DESTINATION ${VTK_INSTALL_INCLUDE_DIR_CM24}
>>>>>  COMPONENT Development
>>>>>  )
>>>>>
>>>>> # Set up dependencies on the header files generated by
>>>>> # Utilities/MaterialLibrary
>>>>> SET_SOURCE_FILES_PROPERTIES(vtkXMLShader.cxx PROPERTIES OBJECT_DEPENDS
>>>>>  ${MATERIAL_LIBRARY_SHADER_MACRO_HEADER})
>>>>> SET_SOURCE_FILES_PROPERTIES(vtkXMLMaterial.cxx PROPERTIES
>>>>> OBJECT_DEPENDS
>>>>>  ${MATERIAL_LIBRARY_MATERIAL_MACRO_HEADER})
>>>>>
>>>>> IF(WIN32)
>>>>>  IF(VTK_USE_VIDEO_FOR_WINDOWS)
>>>>>    SET(Kit_SRCS ${Kit_SRCS} vtkAVIWriter.cxx)
>>>>>    SET(KIT_LIBS ${KIT_LIBS} vfw32)
>>>>>  ENDIF(VTK_USE_VIDEO_FOR_WINDOWS)
>>>>> ENDIF(WIN32)
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # FFMPEG
>>>>> # If the ffmpeg library is available, compile vtkFFMPEGWriter.
>>>>> IF (VTK_USE_FFMPEG_ENCODER)
>>>>>  INCLUDE_DIRECTORIES(${FFMPEG_INCLUDE_DIR})
>>>>>  SET(Kit_SRCS ${Kit_SRCS} vtkFFMPEGWriter.cxx)
>>>>>  SET(KIT_LIBS ${KIT_LIBS} ${FFMPEG_LIBRARIES}
>>>>> #    ${FFMPEG_avformat_LIBRARY}
>>>>> #    ${FFMPEG_avcodec_LIBRARY}
>>>>> #    ${FFMPEG_avutil_LIBRARY})
>>>>> )
>>>>> ENDIF (VTK_USE_FFMPEG_ENCODER)
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # MPEG2
>>>>> #
>>>>> # Only include the vtkMPEG2Writer if the user has explicitly turned on
>>>>> # VTK_USE_MPEG2_ENCODER. If so, user should also have set
>>>>> # vtkMPEG2Encode_INCLUDE_PATH and vtkMPEG2Encode_LIBRARIES.
>>>>> #
>>>>> IF (VTK_USE_MPEG2_ENCODER)
>>>>>  INCLUDE_DIRECTORIES(${vtkMPEG2Encode_INCLUDE_PATH})
>>>>>  SET(Kit_SRCS ${Kit_SRCS} vtkMPEG2Writer.cxx)
>>>>>  SET(KIT_LIBS ${KIT_LIBS} ${vtkMPEG2Encode_LIBRARIES})
>>>>> ENDIF (VTK_USE_MPEG2_ENCODER)
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # PostgreSQL
>>>>> # build the PostgreSQL database backend (if the PostgresSQL and pqxx
>>>>> libraries are available)
>>>>> #
>>>>> OPTION( VTK_USE_POSTGRES "Build the PostgreSQL driver for
>>>>> vtkSQLDatabase."
>>>>> OFF)
>>>>> MARK_AS_ADVANCED(VTK_USE_POSTGRES)
>>>>> IF ( VTK_USE_POSTGRES )
>>>>>  FIND_PACKAGE( POSTGRES REQUIRED )
>>>>>  IF ( BUILD_TESTING )
>>>>>    SET ( VTK_PSQL_TEST_URL "" CACHE STRING "A URL for a PostgreSQL
>>>>> server
>>>>> of
>>>>> the form psql://[[username[:password]@]hostname[:port]]/[dbname]" )
>>>>>  ENDIF ( BUILD_TESTING )
>>>>> ENDIF ( VTK_USE_POSTGRES )
>>>>> #
>>>>> # Only include the Postgres backend if the user has explicitly turned
>>>>> on
>>>>> # VTK_USE_POSTGRES. If so, user must also have set POSTGRES_LIBRARIES
>>>>> # and POSTGRES_INCLUDE_DIRECTORIES to valid values.
>>>>> IF ( VTK_USE_POSTGRES AND POSTGRES_FOUND )
>>>>>  INCLUDE_DIRECTORIES( ${POSTGRES_INCLUDE_DIRECTORIES} )
>>>>>  SET( Kit_SRCS
>>>>>    ${Kit_SRCS}
>>>>>    vtkPostgreSQLDatabase.cxx
>>>>>    vtkPostgreSQLQuery.cxx
>>>>>  )
>>>>>  LINK_LIBRARIES( ${POSTGRES_LIBRARIES} )
>>>>> ENDIF ( VTK_USE_POSTGRES AND POSTGRES_FOUND )
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # MySQL
>>>>> # build the MySQL database backend (if the MySQL libraries are
>>>>> available)
>>>>> #
>>>>> OPTION( VTK_USE_MYSQL "Build the MySQL driver for vtkSQLDatabase." OFF)
>>>>> MARK_AS_ADVANCED(VTK_USE_MYSQL)
>>>>> IF ( VTK_USE_MYSQL )
>>>>>  FIND_PACKAGE( MySQL REQUIRED )
>>>>>  IF ( BUILD_TESTING )
>>>>>    SET ( VTK_MYSQL_TEST_URL "" CACHE STRING "A URL for a MySQL server
>>>>> of
>>>>> the
>>>>> form mysql://[[username[:password]@]hostname[:port]]/[dbname]" )
>>>>>  ENDIF ( BUILD_TESTING )
>>>>> ENDIF ( VTK_USE_MYSQL )
>>>>> #
>>>>> # Only include the MySQL backend if the user has explicitly turned on
>>>>> # VTK_USE_MYSQL. If so, user must also have set MYSQL_LIBRARIES
>>>>> # and MYSQL_INCLUDE_DIRECTORIES to valid values.
>>>>> IF ( VTK_USE_MYSQL AND MYSQL_FOUND )
>>>>>  INCLUDE_DIRECTORIES( ${MYSQL_INCLUDE_DIRECTORIES} )
>>>>>  SET( Kit_SRCS
>>>>>    ${Kit_SRCS}
>>>>>    vtkMySQLDatabase.cxx
>>>>>    vtkMySQLQuery.cxx
>>>>>  )
>>>>>  LINK_LIBRARIES( ${MYSQL_LIBRARY}  ${MYSQL_EXTRA_LIBRARIES} )
>>>>> ENDIF ( VTK_USE_MYSQL AND MYSQL_FOUND )
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # ODBC
>>>>> # Build the ODBC database backend only if ODBC driver manager is
>>>>> available
>>>>> #
>>>>> OPTION (VTK_USE_ODBC "Build the ODBC database interface" OFF)
>>>>> MARK_AS_ADVANCED(VTK_USE_ODBC)
>>>>> IF ( VTK_USE_ODBC )
>>>>>  FIND_PACKAGE( ODBC REQUIRED )
>>>>>  IF ( BUILD_TESTING )
>>>>>    SET ( VTK_ODBC_TEST_DSN "" CACHE STRING "A data source name (DSN)
>>>>> for
>>>>> an
>>>>> ODBC database connection to use for testing." )
>>>>>  ENDIF ( BUILD_TESTING )
>>>>> ENDIF ( VTK_USE_ODBC )
>>>>>
>>>>> IF ( VTK_USE_ODBC AND ODBC_FOUND )
>>>>>  INCLUDE_DIRECTORIES( ${ODBC_INCLUDE_DIRECTORIES} )
>>>>>  SET( Kit_SRCS
>>>>>    ${Kit_SRCS}
>>>>>    vtkODBCDatabase.cxx
>>>>>    vtkODBCQuery.cxx
>>>>>    )
>>>>>  LINK_LIBRARIES( ${ODBC_LIBRARIES} )
>>>>>  # Note: Strange things happen on 64-bit machines.  We must compile
>>>>>  # ODBC code with -DBUILD_REAL_64_BIT_MODE in order to have the driver
>>>>>  # work properly.
>>>>>  INCLUDE(CheckTypeSize)
>>>>>  CHECK_TYPE_SIZE("unsigned long" CMAKE_SIZEOF_LONG)
>>>>>  IF ( "${CMAKE_SIZEOF_LONG}" STREQUAL "8" )
>>>>> #    MESSAGE( STATUS "Building ODBC driver with 64-bit flag." )
>>>>>    ADD_DEFINITIONS( -DBUILD_REAL_64_BIT_MODE )
>>>>>  ENDIF ( "${CMAKE_SIZEOF_LONG}"  STREQUAL "8" )
>>>>> ENDIF ( VTK_USE_ODBC AND ODBC_FOUND )
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # Add these classes only if vtkTypeUInt64Array exists
>>>>> IF(VTK_HAS_UINT64_ARRAY)
>>>>>  SET(Kit_SRCS
>>>>>    ${Kit_SRCS}
>>>>>    vtkRowQueryToTable.cxx
>>>>>  )
>>>>> ENDIF(VTK_HAS_UINT64_ARRAY)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> SET_SOURCE_FILES_PROPERTIES(
>>>>>  vtkPLY
>>>>>  vtkXMLWriterC
>>>>>  WRAP_EXCLUDE
>>>>> )
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # N-WAY ARRAYS READER AND WRITER
>>>>> IF(VTK_USE_N_WAY_ARRAYS)
>>>>>
>>>>>  SET(Kit_SRCS
>>>>>    ${Kit_SRCS}
>>>>>    vtkArrayReader.cxx
>>>>>    vtkArrayWriter.cxx
>>>>>    )
>>>>>
>>>>> ENDIF(VTK_USE_N_WAY_ARRAYS)
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>>
>>>>> SET(Kit_EXTRA_SRCS)
>>>>> SET(Kit_EXTRA_CMDS)
>>>>> SET(Kit_TCL_EXTRA_SRCS)
>>>>> SET(Kit_PYTHON_EXTRA_SRCS)
>>>>> SET(Kit_JAVA_EXTRA_SRCS)
>>>>> SET(KIT_TCL_DEPS)
>>>>> SET(KIT_PYTHON_DEPS)
>>>>> SET(KIT_JAVA_DEPS)
>>>>>
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # Include CMake code common to all kits.
>>>>> INCLUDE(${VTK_CMAKE_DIR}/KitCommonBlock.cmake)
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>> # Add target dependency.
>>>>> ADD_DEPENDENCIES(vtkIO
>>>>>  vtkMaterialLibraryConfiguredFiles)
>>>>>
>>>>>
>>>>> #-----------------------------------------------------------------------------
>>>>>
>>>>> _______________________________________________
>>>>> Powered by www.kitware.com
>>>>>
>>>>> Visit other Kitware open-source projects at
>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>
>>>>> Please keep messages on-topic and check the VTK FAQ at:
>>>>> http://www.vtk.org/Wiki/VTK_FAQ
>>>>>
>>>>> Follow this link to subscribe/unsubscribe:
>>>>> http://www.vtk.org/mailman/listinfo/vtkusers
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Powered by www.kitware.com
>>>>
>>>> Visit other Kitware open-source projects at
>>>> http://www.kitware.com/opensource/opensource.html
>>>>
>>>> Follow this link to subscribe/unsubscribe:
>>>> http://www.vtk.org/mailman/listinfo/vtk-developers
>>>>
>>>>
>>>>
>>>
>>>
>
>



More information about the vtkusers mailing list