From: <ro...@us...> - 2013-01-18 16:08:31
|
Revision: 2974 http://sourceforge.net/p/nscldaq/code/2974 Author: ron-fox Date: 2013-01-18 16:08:17 +0000 (Fri, 18 Jan 2013) Log Message: ----------- Tag 10.1-100 Added Paths: ----------- tags/nscldaq-v10.1-100/ tags/nscldaq-v10.1-100/ChangeLog tags/nscldaq-v10.1-100/Makefile.am tags/nscldaq-v10.1-100/base/cvt/Makefile.am tags/nscldaq-v10.1-100/base/security/Makefile.am tags/nscldaq-v10.1-100/configure.ac tags/nscldaq-v10.1-100/daq/format/CRingTimestampedRunningScalerItem.cpp tags/nscldaq-v10.1-100/daq/format/CRingTimestampedRunningScalerItem.h tags/nscldaq-v10.1-100/daq/format/DataFormat.h tags/nscldaq-v10.1-100/daq/format/Makefile.am tags/nscldaq-v10.1-100/daq/format/ringitem.c tags/nscldaq-v10.1-100/sbs/nsclapi/Makefile.am tags/nscldaq-v10.1-100/sbs/puretcl/Makefile.am tags/nscldaq-v10.1-100/sbs/puretcl/camac.tcl tags/nscldaq-v10.1-100/sbs/readout/Makefile.am tags/nscldaq-v10.1-100/sbs/tclpackage/Makefile.am tags/nscldaq-v10.1-100/sbs/vmemodules/CADC2530.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CCAENChain.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CSIS3820.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CSIS3820.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVC32CC32.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CVME.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScaler.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScalerLRS1151.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScalerLRS1151.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEptr.h tags/nscldaq-v10.1-100/sbs/vmemodules/Makefile.am tags/nscldaq-v10.1-100/sbs/vmemodules/Nimout.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/Nimout.h tags/nscldaq-v10.1-100/sbs/vmemodules/VmeModule.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/VmeModule.h tags/nscldaq-v10.1-100/sbs/vmemodules/sis3300.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/sis3300.h tags/nscldaq-v10.1-100/sbs/vmemodules/v890.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/v890.h tags/nscldaq-v10.1-100/usb/Makefile.am tags/nscldaq-v10.1-100/usb/ccusb/Makefile.am tags/nscldaq-v10.1-100/usb/ccusb/ccusb/Makefile.am tags/nscldaq-v10.1-100/usb/vmusb/CTheApplication.cpp tags/nscldaq-v10.1-100/usb/vmusb/Makefile.am tags/nscldaq-v10.1-100/usb/vmusb/devices/CHINP.cpp tags/nscldaq-v10.1-100/usb/vmusb/devices/CTclModule.cpp tags/nscldaq-v10.1-100/usb/vmusb/vmusb/CVMUSB.cpp tags/nscldaq-v10.1-100/usb/vmusb/vmusb/CVMUSB.h tags/nscldaq-v10.1-100/usb/vmusb/vmusb/Makefile.am tags/nscldaq-v10.1-100/utilities/bufdump/Makefile.am tags/nscldaq-v10.1-100/utilities/compatibility/BufferToRing.cpp tags/nscldaq-v10.1-100/utilities/compatibility/buffer.h tags/nscldaq-v10.1-100/utilities/eventlog/Makefile.am Removed Paths: ------------- tags/nscldaq-v10.1-100/ChangeLog tags/nscldaq-v10.1-100/Makefile.am tags/nscldaq-v10.1-100/base/cvt/Makefile.am tags/nscldaq-v10.1-100/base/security/Makefile.am tags/nscldaq-v10.1-100/configure.ac tags/nscldaq-v10.1-100/daq/format/DataFormat.h tags/nscldaq-v10.1-100/daq/format/Makefile.am tags/nscldaq-v10.1-100/daq/format/ringitem.c tags/nscldaq-v10.1-100/sbs/nsclapi/Makefile.am tags/nscldaq-v10.1-100/sbs/puretcl/Makefile.am tags/nscldaq-v10.1-100/sbs/puretcl/camac.tcl tags/nscldaq-v10.1-100/sbs/readout/Makefile.am tags/nscldaq-v10.1-100/sbs/tclpackage/Makefile.am tags/nscldaq-v10.1-100/sbs/vmemodules/CADC2530.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CCAENChain.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CSIS3820.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CSIS3820.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVC32CC32.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CVME.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScaler.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScalerLRS1151.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEScalerLRS1151.h tags/nscldaq-v10.1-100/sbs/vmemodules/CVMEptr.h tags/nscldaq-v10.1-100/sbs/vmemodules/Makefile.am tags/nscldaq-v10.1-100/sbs/vmemodules/Nimout.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/Nimout.h tags/nscldaq-v10.1-100/sbs/vmemodules/VmeModule.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/VmeModule.h tags/nscldaq-v10.1-100/sbs/vmemodules/sis3300.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/sis3300.h tags/nscldaq-v10.1-100/sbs/vmemodules/v890.cpp tags/nscldaq-v10.1-100/sbs/vmemodules/v890.h tags/nscldaq-v10.1-100/usb/Makefile.am tags/nscldaq-v10.1-100/usb/ccusb/Makefile.am tags/nscldaq-v10.1-100/usb/ccusb/ccusb/Makefile.am tags/nscldaq-v10.1-100/usb/vmusb/CTheApplication.cpp tags/nscldaq-v10.1-100/usb/vmusb/Makefile.am tags/nscldaq-v10.1-100/usb/vmusb/devices/CHINP.cpp tags/nscldaq-v10.1-100/usb/vmusb/devices/CTclModule.cpp tags/nscldaq-v10.1-100/usb/vmusb/vmusb/CVMUSB.cpp tags/nscldaq-v10.1-100/usb/vmusb/vmusb/CVMUSB.h tags/nscldaq-v10.1-100/usb/vmusb/vmusb/Makefile.am tags/nscldaq-v10.1-100/utilities/bufdump/Makefile.am tags/nscldaq-v10.1-100/utilities/compatibility/BufferToRing.cpp tags/nscldaq-v10.1-100/utilities/compatibility/buffer.h tags/nscldaq-v10.1-100/utilities/eventlog/Makefile.am Index: tags/nscldaq-v10.1-100 =================================================================== --- trunk/nextgen 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100 2013-01-18 16:08:17 UTC (rev 2974) Property changes on: tags/nscldaq-v10.1-100 ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +1,9 ## +/branches/hira-sisstuff:2744-2892 +/branches/nextgen-ccusb-feature:2631-2641 +/branches/nextgen-ccusb-userdrivers-feature:2644-2659 +/branches/nextgen-vmusb-userdrivers-feature:2665-2711 +/branches/nscldaq-10.1-004-development:2714-2742 +/branches/vmusbremote-development:2803 +/tags/hira-sisstuff-pre-merge:2893-2918 +/tags/vmusbremote-working:2804-2816 +/trunk/nextgen:2714-2742 \ No newline at end of property Deleted: tags/nscldaq-v10.1-100/ChangeLog =================================================================== --- trunk/nextgen/ChangeLog 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100/ChangeLog 2013-01-18 16:08:17 UTC (rev 2974) @@ -1,308 +0,0 @@ -Dec 16, 2010 - - Fix error in CRingItem copy construction ... if there was a - payload, the m_pCursor member was not being set to point to the - end of that payload...leading the CRingItem target to think the - item was empty. This was also a problem with operator= which also - used CRingItem::copyin where the problem lay. - - Fix various copy in issues with CRingBuffer and subclasses. - make all the tests pass that should pass and remove those that - should no longer pass due to changes in the way sampling - has been done. -Dec 20,2010 - - Fix error in URL parsing that made absolute file urls fail. - (removed the leading /). - - Fix error in Gui that prevented event file segments from - showing up on the status strip. -Dec 31, 2010 - - In readout gui, make links between files symbolic so that they - port across backup and restores in a different directory tree as - happens during NSCL experiment closeout. -January 27, 2011 - - Fix up Experiment.tcl so things work on etch systems (for now). - - Fix errors in copy construction in daq/format. -February 17, 2011 - - Fix error in event file overwite handling in readoutgui: - the softlink must be deleted before being made. - -March 10, 2011 10.0-004 - - Make ring master wait until the port manager is actually alive - rather than dying if it isn't. - - Install VERSION file in make install target. - - Misc. changes to Makefile.am's and configure.ac so that - autoreconf isn't so bitchy. -April 8 2011 10.0-005 - - Stop elapsed run timer in readout gui when the run ends. -April 13, 2011 10.0-006 - - Really get the elapsed run timer logic right ...with - interpolation from the scaler buffers. - -June 10, 2011 10.0-007 - - Add -textheight switch Readout shell to support running - in on displays with limited heights. - -June 22, 2011 10.0-008 - - Add --deleteonexit switch to stdintoring - - CRemoteAccess - modify to start stdintoring with --deleteonexit - so that the proxy ring is deleted if the remote part of the - hoisting pipeline dies. -July 8, 2011 10.0-009 - - Extend length of getpwbyuid buffer in CReadoutMain.cpp it was - only marginally good for some people with small gecos fields. -August 5, 2011 10.0-010 - - Remove extraneous -lpub from daqstart's Makefile.am. -October 12, 2011 10.0-011 - Fixes for defects in readout framework found when getting CAESAR ready: - - SBS Makefile did not honor USERCXXFLAGS, USERCCFLAGS nor - USERLDFLAGS support was added in a way that ensures that - USERCCFLAGS and USERCXXFLAGS may differ but nonetheless - factoring out the common flagsets. - - Add -D's to the Makefiel includes so that users accessing VME - classes get the fact that we have a mapped interface. - - Add missing #define __CREADOUTMAIN_H to CReadoutMain.h - - Fix error in CAENV262Busy - defined GoReady rather than GoClear - so it became an abstract class. Fixed while retaining the - GoReady function because we know the workaround kludge/fix won't - disappear. - - Call clear on main scaler bank in CExperiment after the readout - so scaler don't continuously increment - * Work around issues with the documentation getting too big for - docbook2dvi (it segfaults)...by generating man pages and - htmldocs only. - - Turn off driver tracing in CVMEInterface::Read. oops - - Lock/unlock VME Interface in trigger main loop for some dwell - time. - - Fix broken -p switch in tcl server. - - Clear scalers and readout hardware much later in the - initialization game. - - Fix time handling for scaler reads. -October 17, 2011 10.0-012 - - Move begin run emit to just prior to starting the - atual run itself...so we're not timing the hardware - initialization. - -October 18, 2011 10.0-013 - - Stop using run state time for anything but keep computing each - from 'now' and start stamp. -October 18, 2011 10.0-014 - - Use ns resolutino realtime clock for all CExperiment timing - to try to get better synch with the scaler trigger clock. - - Fix error in CRingSelectionPredicate...would not allow the last - ring item to be fetched until more were in the ring. -October 18, 2011 10.0-015 - - Pull in up to date scaler display program from 8.2..which - diverged after this forked off. -October 21, 2011 10.0-016 - - Fix Packet/Vpacket macros so that they generate compatibility - (word size-field) packets not checking for jumbo-bufferness. -October 24, 2011 10.0-017 - - Add memory barriers on shm operations that write to ensure - everthing is flushed to shm. - gcc specific code. - - Add a bit of a safety zone between get/put pointers. - - Go to a two phase client allocation: first set pid - 0 - which makes it ineligible for size computation, and claims it - for use. Then set the get pointer and finally set the PID to - the actual value making it elligible for size computation. -Nobvember 4, 2011 10.0-018 - - Deal a bit better with pointer skew that can happen as new - consumers enter the fray. - - Play with the tkdumper help file...fix missing link. - - Provide migration tutorial. - -November 4, 2011 10.0-019 - - Make stdintoring understand that data are structured not a - stream. -November 7, 2011 10.0-020 - - If a proxy ring has no producer then restart the pipeline if a - client attaches. This provides a way to recover from remote - system reboot that's much saner. - - If a ring is deleted then kill its clients. - - If a get/put/peek operations discoveres the client's PID has - been co-opted by some other process or released, throw a state - exception and refuse to perform the operation. This deals with an - edge case that should not happen...however better safe than sorry - especially since the cost is negligible. - - Require stdintoring have at least a full header in putData - else the remainder is a residual. - - Use same run time offset algorithm as scalers for variable dump - bufs. -November 9-16, 2011 10.0-021 - - Add --exitonend option to ringselector (WO W00957). - - Add compatibilitybuffer - ring to daq8.2 buffer utility (W00957) - - Add compatibilitylogger - pipeline element to make daq8.2 event - file (W00957) - - Add eventlog script that provides an 8.2 compatible event - logger. - - Add spectcldaq script that provides an 8.2 compatible SpecTcl - data source. - - Add spectcldaq.server - Tcp/IP script that provides 8.2 - compatible hoist of events out to a non daq system. - - Support using the EVENTLOGGER env varible to select the event - logging program. - - Provide docs for the compatibility mode utilities in the - utilities sections of the general docs and its own section of - reference docs (1compatibility). - - Add compatibility docs to the ring migration tutorial. - -November 16-18, 2011 10.0-022 - - Explicitly use ssh not rsh in the rsh package of - ReadoutShell. - - Add complete docs for the readout GUI. -November 21-23 2011 10.0-023 - - Introductory docs for the grand unified documentation begun. - - Fix 2 stupidities in ringtostdout when writes needed to be - segmented, both the wrong pointer and wrong count were used in - subsequent writes. - - Fix copy problem in stdintoring -when residual was less than a - header the residual was not being moved resulting in corrupted - events, hangs and crashes. - - Remove misguided changes to Ring predicates that were supposed - to improve sampling case...they actually killed sampling. - -10.0-024: -November 24-Dec 1, 2011 - - Completed introductory section of comprehensive docs. - - Fixed error in stdintoring that would not flush the input buffer - completely. - - Fixed error in stdintoring that re-declared the remainnig bytes - value which had the bad effect of it never being initialized - from the point of view of the code that needed it initalized. - - Incorporate Dirk's suggestions into the Ring buffer tutoria. - -10.0-25 -December 7, 2011 - - In ring selection predicates don't block between skips as these - can happen quickly. -December 8, 2011 - - Don't delete ring anymore when feeder exits as the code now - alows it to be restarted (CRemoteAccess.cpp). - - Support the RINGNAME environment variable to set the ring we use - in the remote system for eventlog and sclclient. - - If the ring specified in a URL has a host that maps to the - host' localname don't create a proxy ring but connect to the - local ring. e.g. if I'm on charlie.nscl.msu.edu and - specify tcp://charlie/fox I'll connect to tcp://localhost -December 12, 2011 - - Truncate long title strings in sbs/readout/CExperiment rather - than causing CRingStateChangeItem to throw a range exception. - - Add title string validation so that users cannot actually enter - strings longer than 80 characters..so they are not surprised - that their strings get truncated. - -10.1 -January 26,2012 - - Fold in VM-USB readout code from spectrodaq -10.1-001 -January 30-Feb 1,2012 - - Fold in CC-USB readout code from spectrodaq -10.1-002 -Feb 1, 2012 - Feb 24, 2012 - - Extend CC-USB readout code to support user written C++ - drivers as loadable objects. - - Wrap CCCUSB and CCCUSBReadoutList in SWIG for Tcl. - - Provide support for CCUSB drivers written in Tcl. - - Document all of this. - - Document the shape of ring items (daq/format/dataformat.xml) - - Add s800toring to utilties/compatibility - - Add -nomonitor switch to ReadoutShell - just stops run timer - right away rather than waiting for end run indicator from rdo. -10.1-003 - - Added s800 readout callouts to daq/s800callouts - - Add support for user written VM-USB drivers: - * C++ - * Tcl - - Document VM-USB and driver support. - - Get the CAMAC window size right (tr 6639). - - Start s800toring in s800callouts - and monitor it. - - Provide a ring item generation library. - - Use ring item generation library in BufferToRing. - - Documment BufferToRing. - - Misc ReadoutGUI changes to better support aborting - Begin run. - - Added ability to disable/enable user typing in the run number - for integration with other systems that like to set the run number - for us (e.g. Gretina). - - S800 rdocallouts - put the s800 status bar in the 'bottom line' - of the GUI regardless of what that means. - - S800 rdocallouts documentation - - S800 Attempt to reconnect if status poll indicated dropped - connection. -10.1-004 - - Issue #1088 - added cratelocator.tcl and install in - bin/cratelocator. - - Issue #1088 - Documented the cratelocator program. - - Issue #1121 - Support scalers that are not zeroed after each - read. - - Move the CC/VMusb readout documentation chapters -> framworks - from utilities. - - Issue #1019 - Improve error messages from the dumper when the - --source cannot be parsed/opened. - - Issue #914 - Provide docs for the proposed API (coding will be - from that). - - Issue #914 - Complete testing of CRingBuffer with the API rather - than direct shm_xxx calls. - - Issue #421 - Centralize the code that creates a ring (if - needed) and attaches as a producer. - - Issue #419 - Factor out all the getDefaultRing/URL sorts of - things. - - Issue #1119 - Honor env variables for stagearea and expdir when - checking for a good stagearea link. -<<<<<<< .working - - Attempt to fix race condition between the s800 start and the - polling of the s800 status. - - Turn on s800 record crate files by default per request by - Daniel B. and Scott W. - - Turn it back off due to the potential of users to have to - respond to a dialog on the s800 control panel. - - In S800 exit handler deal with the fact that the S800 may have - exited so socket transactions with/to it may fail....correct - bgerror so that it exits rather than breaking...which causes an - infinite break handling loop. - - Issue #1195 deal with S800 bozo-ness on scalers. - - Ensure readoutGUI starts with correct colors. -10.1-005 - - Issue #1195 - Provide visual indication that runs are - starting/stopping. - - Now that there is bandwidth and hopefully users are aware of the - problems turn s800 record crate files _back_ on by default. - Seems like they really just need the damned settings most of the - time but they are not capable of separating the two somehow. -10.1-006 - - Add support for client of VM-USB server to VMUSBReadout. - the --host (-h) switch if supplied selects the host on which the - VMUSB server is running. - - Issue #1322 - Include product (NSCLDAQ) in the VERSION file. - - More wheezy-64 work: - * Get sbs driver working/tested. - * Start SBS readout checkout (sbs/vmemodules/ - - Make CAENcard 64/32 bit clean. - - Draft code for CADC2530 (Hytec adc...can't test this 'cause we don't own the module). - - Draft code for CAEN V767 multihit TDC which probably nobody will ever use again. - - Draft code for CAEN 262 I/O register. - - camac.h - replace the old style INT32 etc. with stdint stuff. - - Draft code for CBLT CAEN 32 bit digitizer chains. - - Draft code for CAEN V1x90 multihit TDC family. - - Draft code for CAEN V560 Scaler. - - Draft code for CAEN V820/830 scaler. - - Draft code for CAEN 977 I/O register. - - Draft code for CAMAC (CES) - - Draft code for 32 bit module. - - Draft code CSIS3600 latch module. - * Add libSBSDeviceSupport.la to the Readout executable build in sbs/readout/Makefile.am - - Attempt to fix race condition between the s800 start and the - polling of the s800 status. - - Turn on s800 record crate files by default per request by - Daniel B. and Scott W. - - Turn it back off due to the potential of users to have to - respond to a dialog on the s800 control panel. - - In S800 exit handler deal with the fact that the S800 may have - exited so socket transactions with/to it may fail....correct - bgerror so that it exits rather than breaking...which causes an - infinite break handling loop. - - Issue #1195 deal with S800 bozo-ness on scalers. - - Ensure readoutGUI starts with correct colors. - - Issue #1215 Support for SIS FADC in VMUSB readout. - - Issue #1216 Provide XLM/SISFADC hira pseudo module that gangs - them together. - - Issue #701 Add variable injection/monitoring to VM-USB readout - to support EPICS monitoring. - - Issue #989 - document VM-USB list remote list executino. Copied: tags/nscldaq-v10.1-100/ChangeLog (from rev 2971, trunk/nextgen/ChangeLog) =================================================================== --- tags/nscldaq-v10.1-100/ChangeLog (rev 0) +++ tags/nscldaq-v10.1-100/ChangeLog 2013-01-18 16:08:17 UTC (rev 2974) @@ -0,0 +1,314 @@ +Dec 16, 2010 + - Fix error in CRingItem copy construction ... if there was a + payload, the m_pCursor member was not being set to point to the + end of that payload...leading the CRingItem target to think the + item was empty. This was also a problem with operator= which also + used CRingItem::copyin where the problem lay. + - Fix various copy in issues with CRingBuffer and subclasses. + make all the tests pass that should pass and remove those that + should no longer pass due to changes in the way sampling + has been done. +Dec 20,2010 + - Fix error in URL parsing that made absolute file urls fail. + (removed the leading /). + - Fix error in Gui that prevented event file segments from + showing up on the status strip. +Dec 31, 2010 + - In readout gui, make links between files symbolic so that they + port across backup and restores in a different directory tree as + happens during NSCL experiment closeout. +January 27, 2011 + - Fix up Experiment.tcl so things work on etch systems (for now). + - Fix errors in copy construction in daq/format. +February 17, 2011 + - Fix error in event file overwite handling in readoutgui: + the softlink must be deleted before being made. + +March 10, 2011 10.0-004 + - Make ring master wait until the port manager is actually alive + rather than dying if it isn't. + - Install VERSION file in make install target. + - Misc. changes to Makefile.am's and configure.ac so that + autoreconf isn't so bitchy. +April 8 2011 10.0-005 + - Stop elapsed run timer in readout gui when the run ends. +April 13, 2011 10.0-006 + - Really get the elapsed run timer logic right ...with + interpolation from the scaler buffers. + +June 10, 2011 10.0-007 + - Add -textheight switch Readout shell to support running + in on displays with limited heights. + +June 22, 2011 10.0-008 + - Add --deleteonexit switch to stdintoring + - CRemoteAccess - modify to start stdintoring with --deleteonexit + so that the proxy ring is deleted if the remote part of the + hoisting pipeline dies. +July 8, 2011 10.0-009 + - Extend length of getpwbyuid buffer in CReadoutMain.cpp it was + only marginally good for some people with small gecos fields. +August 5, 2011 10.0-010 + - Remove extraneous -lpub from daqstart's Makefile.am. +October 12, 2011 10.0-011 + Fixes for defects in readout framework found when getting CAESAR ready: + - SBS Makefile did not honor USERCXXFLAGS, USERCCFLAGS nor + USERLDFLAGS support was added in a way that ensures that + USERCCFLAGS and USERCXXFLAGS may differ but nonetheless + factoring out the common flagsets. + - Add -D's to the Makefiel includes so that users accessing VME + classes get the fact that we have a mapped interface. + - Add missing #define __CREADOUTMAIN_H to CReadoutMain.h + - Fix error in CAENV262Busy - defined GoReady rather than GoClear + so it became an abstract class. Fixed while retaining the + GoReady function because we know the workaround kludge/fix won't + disappear. + - Call clear on main scaler bank in CExperiment after the readout + so scaler don't continuously increment + * Work around issues with the documentation getting too big for + docbook2dvi (it segfaults)...by generating man pages and + htmldocs only. + - Turn off driver tracing in CVMEInterface::Read. oops + - Lock/unlock VME Interface in trigger main loop for some dwell + time. + - Fix broken -p switch in tcl server. + - Clear scalers and readout hardware much later in the + initialization game. + - Fix time handling for scaler reads. +October 17, 2011 10.0-012 + - Move begin run emit to just prior to starting the + atual run itself...so we're not timing the hardware + initialization. + +October 18, 2011 10.0-013 + - Stop using run state time for anything but keep computing each + from 'now' and start stamp. +October 18, 2011 10.0-014 + - Use ns resolutino realtime clock for all CExperiment timing + to try to get better synch with the scaler trigger clock. + - Fix error in CRingSelectionPredicate...would not allow the last + ring item to be fetched until more were in the ring. +October 18, 2011 10.0-015 + - Pull in up to date scaler display program from 8.2..which + diverged after this forked off. +October 21, 2011 10.0-016 + - Fix Packet/Vpacket macros so that they generate compatibility + (word size-field) packets not checking for jumbo-bufferness. +October 24, 2011 10.0-017 + - Add memory barriers on shm operations that write to ensure + everthing is flushed to shm. - gcc specific code. + - Add a bit of a safety zone between get/put pointers. + - Go to a two phase client allocation: first set pid - 0 + which makes it ineligible for size computation, and claims it + for use. Then set the get pointer and finally set the PID to + the actual value making it elligible for size computation. +Nobvember 4, 2011 10.0-018 + - Deal a bit better with pointer skew that can happen as new + consumers enter the fray. + - Play with the tkdumper help file...fix missing link. + - Provide migration tutorial. + +November 4, 2011 10.0-019 + - Make stdintoring understand that data are structured not a + stream. +November 7, 2011 10.0-020 + - If a proxy ring has no producer then restart the pipeline if a + client attaches. This provides a way to recover from remote + system reboot that's much saner. + - If a ring is deleted then kill its clients. + - If a get/put/peek operations discoveres the client's PID has + been co-opted by some other process or released, throw a state + exception and refuse to perform the operation. This deals with an + edge case that should not happen...however better safe than sorry + especially since the cost is negligible. + - Require stdintoring have at least a full header in putData + else the remainder is a residual. + - Use same run time offset algorithm as scalers for variable dump + bufs. +November 9-16, 2011 10.0-021 + - Add --exitonend option to ringselector (WO W00957). + - Add compatibilitybuffer - ring to daq8.2 buffer utility (W00957) + - Add compatibilitylogger - pipeline element to make daq8.2 event + file (W00957) + - Add eventlog script that provides an 8.2 compatible event + logger. + - Add spectcldaq script that provides an 8.2 compatible SpecTcl + data source. + - Add spectcldaq.server - Tcp/IP script that provides 8.2 + compatible hoist of events out to a non daq system. + - Support using the EVENTLOGGER env varible to select the event + logging program. + - Provide docs for the compatibility mode utilities in the + utilities sections of the general docs and its own section of + reference docs (1compatibility). + - Add compatibility docs to the ring migration tutorial. + +November 16-18, 2011 10.0-022 + - Explicitly use ssh not rsh in the rsh package of + ReadoutShell. + - Add complete docs for the readout GUI. +November 21-23 2011 10.0-023 + - Introductory docs for the grand unified documentation begun. + - Fix 2 stupidities in ringtostdout when writes needed to be + segmented, both the wrong pointer and wrong count were used in + subsequent writes. + - Fix copy problem in stdintoring -when residual was less than a + header the residual was not being moved resulting in corrupted + events, hangs and crashes. + - Remove misguided changes to Ring predicates that were supposed + to improve sampling case...they actually killed sampling. + +10.0-024: +November 24-Dec 1, 2011 + - Completed introductory section of comprehensive docs. + - Fixed error in stdintoring that would not flush the input buffer + completely. + - Fixed error in stdintoring that re-declared the remainnig bytes + value which had the bad effect of it never being initialized + from the point of view of the code that needed it initalized. + - Incorporate Dirk's suggestions into the Ring buffer tutoria. + +10.0-25 +December 7, 2011 + - In ring selection predicates don't block between skips as these + can happen quickly. +December 8, 2011 + - Don't delete ring anymore when feeder exits as the code now + alows it to be restarted (CRemoteAccess.cpp). + - Support the RINGNAME environment variable to set the ring we use + in the remote system for eventlog and sclclient. + - If the ring specified in a URL has a host that maps to the + host' localname don't create a proxy ring but connect to the + local ring. e.g. if I'm on charlie.nscl.msu.edu and + specify tcp://charlie/fox I'll connect to tcp://localhost +December 12, 2011 + - Truncate long title strings in sbs/readout/CExperiment rather + than causing CRingStateChangeItem to throw a range exception. + - Add title string validation so that users cannot actually enter + strings longer than 80 characters..so they are not surprised + that their strings get truncated. + +10.1 +January 26,2012 + - Fold in VM-USB readout code from spectrodaq +10.1-001 +January 30-Feb 1,2012 + - Fold in CC-USB readout code from spectrodaq +10.1-002 +Feb 1, 2012 - Feb 24, 2012 + - Extend CC-USB readout code to support user written C++ + drivers as loadable objects. + - Wrap CCCUSB and CCCUSBReadoutList in SWIG for Tcl. + - Provide support for CCUSB drivers written in Tcl. + - Document all of this. + - Document the shape of ring items (daq/format/dataformat.xml) + - Add s800toring to utilties/compatibility + - Add -nomonitor switch to ReadoutShell - just stops run timer + right away rather than waiting for end run indicator from rdo. +10.1-003 + - Added s800 readout callouts to daq/s800callouts + - Add support for user written VM-USB drivers: + * C++ + * Tcl + - Document VM-USB and driver support. + - Get the CAMAC window size right (tr 6639). + - Start s800toring in s800callouts - and monitor it. + - Provide a ring item generation library. + - Use ring item generation library in BufferToRing. + - Documment BufferToRing. + - Misc ReadoutGUI changes to better support aborting + Begin run. + - Added ability to disable/enable user typing in the run number + for integration with other systems that like to set the run number + for us (e.g. Gretina). + - S800 rdocallouts - put the s800 status bar in the 'bottom line' + of the GUI regardless of what that means. + - S800 rdocallouts documentation + - S800 Attempt to reconnect if status poll indicated dropped + connection. +10.1-004 + - Issue #1088 - added cratelocator.tcl and install in + bin/cratelocator. + - Issue #1088 - Documented the cratelocator program. + - Issue #1121 - Support scalers that are not zeroed after each + read. + - Move the CC/VMusb readout documentation chapters -> framworks + from utilities. + - Issue #1019 - Improve error messages from the dumper when the + --source cannot be parsed/opened. + - Issue #914 - Provide docs for the proposed API (coding will be + from that). + - Issue #914 - Complete testing of CRingBuffer with the API rather + than direct shm_xxx calls. + - Issue #421 - Centralize the code that creates a ring (if + needed) and attaches as a producer. + - Issue #419 - Factor out all the getDefaultRing/URL sorts of + things. + - Issue #1119 - Honor env variables for stagearea and expdir when + checking for a good stagearea link. +<<<<<<< .working + - Attempt to fix race condition between the s800 start and the + polling of the s800 status. + - Turn on s800 record crate files by default per request by + Daniel B. and Scott W. + - Turn it back off due to the potential of users to have to + respond to a dialog on the s800 control panel. + - In S800 exit handler deal with the fact that the S800 may have + exited so socket transactions with/to it may fail....correct + bgerror so that it exits rather than breaking...which causes an + infinite break handling loop. + - Issue #1195 deal with S800 bozo-ness on scalers. + - Ensure readoutGUI starts with correct colors. +10.1-005 + - Issue #1195 - Provide visual indication that runs are + starting/stopping. + - Now that there is bandwidth and hopefully users are aware of the + problems turn s800 record crate files _back_ on by default. + Seems like they really just need the damned settings most of the + time but they are not capable of separating the two somehow. +10.1-006 + - Add support for client of VM-USB server to VMUSBReadout. + the --host (-h) switch if supplied selects the host on which the + VMUSB server is running. + - Issue #1322 - Include product (NSCLDAQ) in the VERSION file. + - More wheezy-64 work: + * Get sbs driver working/tested. + * Ensure SBS device support is 64 bit clean. + * Add libSBSDeviceSupport.la to the Readout executable build in sbs/readout/Makefile.am + - Attempt to fix race condition between the s800 start and the + polling of the s800 status. + - Turn on s800 record crate files by default per request by + Daniel B. and Scott W. + - Turn it back off due to the potential of users to have to + respond to a dialog on the s800 control panel. + - In S800 exit handler deal with the fact that the S800 may have + exited so socket transactions with/to it may fail....correct + bgerror so that it exits rather than breaking...which causes an + infinite break handling loop. + - Issue #1195 deal with S800 bozo-ness on scalers. + - Ensure readoutGUI starts with correct colors. + - Issue #1215 Support for SIS FADC in VMUSB readout. + - Issue #1216 Provide XLM/SISFADC hira pseudo module that gangs + them together. + - Issue #701 Add variable injection/monitoring to VM-USB readout + to support EPICS monitoring. + - Issue #989 - document VM-USB list remote list executino. +10.1-007 + - Issue #1215 - Suport for SISFADC in VMUSDB readout. + - Isssue #1216 - Add 'motherboard' type to VMUSB readout which + supports pairing up to 2 XLM's and an SISFADC for HiRA readout. + - Issue #701 - Support variable injection into VM-USB Readout + - Issue #989 - Document the remote VMUSB readout list execution + facility..as well as the various HiRA things. +10.1-008 + +10.1-100 + - Add timestamped nonincr scaler item + - In BufferToRing emit both scaler and nonincr scaler items to the + s800 ring. The concept there is that we can feed the timestamped + items to Gretina so that they get properly sorted. + - Debugged issues with the VMUSB Tcl stuff. + - Decided how to get pkgIndex to really work properly for lib. + where some .so's may have dependencies based on the enclosing + app. + Deleted: tags/nscldaq-v10.1-100/Makefile.am =================================================================== --- trunk/nextgen/Makefile.am 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -1,34 +0,0 @@ -ACLOCAL_AMFLAGS=-I m4 - -if BUILD_SBS_DRIVER - SBSDIRS=sbs -endif - -if BUILD_EPICS_TOOLS -if EPICS - EPICSDIRS=epics -endif -endif - -if BUILD_USB - USBDIR=usb -endif - - -SUBDIRS = base/exception base/tclplus base/CopyrightTools servers base \ - daq utilities docbuild docconfig $(SBSDIRS) $(EPICSDIRS) $(USBDIR) - - -install-data-local: - $(mkinstalldirs) @prefix@/TclLibs - $(mkinstalldirs) @prefix@/include - echo "pkg_mkIndex @prefix@/TclLibs *.so" >makeindex.tcl - $(TCLSH_CMD) <makeindex.tcl - $(INSTALL_SCRIPT) config.h @prefix@/include - $(MANDB) $(prefix)/share/man - echo "Version: "NSCLDAQ-$(VERSION) built on `hostname` `date` > $(prefix)/VERSION - - -EXTRA_DIST=dotests - -TESTS=./dotests Copied: tags/nscldaq-v10.1-100/Makefile.am (from rev 2943, trunk/nextgen/Makefile.am) =================================================================== --- tags/nscldaq-v10.1-100/Makefile.am (rev 0) +++ tags/nscldaq-v10.1-100/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -0,0 +1,34 @@ +ACLOCAL_AMFLAGS=-I m4 + +if BUILD_SBS_DRIVER + SBSDIRS=sbs +endif + +if BUILD_EPICS_TOOLS +if EPICS + EPICSDIRS=epics +endif +endif + +if BUILD_USB + USBDIR=usb +endif + + +SUBDIRS = base/exception base/tclplus base/CopyrightTools servers base \ + daq utilities docbuild docconfig $(SBSDIRS) $(EPICSDIRS) $(USBDIR) + + +install-data-local: + $(mkinstalldirs) @prefix@/TclLibs + $(mkinstalldirs) @prefix@/include + echo "pkg_mkIndex @prefix@/TclLibs *.so" >makeindex.tcl + $(TCLSH_CMD) <makeindex.tcl + $(INSTALL_SCRIPT) config.h @prefix@/include + $(MANDB) $(prefix)/share/man + echo "Version: "NSCLDAQ-$(VERSION) built on `hostname` `date` > $(prefix)/VERSION + + +EXTRA_DIST=dotests introduction.xml + +TESTS=./dotests Deleted: tags/nscldaq-v10.1-100/base/cvt/Makefile.am =================================================================== --- trunk/nextgen/base/cvt/Makefile.am 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100/base/cvt/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -1,7 +0,0 @@ -lib_LTLIBRARIES = libcvt.la -libcvt_la_SOURCES = daqcvt.c -include_HEADERS = daqcvt.h -libcvt_MANS = libcvt.ps -libcvt_la_LDFLAGS = -version-info @SOVERSION@ -Wl,"-rpath-link=$(libdir)" \ - $(THREADLD_FLAGS) -libcvt_la_CXXFLAGS= $(THREADCXX_FLAGS) $(AM_CXXFLAGS) Copied: tags/nscldaq-v10.1-100/base/cvt/Makefile.am (from rev 2943, trunk/nextgen/base/cvt/Makefile.am) =================================================================== --- tags/nscldaq-v10.1-100/base/cvt/Makefile.am (rev 0) +++ tags/nscldaq-v10.1-100/base/cvt/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -0,0 +1,9 @@ +lib_LTLIBRARIES = libcvt.la +libcvt_la_SOURCES = daqcvt.c +include_HEADERS = daqcvt.h +libcvt_MANS = libcvt.ps +libcvt_la_LDFLAGS = -version-info @SOVERSION@ -Wl,"-rpath-link=$(libdir)" \ + $(THREADLD_FLAGS) +libcvt_la_CXXFLAGS= $(THREADCXX_FLAGS) $(AM_CXXFLAGS) + +EXTRA_DIST=cvtdoc.xml \ No newline at end of file Deleted: tags/nscldaq-v10.1-100/base/security/Makefile.am =================================================================== --- trunk/nextgen/base/security/Makefile.am 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100/base/security/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -1,20 +0,0 @@ -lib_LTLIBRARIES = libSecurity.la -libSecurity_la_SOURCES = AccessListCheck.cpp \ - FdInteractor.cpp HostListCheck.cpp \ - IOInteractor.cpp Interactor.cpp PasswordCheck.cpp \ - StringInteractor.cpp TclAccessListCheck.cpp UnixUserCheck.cpp -include_HEADERS = AccessListCheck.h Authenticator.h \ - FdInteractor.h HostListCheck.h \ - IOInteractor.h Interactor.h PasswordCheck.h StringInteractor.h \ - TclAccessListCheck.h UnixUserCheck.h -libSecurity_la_LDFLAGS = -version-info $(SOVERSION) -Wl,"-rpath=$(libdir)" \ - $(THREADLD_FLAGS) - -libSecurity_la_CXXFLAGS = $(THREADCXX_FLAGS) $(AM_CXXFLAGS) - -INCLUDES = -I@top_srcdir@/base/headers -I@top_srcdir@/base/tclplus $(TCL_FLAGS) $(SPECTRODAQ_FLAGS) - -EXTRA_DIS= security.xml - - - Copied: tags/nscldaq-v10.1-100/base/security/Makefile.am (from rev 2943, trunk/nextgen/base/security/Makefile.am) =================================================================== --- tags/nscldaq-v10.1-100/base/security/Makefile.am (rev 0) +++ tags/nscldaq-v10.1-100/base/security/Makefile.am 2013-01-18 16:08:17 UTC (rev 2974) @@ -0,0 +1,20 @@ +lib_LTLIBRARIES = libSecurity.la +libSecurity_la_SOURCES = AccessListCheck.cpp \ + FdInteractor.cpp HostListCheck.cpp \ + IOInteractor.cpp Interactor.cpp PasswordCheck.cpp \ + StringInteractor.cpp TclAccessListCheck.cpp UnixUserCheck.cpp +include_HEADERS = AccessListCheck.h Authenticator.h \ + FdInteractor.h HostListCheck.h \ + IOInteractor.h Interactor.h PasswordCheck.h StringInteractor.h \ + TclAccessListCheck.h UnixUserCheck.h +libSecurity_la_LDFLAGS = -version-info $(SOVERSION) -Wl,"-rpath=$(libdir)" \ + $(THREADLD_FLAGS) + +libSecurity_la_CXXFLAGS = $(THREADCXX_FLAGS) $(AM_CXXFLAGS) + +INCLUDES = -I@top_srcdir@/base/headers -I@top_srcdir@/base/tclplus $(TCL_FLAGS) $(SPECTRODAQ_FLAGS) + +EXTRA_DIST= security.xml + + + Deleted: tags/nscldaq-v10.1-100/configure.ac =================================================================== --- trunk/nextgen/configure.ac 2012-12-21 17:35:35 UTC (rev 2925) +++ tags/nscldaq-v10.1-100/configure.ac 2013-01-18 16:08:17 UTC (rev 2974) @@ -1,584 +0,0 @@ -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. - -AC_PREREQ(2.61) -AC_INIT(nscldaq, 10.1-006, fo...@ns...) - -AC_CONFIG_SRCDIR([/utilities/StringsToIntegers.h]) -AC_CONFIG_HEADER([config.h]) -AC_CONFIG_MACRO_DIR([m4]) - -# Checks for programs. -AC_PROG_CXX -AC_PROG_CC -AC_PROG_CPP -AC_PROG_INSTALL -AC_PROG_LIBTOOL - - -AC_CHECK_PROG(HAVE_GENGETOPT, [gengetopt], true, false) -AC_CHECK_PROG(HAVE_DOCBOOK2PDF, [docbook2pdf], true, false) -AC_CHECK_PROG(HAVE_XMLTO, [xmlto], true, false) -AC_CHECK_PROG(MANDB, mandb, mandb, echo) -AC_CHECK_PROG(SWIG, [swig], [swig], []) - -AC_CHECK_LIB([X11], [XSetWindowBackground]) -AC_CHECK_LIB([Xt], [XtManage]) -AC_CHECK_LIB([cppunit], [_ZN7CppUnit12XmlOutputterD1Ev], [CPPUNIT_LDFLAGS=-lcppunit]) -AC_CHECK_LIB([pub], [xrealloc], []) - - - - - -AC_HEADER_STDC -AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h malloc.h netdb.h netinet/in.h stdint.h stdlib.h string.h sys/socket.h sys/time.h unistd.h]) - -# Checks for typedefs, structures, and compiler characteristics. - -AC_HEADER_STDBOOL -AC_C_CONST -AC_C_INLINE -AC_TYPE_OFF_T -AC_TYPE_PID_T -AC_TYPE_SIZE_T -AC_HEADER_TIME -AC_STRUCT_TM -AC_TYPE_UID_T -AC_TYPE_UINT16_T -AC_TYPE_UINT32_T -AC_TYPE_UINT8_T - -# Checks for library functions. - -AC_FUNC_ERROR_AT_LINE -AC_FUNC_FORK -AC_FUNC_MALLOC -AC_CHECK_FUNCS([dup2 gethostbyaddr gethostbyname gettimeofday inet_ntoa memmove memset regcomp socket strchr strcspn strdup strerror strspn strtol]) - -AC_CHECK_FUNCS([ftruncate munmap]) -AC_FUNC_MMAP -AC_FUNC_STAT - -# Automake: - -AM_INIT_AUTOMAKE([]) - -# Makefile exports: - -SOVERSION="10:0:0" - - - - - -#--------------------------------------------------------------------- -# -# Local tests: -# - -# Ensure swig is installed: - -if test x$SWIG == x -then - AC_MSG_ERROR([Can't find SWIG in your program search path.]) -fi - -# We use gengetopt in a few places. Ideally it's been found by now in the -# path if not we'll need to do the withval thing.. or prompt the user to -# give us a --with-gengetopt-path -# - -if test x$HAVE_GENGETOPT == xtrue -then - GENGETOPT=gengetopt -else - AC_ARG_WITH(gengetopt-path, - [ --with-gengetopt-path=directory that has gengetopt], - [GENGETOPT=$withval], - GENGETOPT="") - if test x$GENGETOPT == x - then - AC_MSG_ERROR([Can't find gengetopt in path, install it or help me out with --with-gengetopt-path]) - fi -fi - - - -# Locate Tcl/Tk and setup compile/link switches for them too: -# The list below is the set of versions we will look for. At this -# time, 8.4 is pretty standard and 8.5 is impending which means that -# soon some redhat systems will have it I suppose. -# This list must be updated as time goes by. -# -tcl_versions="8.5 8.4 8.3 8.2 8.1 8.0" # First match; so order new -> old. - -# The TCL Shell - used to run tests... must be in path. -# First check for a version qualified command: -# - -AC_MSG_CHECKING([for tcl shell command...]) -for version in $tcl_versions -do - name=tclsh${version} - AC_CHECK_PROG(TCLSH_CMD, $name, $name) -done -# -# Could be unqualified by version: -# -AC_CHECK_PROG(TCLSH_CMD, tclsh, tclsh) - -if test "$TCLSH_CMD" == "" -then - AC_MSG_ERROR([Can't find a tcl shell]) -else - AC_MSG_RESULT([found: $TCLSH_CMD]) -fi - -# TCL headers: -# We know of a few places the headers can live: -# /usr/include redhat linux. -# /usr/include/tcl debian dude that made link to default tcl. -# /usr/include/tcl<version> debian linux -# /usr/local/include default for source based install. -# Whatever the user specifies. -# For now, the versions we look for are determined by the -# variable tcl_versions that variable is a list of version -# number specifiers. -# - - -tcl_header_dir="" -AC_MSG_CHECKING([for tcl headers]) - -AC_ARG_WITH(tcl-header-dir, - [ --with-tcl-header-dir=path Path to tcl headers], - [tcl_header_dir="$withval" - tcl_headers_found="yes"],[tcl_headers_found="no"]) - - - # /usr/include - -if test $tcl_headers_found == "no"; then - AC_CHECK_FILE([/usr/include/tcl.h], - [tcl_header_dir="/usr/include" - tcl_headers_found="yes"]) -fi - - # /usr/include/tcl - -if test $tcl_headers_found == "no"; then - AC_CHECK_FILE([/usr/include/tcl/tcl.h], - [tcl_header_dir="/usr/include/tcl" - tcl_headers_found="yes"]) -fi - - # /usr/include/tcl<version> - -if test $tcl_headers_found == "no" ; then - for version in $tcl_versions; do - if test $tcl_headers_found == "no" ; then # stop at first match - testdir=/usr/include/tcl$version - AC_CHECK_FILE([${testdir}/tcl.h], - [tcl_header_dir=${testdir} - tcl_headers_found="yes"]) - fi - done -fi - - # /usr/local/include -if test $tcl_headers_found == "no"; then - AC_CHECK_FILE([/usr/local/include/tcl.h], - [tcl_header_dir="/usr/local/include/tcl" - tcl_headers_found="yes"]) -fi - - -if test $tcl_headers_found == "yes"; then - TCL_FLAGS="-I${tcl_header_dir}" - AC_MSG_RESULT([found in $tcl_header_dir]) -else - AC_MSG_ERROR([can't find tcl.h try using --with-tcl-header-dir to help me]) -fi - -# Tcl libraries: -# We look for the following: -# /usr/lib/libtcl.a - Usually a link to a default lib. -# /usr/lib/libtcl<version>.a - version of tcl from tcl_versions -# /usr/local/lib/libtcl.a - As above but installed from source. -# /usr/local/lib<version>.a - As Above but installed from source. -# If --with-tcl-libdir=dir is supplied, that directory is -# searched first. -# ASSUMPTIONS: libtcl and libtk will have the same naming conventions. -# - -tcl_libsearchpath="" -tcl_libfound="no" -AC_MSG_CHECKING([Tcl/Tk library to use]) - - # Does the user want us to look somewhere in particular: - -AC_ARG_WITH(tcl-libdir, - [ --with-tcl-libdir=dir Specify where the tcl libraries live.], - [tcl_libsearchpath=$withval]) - -tcl_libsearchpath="$tcl_libsearchpath /usr/lib /usr/local/lib" - -tcl_libfiles=libtcl.a - -for v in ${tcl_versions} -do - tcl_libfiles="$tcl_libfiles libtcl${v}.a" - tcl_libfiles="$tcl_libfiles libtcl${v}.so" -done - - -for dir in ${tcl_libsearchpath} -do - for file in ${tcl_libfiles} - do - fname=$dir/$file - if test $tcl_libfound == "no" - then - AC_CHECK_FILE($fname, - [tcl_libdir=$dir - tcl_libname=$file - tcl_libfound="yes" - ]) - fi - done -done - -if test $tcl_libfound == "yes" -then - # Find the lib basename: - - tcl_libname=$(echo $tcl_libname|cut -c 4- ) # trim off lib - # - # Use basename to trim of the .a or .so: - # - - tcl_libname=$(basename $(basename $tcl_libname .a) .so) - echo tcl libname $tcl_libname - - - - tk_libname=tk$(echo $tcl_libname|cut -c 4-) # trim off tc...and use tk - - TCL_LDFLAGS="-L${tcl_libdir} -l${tk_libname} -l${tcl_libname}" - -else - AC_MSG_ERROR([Unable to find the tcl library, help me out with --with-tcl-libdir]) -fi - - -# Epics: - -# Requires --enable-epics-tools=yes -# Look for epics in: -# /usr/local/epics -# /opt/epics -# /soft/intel/epics [nscl]. -# --with-epics-rootdir= -# Underneath that we have (we require intel linux remember): -# include - the include directory -# include/os/linux-x86 - os specific includes. -# lib/linux-x86 - libs -# bin/linux-x86/caRepeater - The caRepeater program. -# - -BUILD_EPICS_TOOLS=no -AC_ARG_ENABLE([epics-tools], - AS_HELP_STRING([--enable-epics-tools=yes/no], - [Build software that requires EPICS (default no)]), - [BUILD_EPICS_TOOLS="yes"]) - -if test "$BUILD_EPICS_TOOLS" == "yes" -then - -epicstestdirs="/usr/local/epics /opt/epics /soft/intel/epics" -haveepics="no" - - -AC_MSG_CHECKING([ for epics includes, libs and binaries]) - -# Check for --with-epics-rootdir.... - -AC_ARG_WITH(epics-rootdir, - [ --with-epics-rootdir=top level directory of EPICS install (requires --enable-epics-tools)], - [haveepics="yes" - epicsroot="$withval"], - [haveepics="no"]) - - - -if test $haveepics == "no" -then - for dir in $epicstestdirs - do - if test $haveepics == "no" - then - AC_CHECK_FILE([${dir}/include/cadef.h], - [haveepics="yes" - epicsroot=$dir]) - fi - done -fi - -# If we found epics we can build the software that needs it. -# otherwise it's optional. - -if test $haveepics == "yes" -then - # Have epics: - - epics=true - EPICS_INCLUDES="-I$epicsroot/include -I$epicsroot/include/os/Linux" - EPICS_LDFLAGS="-L$epicsroot/lib/linux-x86 -lca -Wl,\"-rpath=$epicsroot/lib/linux-x86\"" - EPICS_BIN="-DEPICS_BIN=\"\\\"$epicsroot/bin/linux-x86\\\"\"" -else - epics=false -fi - -fi - -# -# The SBS software will only be built if -# --enable-sbs=kernel-source-dir was supplied. -# In that case, the configured kernel source is assumed to be in -# kernel-source-dir and that will be used to compile the device driver -# as well. -# The default is to _not_ build the sbs stuff. -# - -BUILD_SBS="no" - -AC_ARG_ENABLE([sbs], - AS_HELP_STRING([--enable-sbs=kernel-source-dir], [Build SBS software using kernel-source-dir as directory with configured kernel source]), - [BUILD_SBS="yes" - KERNEL_SOURCE_DIR="$enableval"]) - - - - -if test "$BUILD_SBS" == "yes" -then - echo Building SBS software with kernel source at: $KERNEL_SOURCE_DIR -else - echo SBS software support not selected! -fi - - -# -# If --enable-usb is turned on, we build the VM/CC-usb support directories -# -enableusb="no" -AC_ARG_ENABLE([usb], - AS_HELP_STRING([--enable-usb], [Build support for CC/VM usb data taking]), - [enableusb="yes"]) - -# If building is turned on we need to locate the headers and the includes. - - -if test "$enableusb" == "yes" -then - headerdirs="/usr/include /usr/local/include" - libdirs="/lib /usr/lib /usr/local/lib /usr/lib/x86_64-linux-gnu" - - usbheaderdir="" - usblibdir="" - - AC_MSG_CHECKING([for libusb headers]) - AC_ARG_WITH(usb-headerdir, - [ --with-usb-headerdir=Path to usb.h], - [usbheaderdir=$withval],[]) - - if test "$usbheaderdir" == "" - then - for dir in $headerdirs - do - if test "$usbheaderdir" == "" - then - AC_CHECK_FILE([$dir/usb.h], - [usbheaderdir=$dir]) - fi - done - fi - - if test "$usbheaderdir" != "" - then - USBSWITCHES="-I${usbheaderdir}" - AC_MSG_RESULT([found in $usbheaderdir]) - else - AC_MSG_ERROR([Can't find usb.h install libusb development or try using --with-usb-header-dir to help me find it]) - fi - - AC_MSG_CHECKING([for libusb library]) - AC_ARG_WITH(usb-libdir, - [ --with-usb-libdir=Path to libusb.a], - [usblibdir=$withval],[]) - - if test "$usblibdir" == "" - then - for dir in $libdirs - do - if test "$usblibdir" == "" - then - AC_CHECK_FILE([$dir/libusb.a], - [usblibdir=$dir]) - fi - done - fi - - if test "$usblibdir" != "" - then - USB_LIBS="-L${usblibdir} -lusb" - AC_MSG_RESULT([found in $usblibdir]) - else - AC_MSG_ERROR([Can't find libusb.a install libusb or try using --with-usb-libdir to tell me where to find it]) - fi - # If we got this far the symbos can be exported to the makefiles: - - AC_SUBST(USBSWITCHES) - AC_SUBST(USB_LIBS) -fi - - - -#---------------------------------------------------------------------------- - -# Exports to the makefiles: - -AC_SUBST(SOVERSION) -AC_SUBST(MANDB) - -AC_SUBST(TCL_FLAGS) -AC_SUBST(TCL_LDFLAGS) -AC_SUBST(TCLSH_CMD) - -echo "Epics: " x$haveepics - -AM_CONDITIONAL([EPICS], [test x$haveepics = xyes]) -AM_CONDITIONAL(BUILD_EPICS_TOOLS, [test x$BUILD_EPICS_TOOLS = xyes]) - -AC_SUBST(EPICS_INCLUDES) -AC_SUBST(EPICS_LDFLAGS) -AC_SUBST(EPICS_BIN) - - -AC_SUBST(GENGETOPT) - -AC_SUBST(CPPUNIT_LDFLAGS) - -AM_CONDITIONAL([PDFDOCS], [test x$HAVE_DOCBOOK2PDF = xtrue]) -AM_CONDITIONAL([XMLMANS], [test x$HAVE_XMLTO = xtrue]) -AM_CONDITIONAL([BUILD_USB], [test x$enableusb = xyes]) - -# -# Threading is hard coded to -pthread now. -# -THREADCXX_FLAGS="-pthread" -THREADC_FLAGS="-pthread" -THREADLD_FLAGS="-lpthread -lrt" - -AC_SUBST(THREADCXX_FLAGS) -AC_SUBST(THREADC_FLAGS) -AC_SUBST(THREADLD_FLAGS) - -# SBS stuff: - -AC_SUBST(KERNEL_SOURCE_DIR) -AM_CONDITIONAL([BUILD_SBS_DRIVER], [test "$BUILD_SBS" == "yes"]) - - - - -#--------------------------------------------------------------------------- -# Generate the following from their .in's (note that Automake takes -# *.am -> *.in. -# - -AC_CONFIG_FILES([Makefile - base/Makefile - base/os/Makefile - base/CopyrightTools/Makefile - base/cvt/Makefile - base/exception/Makefile - base/thread/Makefile - base/headers/Makefile - base/security/Makefile - base/tclplus/Makefile - base/tclwidgets/Makefile - base/uri/Makefile - base/dataflow/Makefile - servers/Makefile - servers/tclserver/Makefile - servers/portmanager/Makefile - utilities/Makefile - utilities/daqstart/Makefile - utilities/dvdburn/Makefile - utilities/scalerdisplay/Makefile - utilities/scalerdisplay/ScalerDisplay - utilities/sequencer/Makefile - utilities/ringselector/Makefile - utilities/bufdump/Makefile - utilities/eventlog/Makefile - utilities/sclclient/Makefile - utilities/tkbufdump/Makefile - utilities/compatibility/Makefile - utilities/compatibility/eventlog-compat - utilities/compatibility/spectcldaq - utilities/compatibility/s800toring - epics/chanlog/Makefile - epics/controlpush/Makefile - epics/epicsdisplay/Makefile - epics/epicsdisplay/epicsdisplay - epics/Makefile - daq/Makefile - daq/format/Makefile - daq/readoutgui/Makefile - daq/readoutgui/InstallRoot.tcl - daq/s800callouts/Makefile - sbs/Makefile - sbs/driver/Makefile - sbs/driver/src/Makefile - sbs/driver/include/Makefile - sbs/driver/dd/GNUmakefile - sbs/nsclapi/Makefile - sbs/tclpackage/Makefile - sbs/puretcl/Makefile - sbs/vmemodules/Makefile - sbs/readout/Makefile - sbs/readout/UserMakefile - sbs/readout/SBSRdoMakeIncludes - sbs/slowcontrols/Makefile - sbs/slowcontrols/vhq/Makefile - sbs/slowcontrols/caenv812/Makefile - sbs/slowcontrols/n568b/Makefile - sbs/slowcontrols/bcnaf/Makefile - sbs/slowcontrols/vhs/Makefile - sbs/scripted/Makefile - sbs/VmeDevice/Makefile - usb/Makefile - usb/vmusb/Makefile - usb/vmusb/vmusb/Makefile usb/vmusb/devices/Makefile - usb/vmusb/threadcomm/Makefile usb/vmusb/router/Makefile - usb/vmusb/rdothread/Makefile usb/vmusb/tclserver/Makefile - usb/vmusb/daqconfig/Makefile usb/vmusb/commands/Makefile - usb/vmusb/driverkit/Makefile usb/vmusb/driverkit/Makefile-template - usb/vmusb/tcldrivers/Makefile - usb/vmusb/driverkit/VMUSBDriverIncludes - usb/ccusb/Makefile - usb/ccusb/ccusb/Makefile usb/ccusb/devices/Makefile - usb/ccusb/threadcomm/Makefile usb/ccusb/router/Makefile - usb/ccusb/rdothread/Makefile usb/ccusb/tclserver/Makefile - usb/ccusb/daqconfig/Makefile usb/ccusb/commands/Makefile - usb/ccusb/driverkit/Makefile - usb/ccusb/driverkit/Makefile-template - usb/ccusb/driverkit/CCUSBDriverIncludes - docbuild/Makefile - docconfig/Makefile]) - -AC_OUTPUT - Copied: tags/nscldaq-v10.1-100/configure.ac (from rev 2969, trunk/nextgen/configure.ac) =================================================================== --- tags/nscldaq-v10.1-100/configure.ac (rev 0) +++ tags/nscldaq-v10.1-100/configure.ac 2013-01-18 16:08:17 UTC (rev 2974) @@ -0,0 +1,584 @@ +# -*- Autoconf -*- +# Process this file with autoconf to produce a configure script. + +AC_PREREQ(2.61) +AC_INIT(nscldaq, 10.1-100, fo...@ns...) + +AC_CONFIG_SRCDIR([/utilities/StringsToIntegers.h]) +AC_CONFIG_HEADER([config.h]) +AC_CONFIG_MACRO_DIR([m4]) + +# Checks for programs. +AC_PROG_CXX +AC_PROG_CC +AC_PROG_CPP +AC_PROG_INSTALL +AC_PROG_LIBTOOL + + +AC_CHECK_PROG(HAVE_GENGETOPT, [gengetopt], true, false) +AC_CHECK_PROG(HAVE_DOCBOOK2PDF, [docbook2pdf], true, false) +AC_CHECK_PROG(HAVE_XMLTO, [xmlto], true, false) +AC_CHECK_PROG(MANDB, mandb, mandb, echo) +AC_CHECK_PROG(SWIG, [swig], [swig], []) + +AC_CHECK_LIB([X11], [XSetWindowBackground]) +AC_CHECK_LIB([Xt], [XtManage]) +AC_CHECK_LIB([cppunit], [_ZN7CppUnit12XmlOutputterD1Ev], [CPPUNIT_LDFLAGS=-lcppunit]) +AC_CHECK_LIB([pub], [xrealloc], []) + + + + + +AC_HEADER_STDC +AC_HEADER_SYS_WAIT +AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h malloc.h netdb.h netinet/in.h stdint.h stdlib.h string.h sys/socket.h sys/time.h unistd.h]) + +# Checks for typedefs, structures, and compiler characteristics. + +AC_HEADER_STDBOOL +AC_C_CONST +AC_C_INLINE +AC_TYPE_OFF_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_HEADER_TIME +AC_STRUCT_TM +AC_TYPE_UID_T +AC_TYPE_UINT16_T +AC_TYPE_UINT32_T +AC_TYPE_UINT8_T + +# Checks for library functions. + +AC_FUNC_ERROR_AT_LINE +AC_FUNC_FORK +AC_FUNC_MALLOC +AC_CHECK_FUNCS([dup2 gethostbyaddr gethostbyname gettimeofday inet_ntoa memmove memset regcomp socket strchr strcspn strdup strerror strspn strtol]) + +AC_CHECK_FUNCS([ftruncate munmap]) +AC_FUNC_MMAP +AC_FUNC_STAT + +# Automake: + +AM_INIT_AUTOMAKE([]) + +# Makefile exports: + +SOVERSION="10:0:0" + + + + + +#--------------------------------------------------------------------- +# +# Local tests: +# + +# Ensure swig is installed: + +if test x$SWIG == x +then + AC_MSG_ERROR([Can't find SWIG in your program search path.]) +fi + +# We use gengetopt in a few places. Ideally it's been found by now in the +# path if not we'll need to do the withval thing.. or prompt the user to +# give us a --with-gengetopt-path +# + +if test x$HAVE_GENGETOPT == xtrue +then + GENGETOPT=gengetopt +else + AC_ARG_WITH(gengetopt-path, + [ --with-gengetopt-path=directory that has gengetopt], + [GENGETOPT=$withval], + GENGETOPT="") + if test x$GENGETOPT == x + then + AC_MSG_ERROR([Can't find gengetopt in path, install it or help me out with --with-gengetopt-path]) + fi +fi + + + +# Locate Tcl/Tk and setup compile/link switches for them too: +# The list below is the set of versions we will look for. At this +# time, 8.4 is pretty standard and 8.5 is impending which means that +# soon some redhat systems will have it I suppose. +# This list must be updated as time goes by. +# +tcl_versions="8.5 8.4 8.3 8.2 8.1 8.0" # First match; so order new -> old. + +# The TCL Shell - used to run tests... must be in path. +# First check for a version qualified command: +# + +AC_MSG_CHECKING([for tcl shell command...]) +for version in $tcl_versions +do + name=tclsh${version} + AC_CHECK_PROG(TCLSH_CMD, $name, $name) +done +# +# Could be unqualified by version: +# +AC_CHECK_PROG(TCLSH_CMD, tclsh, tclsh) + +if test "$TCLSH_CMD" == "" +then + AC_MSG_ERROR([Can't find a tcl shell]) +else + AC_MSG_RESULT([found: $TCLSH_CMD]) +fi + +# TCL headers: +# We know of a few places the headers can live: +# /usr/include redhat linux. +# /usr/include/tcl debian dude that made link to default tcl. +# /usr/include/tcl<version> debian linux +# /usr/local/include default for source based install. +# Whatever the user specifies. +# For now, the versions we loo... [truncated message content] |