Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New upstream version 2.2.7 #9

Open
wants to merge 1 commit into
base: upstream
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion configure/CONFIG
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,4 @@ ECHO := $(if $(findstring s,$(MAKEFLAGS)),$(NOP),@echo)
# to check for strict C90 compatibility with gcc uncomment the following line:
#USR_CFLAGS += -std=c90 -Wpedantic -Wno-long-long -Wno-format

SEQ_RELEASE = 2.2.6
SEQ_RELEASE = 2.2.7
3 changes: 3 additions & 0 deletions configure/CONFIG_SITE
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,6 @@
# You might want to change this to something like
# RE2C = /path/to/your/re2c/installation/bin/re2c
RE2C = re2c$(HOSTEXE)

-include $(TOP)/../CONFIG_SITE.local
-include $(TOP)/configure/CONFIG_SITE.local
7 changes: 7 additions & 0 deletions configure/RELEASE
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,11 @@
# top directory each time changes are made to this file

EPICS_BASE=/home/franksen/src/epics-base/3-14-12-5

# legacy support for synapps
-include $(TOP)/../configure/EPICS_BASE.$(EPICS_HOST_ARCH)

# this is how it is done nowadays
-include $(TOP)/../RELEASE.local
-include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local
-include $(TOP)/configure/RELEASE.local
28 changes: 15 additions & 13 deletions documentation/Installation.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Releases are available here:

http://www-csr.bessy.de/control/SoftDist/sequencer/releases/

The current stable release is `2.2.5`_. Please take a look at the
The current stable release is `2.2.7`_. Please take a look at the
`VersioningPolicy` if you are unsure whether to upgrade to
a new release.

Expand All @@ -72,16 +72,17 @@ In the releases directory there is always a symbolic link to the

Here are all releases for version 2.2:

========== =========================== ============================
Version Release Notes Known Problems
========== =========================== ============================
`2.2.6`_ `Release_Notes_2.2.6` n/a
`2.2.5`_ `Release_Notes_2.2.5` `Known_Problems_2.2.5`
`2.2.4`_ `Release_Notes_2.2.4` `Known_Problems_2.2.4`
`2.2.3`_ `Release_Notes_2.2.3` `Known_Problems_2.2.3`
`2.2.2`_ `Release_Notes_2.2.2` `Known_Problems_2.2.2`
`2.2.1`_ `Release_Notes_2.2.1` `Known_Problems_2.2.1`
========== =========================== ============================
========== ======================= ============================
Version Release Notes Known Problems
========== ======================= ============================
`2.2.7`_ `Release_Notes_2.2.7` n/a
`2.2.6`_ `Release_Notes_2.2.6` `Known_Problems_2.2.6`
`2.2.5`_ `Release_Notes_2.2.5` `Known_Problems_2.2.5`
`2.2.4`_ `Release_Notes_2.2.4` `Known_Problems_2.2.4`
`2.2.3`_ `Release_Notes_2.2.3` `Known_Problems_2.2.3`
`2.2.2`_ `Release_Notes_2.2.2` `Known_Problems_2.2.2`
`2.2.1`_ `Release_Notes_2.2.1` `Known_Problems_2.2.1`
========== ======================= ============================

If you want to help testing, please use the `latest snapshot`_, or check out
the `darcs`_ repository for `branch-2-2`_::
Expand All @@ -104,6 +105,7 @@ See `Contribute`_ for a short description how to record and send patches.
You can also follow development by using the `repository browser`_.

.. _latest snapshot: http://www-csr.bessy.de/control/SoftDist/sequencer/releases/seq-2-2-snapshot-latest.tar.gz
.. _2.2.7: http://www-csr.bessy.de/control/SoftDist/sequencer/releases/seq-2.2.7.tar.gz
.. _2.2.6: http://www-csr.bessy.de/control/SoftDist/sequencer/releases/seq-2.2.6.tar.gz
.. _2.2.5: http://www-csr.bessy.de/control/SoftDist/sequencer/releases/seq-2.2.5.tar.gz
.. _2.2.4: http://www-csr.bessy.de/control/SoftDist/sequencer/releases/seq-2.2.4.tar.gz
Expand Down Expand Up @@ -257,11 +259,11 @@ after each one giving a summary of how many tests failed etc.

To check out an example, change directory to examples/demo and run ::

../../bin/$EPICS_HOST_ARCH/demo stcmd.host
./O.linux-x86_64/demo demo.stcmd

The output should look something like this::

ben@sarun[1]: .../examples/demo > ../../bin/linux-x86/demo stcmd.host
ben@sarun[1]: .../examples/demo > ./O.linux-x86_64/demo demo.stcmd
dbLoadDatabase "../../dbd/demo.dbd"
demo_registerRecordDeviceDriver(pdbbase)
dbLoadRecords "demo.db"
Expand Down
11 changes: 11 additions & 0 deletions documentation/KnownProblems.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
Known Problems
==============

.. _Known_Problems_2.2.6:

Known Problems in Release 2.2.6
-------------------------------

* pvGet fails if the array size declared in SNL is greater than the native
array size of the PV, whereas monitoring with that setup works.

* The examples/demo doesn't work with base >+ 3.15 due to a missing entry in
the dbd file.

.. _Known_Problems_2.2.5:

Known Problems in Release 2.2.5
Expand Down
5 changes: 1 addition & 4 deletions documentation/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,10 @@ include $(TOP)/configure/CONFIG
# You can set these variables from the command line.
SPHINXOPTS = -q #-n
SPHINXBUILD = sphinx-build
PAPER = a4
BUILDDIR = O.Common

# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(SPHINXOPTS) .

.PHONY: install all build realclean
.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes
Expand Down
58 changes: 58 additions & 0 deletions documentation/ReleaseNotes-2-2.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,64 @@
Release Notes for Version 2.2
=============================

.. _Release_Notes_2.2.7:

Release 2.2.7
-------------

Bug fixes:

* fix: pvGet should not request more elements than the channel has

Otherwise the CA call will fail and we get no data at all.

Thanks to Dejan Kocjan <[email protected]> for finding the cause of
this problem and proposing the fix.

* tests: extend array test with pvPut and pvGet

This tests that both work as expected even if the declared array size is
shorter or longer than the native array size of the PV.

* fix a bug in seqMacParse

When the value of a parameter is the unquoted empty string as in "var=",
this would not be recognized and the default value was used instead. Just a
stupid unnecessary explicit test I had to remove. Thanks to Hovanes Egiyan
for reporting this problem.

* Fix build problems in examples/ on Windows

The registerRecordDeviceDriver.pl script generates code that on Windows
requires symbols named in the DBD file to be linked from an DLL, not from a
directly-linked source file. When main() is directly linked with an object
file containing a registrar entry, we can call that registrar code directly
from main() as done here instead of using the generated code.

These build errors may only appear when using a MinGW compiler, either
native or as a cross-build running on another OS.

* fix PROD_LIBS definition in test/unit/Makefile

Thanks to Michael Davidsaver <[email protected]> for spotting this.

* fix: add missing braces around if body in seqShowAll

* fix #if expression to determine whether base < 3.14.10

Various minor improvements:

* build: add standard includes to configure/{RELEASE,CONFIG_SITE}

* examples/demo: use $EPICS_HOST_ARCH in runme.sh

* add a small example to test program parameters

* docs: adapt how to invoke the demo program

* docs: made blockdiags a bit more readable


.. _Release_Notes_2.2.6:

Release 2.2.6
Expand Down
28 changes: 18 additions & 10 deletions documentation/Tutorial.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,25 +51,29 @@ The following is a graphical representation of the above state machine:
default_group_color = "#6BA81E"

span_width = 180 // default value is 64
span_height = 30 // default value is 40
span_height = 50 // default value is 40

class start [shape = minidiamond, color = "#6BA81E", fontsize = 14]
class state [shape = cloud, style = "1,2", height = 30, width = 100, color = "#6BA81E", fontsize = 14]
class start [shape = minidiamond]
class state [style = dashed, height = 30, width = 100]
class cond [shape = flowchart.condition, width = 80, height = 30]
class actions [shape = flowchart.terminator, width = 120]
class inner [style = "1,2"]

start [class = start]
start -> light_off
group {
light_off [class = state]
shape = line
style = dashed
light_off [class = state, label = "state: light_off"]
v_above_5 [class = cond, label = "v > 5"]
turn_on [class = actions, label = "light = TRUE;\npvPut(light);"]
light_off -> v_above_5 -> turn_on [class = inner]
}
turn_on -> light_on
group {
light_on [class = state]
shape = line
style = dashed
light_on [class = state, label = "state: light_on"]
v_below_3 [class = cond, label = "v < 3"]
turn_off [class = actions, label = "light = FALSE;\npvPut(light);"]
light_on -> v_below_3 -> turn_off [class = inner]
Expand Down Expand Up @@ -260,25 +264,29 @@ following STD:
default_group_color = "#6BA81E"

span_width = 180 // default value is 64
span_height = 30 // default value is 40
span_height = 50 // default value is 40

class start [shape = minidiamond, color = "#6BA81E", fontsize = 14]
class state [shape = cloud, style = "1,2", height = 30, width = 100, color = "#6BA81E", fontsize = 14]
class start [shape = minidiamond]
class state [style = dashed, height = 30, width = 100]
class cond [shape = flowchart.condition, width = 80, height = 30]
class actions [shape = flowchart.terminator, width = 120]
class inner [style = "1,2"]

start [class = start]
start -> init
group {
init [class = state, label = "state init"]
shape = line
style = dashed
init [class = state, label = "state: init"]
nil [class = cond, label = "TRUE"]
set_vout [class = actions, height = 55, label = "vout = 0.0;\npvPut(vout);\ndelta = 0.2;\n"]
init -> nil -> set_vout [class = inner]
}
set_vout -> ramp
group {
ramp [class = state, label = "state ramp"]
shape = line
style = dashed
ramp [class = state, label = "state: ramp"]
delay [class = cond, label = "delay(0.1)", width = 100]
repeat [class = actions, label = "...\nvout += delta;"]
ramp -> delay -> repeat [class = inner]
Expand Down
2 changes: 0 additions & 2 deletions examples/cmdButtons/cmdButtonsInclude.dbd
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,3 @@ include "stringoutRecord.dbd"

device(bo, CONSTANT, devBoSoft, "Soft Channel")
device(stringout, CONSTANT, devSoSoft, "Soft Channel")

registrar(seqCmdBtnsRegistrar)
4 changes: 4 additions & 0 deletions examples/cmdButtons/cmdButtonsMain.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,12 @@ in the file LICENSE that is included with this distribution.

#include "iocsh.h"

/* Call cmdButtonsRegistrar manually, avoids build problems on Windows */
void (*pvar_func_cmdButtonsRegistrar)(void);

int main(int argc,char *argv[])
{
(*pvar_func_cmdButtonsRegistrar)();
if(argc>=2)
iocsh(argv[1]);
iocsh(NULL);
Expand Down
1 change: 0 additions & 1 deletion examples/demo/demoInclude.dbd
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
include "base.dbd"
registrar(demoRegistrar)
4 changes: 4 additions & 0 deletions examples/demo/demoMain.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,12 @@ in the file LICENSE that is included with this distribution.

#include "iocsh.h"

/* Call demoRegistrar manually, avoids build problems on Windows */
void (*pvar_func_demoRegistrar)(void);

int main(int argc,char *argv[])
{
(*pvar_func_demoRegistrar)();
if(argc>=2)
iocsh(argv[1]);
iocsh(NULL);
Expand Down
2 changes: 1 addition & 1 deletion examples/demo/runme.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
#!/bin/sh
./O.linux-x86/demo demo.stcmd
./O.$EPICS_HOST_ARCH/demo demo.stcmd
1 change: 1 addition & 0 deletions examples/small/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ TESTPROD_HOST += delay
TESTPROD_HOST += entry
TESTPROD_HOST += entryVar
TESTPROD_HOST += optt
TESTPROD_HOST += parameter
TESTPROD_HOST += pvTimeStamp
TESTPROD_HOST += syncq
TESTPROD_HOST += timer
Expand Down
12 changes: 12 additions & 0 deletions examples/small/parameter.st
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// run this as e.g.
// ./O.linux-x86_64/parameter "var=value"
// ./O.linux-x86_64/parameter "var="
program parameterTest("var=default")

ss one {
state one {
when() {
printf("var=%s\n",macValueGet("var"));
} exit
}
}
1 change: 0 additions & 1 deletion examples/traffic/trafficInclude.dbd
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
include base.dbd
registrar(trafficRegistrar)
6 changes: 5 additions & 1 deletion examples/traffic/trafficMain.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ in the file LICENSE that is included with this distribution.
\*************************************************************************/
/* Author: Marty Kraimer Date: 17MAR2000 */
/*
* Main program for demo sequencer
* Main program for traffic sequencer
*/
#include <stddef.h>
#include <stdlib.h>
Expand All @@ -16,8 +16,12 @@ in the file LICENSE that is included with this distribution.

#include "iocsh.h"

/* Call trafficRegistrar manually, avoids build problems on Windows */
void (*pvar_func_trafficRegistrar)(void);

int main(int argc,char *argv[])
{
(*pvar_func_trafficRegistrar)();
if(argc>=2)
iocsh(argv[1]);
iocsh(NULL);
Expand Down
2 changes: 1 addition & 1 deletion src/seq/seq_if.c
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ epicsShareFunc pvStat seq_pvGetTmo(SS_ID ss, CH_ID chId, enum compType compType,
status = pvVarGetCallback(
&dbch->pvid, /* PV id */
ch->type->getType, /* request type */
ch->count, /* element count */
dbch->dbCount, /* element count */
req); /* user arg */
if (status != pvStatOK)
{
Expand Down
2 changes: 0 additions & 2 deletions src/seq/seq_mac.c
Original file line number Diff line number Diff line change
Expand Up @@ -174,8 +174,6 @@ void seqMacParse(PROG *sp, const char *macStr)

/* Parse the value */
nChar = seqMacParseValue(macStr);
if (nChar == 0)
break;

/* Remove previous value if it exists */
value = mac->value;
Expand Down
2 changes: 2 additions & 0 deletions src/seq/seq_qry.c
Original file line number Diff line number Diff line change
Expand Up @@ -406,8 +406,10 @@ static int seqShowSP(PROG *sp, void *parg)
int *pprogCount = (int *)parg;

if ((*pprogCount)++ == 0)
{
printf("Program Name Thread ID Thread Name SS Name\n");
printf("------------ --------- ----------- -------\n");
}
progName = sp->progName;
for (nss = 0; nss < sp->numSS; nss++)
{
Expand Down
2 changes: 1 addition & 1 deletion src/snc/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ typedef unsigned int uint;

struct sym_table
{
#if EPICS_REVISION<14 || (EPICS_REVISION==14 && EPICS_MODIFICATION <= 10)
#if (EPICS_VERSION == 3) && (EPICS_REVISION<14 || (EPICS_REVISION==14 && EPICS_MODIFICATION <= 10))
void *table;
#else
struct gphPvt *table;
Expand Down
2 changes: 1 addition & 1 deletion test/unit/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ TOP=../..

include $(TOP)/configure/CONFIG

PROD_LIBS += Com seq pv
PROD_LIBS += seq pv ca Com

USR_INCLUDES += -I$(TOP)/src/seq

Expand Down
2 changes: 1 addition & 1 deletion test/validate/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ SNCFLAGS_vxWorks += -nil-
# Set to path of valgrind executable if tests should run under valgrind
USE_VALGRIND =

REGRESSION_TESTS_WITH_DB += array
REGRESSION_TESTS_WITH_DB += bittypes
REGRESSION_TESTS_WITH_DB += evflag
REGRESSION_TESTS_WITH_DB += monitorEvflag
Expand All @@ -32,7 +33,6 @@ REGRESSION_TESTS_WITH_DB += norace
# fail (safe mode off)
#REGRESSION_TESTS_WITH_DB += race

REGRESSION_TESTS_WITHOUT_DB += array
REGRESSION_TESTS_WITHOUT_DB += assign
REGRESSION_TESTS_WITHOUT_DB += change
REGRESSION_TESTS_WITHOUT_DB += commaOperator
Expand Down
Loading