From: <ai...@us...> - 2009-03-11 02:50:21
|
Revision: 9713 http://plplot.svn.sourceforge.net/plplot/?rev=9713&view=rev Author: airwin Date: 2009-03-11 02:50:16 +0000 (Wed, 11 Mar 2009) Log Message: ----------- Generate *.rc files using template files and cmake logic. Has been tested in a variety of cases including when several devices out of many implemented in a device driver are turned off, and when all the devices in a device driver have been turned off. Modified Paths: -------------- trunk/cmake/modules/drivers-finish.cmake Added Paths: ----------- trunk/drivers/cairo.rc.in trunk/drivers/cgm.rc.in trunk/drivers/dg300.rc.in trunk/drivers/gcw.rc.in trunk/drivers/gd.rc.in trunk/drivers/hpgl.rc.in trunk/drivers/impress.rc.in trunk/drivers/ljii.rc.in trunk/drivers/ljiip.rc.in trunk/drivers/mem.rc.in trunk/drivers/null.rc.in trunk/drivers/pbm.rc.in trunk/drivers/plmeta.rc.in trunk/drivers/ps.rc.in trunk/drivers/pstex.rc.in trunk/drivers/psttf.rc.in trunk/drivers/qt.rc.in trunk/drivers/svg.rc.in trunk/drivers/tek.rc.in trunk/drivers/wxwidgets.rc.in trunk/drivers/xfig.rc.in trunk/drivers/xwin.rc.in Modified: trunk/cmake/modules/drivers-finish.cmake =================================================================== --- trunk/cmake/modules/drivers-finish.cmake 2009-03-11 02:48:05 UTC (rev 9712) +++ trunk/cmake/modules/drivers-finish.cmake 2009-03-11 02:50:16 UTC (rev 9713) @@ -38,6 +38,12 @@ endif(DRIVER STREQUAL "${DRIVER_IN_LIST}") endforeach(DRIVER_IN_LIST ${DRIVERS_LIST}) if(APPEND_DRIVER) + if(ENABLE_DYNDRIVERS) + file(STRINGS + ${CMAKE_SOURCE_DIR}/drivers/${DRIVER}.rc.in + ${DRIVER}_INFO + ) + endif(ENABLE_DYNDRIVERS) set(DRIVERS_LIST ${DRIVERS_LIST} ${DRIVER}) if(DRIVER STREQUAL "wxwidgets") set(${DRIVER}_SOURCE @@ -72,3 +78,38 @@ endif(APPEND_DRIVER) endif(PLD_${DEVICE}) endforeach(DRIVERS_DEVICE) + +foreach(DRIVERS_DEVICE ${DRIVERS_DEVICE_LIST}) + string(REGEX REPLACE "^(.*):.*:.*$" "\\1" DEVICE ${DRIVERS_DEVICE}) + string(REGEX REPLACE "^.*:(.*):.*$" "\\1" DRIVER ${DRIVERS_DEVICE}) + if(${DRIVER}_INFO) + if(NOT PLD_${DEVICE}) + set(DEVICE_INFO_MATCHED) + # Must remove corresponding data from ${DRIVER}_INFO + #message("DEVICE = ${DEVICE}") + foreach(DEVICE_INFO ${${DRIVER}_INFO}) + string(REGEX REPLACE "^(.*):.*:.*:.*:.*:.*$" "\\1" DEVICE_INFO_NAME ${DEVICE_INFO}) + #message("DEVICE_INFO_NAME = ${DEVICE_INFO_NAME}") + if(DEVICE STREQUAL "${DEVICE_INFO_NAME}") + #There should one and only one match. + set(DEVICE_INFO_MATCHED ${DEVICE_INFO}) + endif(DEVICE STREQUAL "${DEVICE_INFO_NAME}") + endforeach(DEVICE_INFO ${${DRIVER}_INFO}) + if(DEVICE_INFO_MATCHED) + list(REMOVE_ITEM ${DRIVER}_INFO ${DEVICE_INFO_MATCHED}) + else(DEVICE_INFO_MATCHED) + message(FATAL_ERROR "${CMAKE_SOURCE_DIR}/drivers/${DRIVER}.rc.in not consistent with ${CMAKE_SOURCE_DIR}/cmake/modules/drivers-init.cmake") + endif(DEVICE_INFO_MATCHED) + endif(NOT PLD_${DEVICE}) + endif(${DRIVER}_INFO) +endforeach(DRIVERS_DEVICE) + +foreach(DRIVERS_DEVICE ${DRIVERS_DEVICE_LIST}) + string(REGEX REPLACE "^.*:(.*):.*$" "\\1" DRIVER ${DRIVERS_DEVICE}) + if(${DRIVER}_INFO) + file(WRITE ${CMAKE_BINARY_DIR}/drivers/${DRIVER}.rc "") + foreach(DEVICE_INFO ${${DRIVER}_INFO}) + file(APPEND ${CMAKE_BINARY_DIR}/drivers/${DRIVER}.rc "${DEVICE_INFO}\n") + endforeach(DEVICE_INFO ${${DRIVER}_INFO}) + endif(${DRIVER}_INFO) +endforeach(DRIVERS_DEVICE ${DRIVERS_DEVICE_LIST}) Added: trunk/drivers/cairo.rc.in =================================================================== --- trunk/drivers/cairo.rc.in (rev 0) +++ trunk/drivers/cairo.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,7 @@ +xcairo:Cairo X Windows Driver:1:cairo:59:xcairo +pdfcairo:Cairo PDF Driver:0:cairo:60:pdfcairo +pscairo:Cairo PS Driver:0:cairo:61:pscairo +svgcairo:Cairo SVG Driver:0:cairo:62:svgcairo +pngcairo:Cairo PNG Driver:0:cairo:63:pngcairo +memcairo:Cairo Memory Driver:0:cairo:64:memcairo +extcairo:Cairo External Context Driver:0:cairo:65:extcairo Property changes on: trunk/drivers/cairo.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/cgm.rc.in =================================================================== --- trunk/drivers/cgm.rc.in (rev 0) +++ trunk/drivers/cgm.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +cgm:CGM file:0:cgm:44:cgm Property changes on: trunk/drivers/cgm.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/dg300.rc.in =================================================================== --- trunk/drivers/dg300.rc.in (rev 0) +++ trunk/drivers/dg300.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +dg300:DG300 Terminal:0:dg300:25:dg300 Property changes on: trunk/drivers/dg300.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/gcw.rc.in =================================================================== --- trunk/drivers/gcw.rc.in (rev 0) +++ trunk/drivers/gcw.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +gcw:Gnome Canvas Widget:1:gcw:10:gcw Property changes on: trunk/drivers/gcw.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/gd.rc.in =================================================================== --- trunk/drivers/gd.rc.in (rev 0) +++ trunk/drivers/gd.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,3 @@ +png:PNG file:0:gd:39:png +jpeg:JPEG file:0:gd:40:jpeg +gif:GIF file:0:gd:47:gif Property changes on: trunk/drivers/gd.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/hpgl.rc.in =================================================================== --- trunk/drivers/hpgl.rc.in (rev 0) +++ trunk/drivers/hpgl.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,3 @@ +hp7470:HP 7470 Plotter File (HPGL Cartridge, Small Plotter):0:hpgl:34:hp7470 +hp7580:HP 7580 Plotter File (Large Plotter):0:hpgl:35:hp7580 +lj_hpgl:HP Laserjet III, HPGL emulation mode:0:hpgl:36:lj_hpgl Property changes on: trunk/drivers/hpgl.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/impress.rc.in =================================================================== --- trunk/drivers/impress.rc.in (rev 0) +++ trunk/drivers/impress.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +imp:Impress File:0:impress:37:imp Property changes on: trunk/drivers/impress.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/ljii.rc.in =================================================================== --- trunk/drivers/ljii.rc.in (rev 0) +++ trunk/drivers/ljii.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +ljii:LaserJet II Bitmap File (150 dpi):0:ljii:33:ljii Property changes on: trunk/drivers/ljii.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/ljiip.rc.in =================================================================== --- trunk/drivers/ljiip.rc.in (rev 0) +++ trunk/drivers/ljiip.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +ljiip:LaserJet IIp/deskjet compressed graphics:0:ljiip:32:ljiip Property changes on: trunk/drivers/ljiip.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/mem.rc.in =================================================================== --- trunk/drivers/mem.rc.in (rev 0) +++ trunk/drivers/mem.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +mem:User-supplied memory device:-1:mem:46:mem Property changes on: trunk/drivers/mem.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/null.rc.in =================================================================== --- trunk/drivers/null.rc.in (rev 0) +++ trunk/drivers/null.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +null:Null device:-1:null:42:null Property changes on: trunk/drivers/null.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/pbm.rc.in =================================================================== --- trunk/drivers/pbm.rc.in (rev 0) +++ trunk/drivers/pbm.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +pbm:PDB (PPM) Driver:0:pbm:38:pbm Property changes on: trunk/drivers/pbm.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/plmeta.rc.in =================================================================== --- trunk/drivers/plmeta.rc.in (rev 0) +++ trunk/drivers/plmeta.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +plmeta:PLplot Native Meta-File:0:plmeta:26:plm Property changes on: trunk/drivers/plmeta.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/ps.rc.in =================================================================== --- trunk/drivers/ps.rc.in (rev 0) +++ trunk/drivers/ps.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,2 @@ +ps:PostScript File (monochrome):0:ps:29:psm +psc:PostScript File (color):0:ps:30:psc Property changes on: trunk/drivers/ps.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/pstex.rc.in =================================================================== --- trunk/drivers/pstex.rc.in (rev 0) +++ trunk/drivers/pstex.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +pstex:Combined Postscript/LaTeX files:0:pstex:41:pstex Property changes on: trunk/drivers/pstex.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/psttf.rc.in =================================================================== --- trunk/drivers/psttf.rc.in (rev 0) +++ trunk/drivers/psttf.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,2 @@ +psttf:PostScript File (monochrome):0:psttf:55:psttfm +psttfc:PostScript File (color):0:psttf:56:psttfc Property changes on: trunk/drivers/psttf.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/qt.rc.in =================================================================== --- trunk/drivers/qt.rc.in (rev 0) +++ trunk/drivers/qt.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,9 @@ +bmpqt:Qt Windows bitmap driver:0:qt:66:bmpqt +jpgqt:Qt jpg driver:0:qt:67:jpgqt +pngqt:Qt png driver:0:qt:68:pngqt +ppmqt:Qt ppm driver:0:qt:69:ppmqt +tiffqt:Qt tiff driver:0:qt:70:tiffqt +svgqt:Qt SVG driver:0:qt:71:svgqt +qtwidget:Qt Widget:1:qt:72:qtwidget +epsqt:Qt EPS driver:0:qt:73:epsqt +pdfqt:Qt PDF driver:0:qt:74:pdfqt Property changes on: trunk/drivers/qt.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/svg.rc.in =================================================================== --- trunk/drivers/svg.rc.in (rev 0) +++ trunk/drivers/svg.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +svg:Scalable Vector Graphics (SVG 1.1):1:svg:57:svg Property changes on: trunk/drivers/svg.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/tek.rc.in =================================================================== --- trunk/drivers/tek.rc.in (rev 0) +++ trunk/drivers/tek.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,6 @@ +conex:Conex vt320/tek emulator:1:tek:24:conex +mskermit:MS-Kermit emulator:1:tek:21:mskermit +tek4107f:Tektronix File (4105/4107):0:tek:28:tek4107f +versaterm:Versaterm vt100/tek emulator:1:tek:22:versaterm +vlt:VLT vt100/tek emulator:1:tek:23:vlt +xterm:Xterm Window:1:tek:18:xterm Property changes on: trunk/drivers/tek.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/wxwidgets.rc.in =================================================================== --- trunk/drivers/wxwidgets.rc.in (rev 0) +++ trunk/drivers/wxwidgets.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1,2 @@ +wxwidgets:wxWidgets Driver:1:wxwidgets:51:wxwidgets +wxpng:wxWidgets PNG Driver:0:wxwidgets:52:wxpng Property changes on: trunk/drivers/wxwidgets.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/xfig.rc.in =================================================================== --- trunk/drivers/xfig.rc.in (rev 0) +++ trunk/drivers/xfig.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +xfig:Fig file:0:xfig:31:xfig Property changes on: trunk/drivers/xfig.rc.in ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/drivers/xwin.rc.in =================================================================== --- trunk/drivers/xwin.rc.in (rev 0) +++ trunk/drivers/xwin.rc.in 2009-03-11 02:50:16 UTC (rev 9713) @@ -0,0 +1 @@ +xwin:X-Window (Xlib):1:xwin:5:xw Property changes on: trunk/drivers/xwin.rc.in ___________________________________________________________________ Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |