Revision: 6385
http://playerstage.svn.sourceforge.net/playerstage/?rev=6385&view=rev
Author: gbiggs
Date: 2008-04-24 19:58:31 -0700 (Thu, 24 Apr 2008)
Log Message:
-----------
Added the messy API version checks for the camera1394 driver
Modified Paths:
--------------
code/player/trunk/server/drivers/camera/1394/CMakeLists.txt
Modified: code/player/trunk/server/drivers/camera/1394/CMakeLists.txt
===================================================================
--- code/player/trunk/server/drivers/camera/1394/CMakeLists.txt 2008-04-24
06:25:45 UTC (rev 6384)
+++ code/player/trunk/server/drivers/camera/1394/CMakeLists.txt 2008-04-25
02:58:31 UTC (rev 6385)
@@ -1,2 +1,37 @@
-PLAYERDRIVER_OPTION (camera1394 build_camera1394 OFF "API version checks are a
mess - will do later")
-PLAYERDRIVER_ADD_DRIVER_SIMPLE (camera1394 build_camera1394 camera1394.cc
${PROJECT_SOURCE_DIR}/server/drivers/blobfinder/cmvision/conversions.c)
\ No newline at end of file
+PLAYERDRIVER_OPTION (camera1394 build_camera1394 ON)
+# PLAYERDRIVER_REQUIRE_LIB (camera1394 build_camera1394 raw1394 main "")
+SET (c1394CFlags "-DDC1394_DMA_SETUP_CAPTURE_ARGS=0")
+IF (build_camera1394)
+ SET (c1394Sources camera1394.cc
${PROJECT_SOURCE_DIR}/server/drivers/blobfinder/cmvision/conversions.c)
+
+ INCLUDE (CheckIncludeFiles)
+ CHECK_INCLUDE_FILES (dc1394/control.h haveControlH)
+ IF (haveControlH)
+ SET (c1394CFlags "-DDC1394_DMA_SETUP_CAPTURE_ARGS=20")
+ CHECK_INCLUDE_FILES (libraw1394/raw1394.h haveRaw1394H)
+ IF (haveRaw1394H)
+ SET (c1394LinkFlags "-lraw1394 -ldc1394")
+ ELSE (haveRaw1394H)
+ SET (c1394LinkFlags "-ldc1394")
+ ENDIF (haveRaw1394H)
+ ELSE (haveControlH)
+ SET (c1394LinkFlags "-lraw1394 -ldc1394_control")
+ PLAYERDRIVER_REQUIRE_HEADER (camera1394 build_camera1394
libraw1394/raw1394.h)
+ PLAYERDRIVER_REQUIRE_HEADER (camera1394 build_camera1394
libdc1394/dc1394_control.h)
+ SET (testArgsSource ${CMAKE_CURRENT_BINARY_DIR}/CMakeTmp/test_args.c)
+ FILE (WRITE ${testArgsSource}
+ "#include \"libdc1394/dc1394_control.h\"\nint main ()
{dc1394_dma_setup_capture (NULL, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL); return
0;}")
+ TRY_COMPILE (argsIs11 ${CMAKE_CURRENT_BINARY_DIR} ${testArgsSource})
+ IF (argsIs11)
+ SET (c1394CFlags "-DDC1394_DMA_SETUP_CAPTURE_ARGS=11")
+ ELSE (argsIs11)
+ FILE (WRITE ${testArgsSource}
+ "#include \"libdc1394/dc1394_control.h\"\nint main ()
{dc1394_dma_setup_capture (NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL); return
0;}")
+ TRY_COMPILE (argsIs12 ${CMAKE_CURRENT_BINARY_DIR}
${testArgsSource})
+ IF (argsIs12)
+ SET (c1394CFlags "-DDC1394_DMA_SETUP_CAPTURE_ARGS=12")
+ ENDIF (argsIs12)
+ ENDIF (argsIs11)
+ ENDIF (haveControlH)
+ENDIF (build_camera1394)
+PLAYERDRIVER_ADD_DRIVER (camera1394 build_camera1394 "" "" "${c1394LinkFlags}"
"${c1394CFlags}" ${c1394Sources})
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit