diff --git a/.ci/travis-prepare.sh b/.ci/travis-prepare.sh index 003c4f6d..d0ba821c 100755 --- a/.ci/travis-prepare.sh +++ b/.ci/travis-prepare.sh @@ -19,6 +19,7 @@ cat << EOF > $RELEASE_PATH IPAC=$IPAC_PATH SNCSEQ=$SUPPORT/seq ASYN=$SUPPORT/asyn +MODBUS=$SUPPORT/modbus EPICS_BASE=$SUPPORT/epics-base EOF @@ -162,3 +163,15 @@ if [ ! -e "$SUPPORT/asyn/built" ]; then else echo "Using cached asyn" fi + +# modbus +if [ ! -e "$SUPPORT/modbus/built" ]; then + echo "Build modbus" + install -d $SUPPORT/modbus + git clone --depth 10 --branch $MODBUS https://github.com/epics-modules/modbus.git $SUPPORT/modbus + cp $RELEASE_PATH $SUPPORT/modbus/configure/RELEASE + make -C "$SUPPORT/modbus" -j2 + touch $SUPPORT/modbus/built +else + echo "Using cached modbus" +fi diff --git a/.travis.yml b/.travis.yml index e74a531c..b3d20d67 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,12 +16,14 @@ addons: - g++-mingw-w64-i686 - re2c env: - - BASE=3.14 STATIC=shared SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 - - BASE=3.14 STATIC=static SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 - - BASE=R3.15.6 STATIC=shared SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 - - BASE=R3.15.6 STATIC=static SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 - - BASE=7.0 STATIC=shared RTEMS=4.10 SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 - - BASE=7.0 STATIC=shared CMPLR=clang WINE=32 SEQ=2.2.4 ASYN=R4-35 IPAC= - - BASE=7.0 STATIC=static WINE=32 SEQ=2.2.6 ASYN=R4-35 IPAC= + - BASE=3.14 STATIC=shared SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 MODBUS=R2-11 + - BASE=3.14 STATIC=static SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 MODBUS=R2-11 + - BASE=R3.15.6 STATIC=shared SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 MODBUS=R2-11 + - BASE=R3.15.6 STATIC=static SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 MODBUS=R2-11 + - BASE=7.0 STATIC=shared RTEMS=4.10 SEQ=2.2.6 ASYN=R4-35 IPAC=2.15 MODBUS=R2-11 + - BASE=7.0 STATIC=shared CMPLR=clang WINE=32 SEQ=2.2.4 ASYN=R4-35 IPAC= MODBUS=R2-11 + - BASE=7.0 STATIC=static WINE=32 SEQ=2.2.6 ASYN=R4-35 IPAC= MODBUS=R2-11 install: ./.ci/travis-prepare.sh +before_script: + - cp ./configure/EXAMPLE_CONFIG_SITE.local ./configure/CONFIG_SITE.local script: make diff --git a/docs/RELEASE.md b/docs/RELEASE.md index bd4de542..1706cab0 100644 --- a/docs/RELEASE.md +++ b/docs/RELEASE.md @@ -1,5 +1,49 @@ # Motor Releases +## __R7-1 (2019-08-13)__ +R7-1 is a release based on the master branch. + +### Changes since R7-0 + +#### Bug fixes +* Req files are now installed to motor's top-level db directory when building against EPICS base 3.14 +* RELEASE now allows RELEASE.local files to override settings + +#### Driver submodules (and noteworthy changes) +| Module | Release | Changes | +| ---------------- | ------- | ------- | +| motorAcs | R1-0 | | +| motorAcsTech80 | R1-0 | | +| **motorAerotech** | **R1-0-1** | [Improvements to EnsembleTrajectoryScan](https://github.com/epics-motor/motorAerotech/releases/tag/R1-0-1) | +| motorAMCI | R1-0 | | +| motorAttocube | R1-0 | | +| motorDeltaTau | R1-0 | | +| motorFaulhaber | R1-0 | | +| motorHytec | R1-0 | | +| motorIms | R1-0 | | +| motorKohzu | R1-0 | | +| motorMclennan | R1-0 | | +| **motorMicos** | **R1-1** | [Improvements to SMC Hydra driver](https://github.com/epics-motor/motorMicos/releases/tag/R1-1) | +| motorMicroMo | R1-0 | | +| motorMicronix | R1-0 | | +| motorMotorSim | R1-0 | | +| motorMXmotor | R1-0 | | +| **motorNewFocus** | **R1-1** | [Improvements to 874xMotorDriver](https://github.com/epics-motor/motorNewFocus/releases/tag/R1-1) | +| **motorNewport** | **R1-0-1** | [Corrected typo that prevented template installation](https://github.com/epics-motor/motorNewport/releases/tag/R1-0-1) | +| motorNPoint | R1-0 | | +| motorOms | R1-0 | | +| motorOmsAsyn | R1-0 | | +| motorOriel | R1-0 | | +| motorParker | R1-0 | | +| motorPhytron | R1-0 | | +| motorPI | R1-0 | | +| motorPIGCS2 | R1-0 | | +| motorPiJena | R1-0 | | +| motorScriptMotor | R1-0 | | +| **motorSmarAct** | **R1-1** | [Added support for MCS2 controller](https://github.com/epics-motor/motorSmarAct/releases/tag/R1-1) | +| motorSmartMotor | R1-0 | | +| motorThorLabs | R1-0 | | + ## __R7-0 (2019-04-19)__ R7-0 is a release based on the master branch. diff --git a/docs/RELEASE.txt b/docs/RELEASE.txt index 0d41a308..e61ffe4e 100644 --- a/docs/RELEASE.txt +++ b/docs/RELEASE.txt @@ -219,6 +219,19 @@ Modification Log for R6-10 File modified: OmsSrc/drvMAXv.cc +8) Changed axis names from 'char *' to 'const char*' to avoid compiler warnings. + (Assigning literal string to char* is deprecated). + This affects driver_table.axis_names and driver_table.sendmsg used in + every motor driver. + *** THIS CHANGE BREAKS BACKWARD COMPATIBILITY! *** + All external motor drivers need to change their send_mess() function + to use 'const char*' as the last argument: + RTN_STATUS send_mess(int, const char *, const char *); + + Files modified: motorApp/MotorSrc/motordrvCom.h + motorApp/MotorSrc/motordrvCom.cc + motorApp/*Src/drv*.cc + Modification Log for R6-9 ========================= diff --git a/docs/index.html b/docs/index.html index 06d01df3..22e10847 100644 --- a/docs/index.html +++ b/docs/index.html @@ -50,6 +50,15 @@ the links in the table below:
github issues n/a + + R7-1 + R3.15.6 or later + motorR7-1.tar.gz + motorRecord.html + release notes + github issues + 2019-08-13 + R7-0 R3.15.6 or later @@ -306,6 +315,19 @@ the links in the table below:
Required modules Release needed + + R7-1 + ASYN  
+ IPAC  (for motorHytec & VME-based serial and GPIB examples)
+ LUA  (for motorScriptMotor)
+ MODBUS  (for motorAMCI IOCs) + + R4-35
+ R2-15
+ R1-3
+ R2-11 + + R7-0 ASYN  
@@ -641,7 +663,7 @@ different releases of EPICS and/or the other required modules are needed).

-Page Last Modified: 2019-04-19
+Page Last Modified: 2019-08-13
Kevin Peterson

diff --git a/docs/motorRecord.html b/docs/motorRecord.html index 95485f43..acddb243 100644 --- a/docs/motorRecord.html +++ b/docs/motorRecord.html @@ -35,9 +35,9 @@ -

Overview

This documentation describes version R7-0 of the EPICS motor +

Overview

This documentation describes version R7-1 of the EPICS motor record, and related EPICS software required to build and use it.  Version -R7-0 of the motor record is compatible with EPICS base R3.15.6 and above. +R7-1 of the motor record is compatible with EPICS base R3.15.6 and above.

The motor record is intended to support positioning motors of all kinds, but currently supports motor controllers from the following manufacturers: @@ -3623,6 +3623,6 @@ specific value (e.g., kV) that is not supported by the motor controller.


Suggestions and comments to:

Kevin Peterson : (kmpeters@anl.gov)
-Last modified: 2019-04-19 +Last modified: 2019-08-13 diff --git a/modules/motorAcs b/modules/motorAcs index 577fbcb7..ba3193b3 160000 --- a/modules/motorAcs +++ b/modules/motorAcs @@ -1 +1 @@ -Subproject commit 577fbcb73e4ba3736a2e7cf88c0df388dfc9dea5 +Subproject commit ba3193b340085a016ecc12e57e0a78736d20955a diff --git a/modules/motorAcsTech80 b/modules/motorAcsTech80 index c00e9414..f409282b 160000 --- a/modules/motorAcsTech80 +++ b/modules/motorAcsTech80 @@ -1 +1 @@ -Subproject commit c00e94140330148e49d8b84eefd62c3f998f57f3 +Subproject commit f409282bba942564d891e83a46e486940e3e353e diff --git a/modules/motorAerotech b/modules/motorAerotech index 8234d387..1b8e4c00 160000 --- a/modules/motorAerotech +++ b/modules/motorAerotech @@ -1 +1 @@ -Subproject commit 8234d387e24408191495551e45713d115d995639 +Subproject commit 1b8e4c00235b02ce904f30c0cf0e16b7ac55b2ce diff --git a/modules/motorFaulhaber b/modules/motorFaulhaber index f7b01882..e028325b 160000 --- a/modules/motorFaulhaber +++ b/modules/motorFaulhaber @@ -1 +1 @@ -Subproject commit f7b018822ea7e3ccb7207cd5b75025bea8d7c4ae +Subproject commit e028325b50901c9da01955a84541ace0768a6882 diff --git a/modules/motorHytec b/modules/motorHytec index e5f39322..7872aebc 160000 --- a/modules/motorHytec +++ b/modules/motorHytec @@ -1 +1 @@ -Subproject commit e5f3932222152e16c3dea8fef205b7f1724dbc42 +Subproject commit 7872aebc0f026efca7839e61410bc0a546922a8c diff --git a/modules/motorIms b/modules/motorIms index 3f95ae51..10c502c8 160000 --- a/modules/motorIms +++ b/modules/motorIms @@ -1 +1 @@ -Subproject commit 3f95ae51a382e05938105c42962eb1e41514d816 +Subproject commit 10c502c8dc118591f63cc4c9cdc41127883ff1f5 diff --git a/modules/motorKohzu b/modules/motorKohzu index 5b72942e..d4f694d5 160000 --- a/modules/motorKohzu +++ b/modules/motorKohzu @@ -1 +1 @@ -Subproject commit 5b72942e168d0109e82d332ef3e81a74d7db5194 +Subproject commit d4f694d586a43c6c664c70e48ee54a30e38f0bef diff --git a/modules/motorMclennan b/modules/motorMclennan index 89fe35d1..f4f17084 160000 --- a/modules/motorMclennan +++ b/modules/motorMclennan @@ -1 +1 @@ -Subproject commit 89fe35d107c3946089493c1b8d11311ba0122e42 +Subproject commit f4f170849731d0c5ef84a05315a1dcffe802b881 diff --git a/modules/motorMicos b/modules/motorMicos index 43ecc7fd..e92135f3 160000 --- a/modules/motorMicos +++ b/modules/motorMicos @@ -1 +1 @@ -Subproject commit 43ecc7fd4a975cc87e56628ba3e9fe9c30559adb +Subproject commit e92135f37c5367b12a9d762e409fb86f3555fd5b diff --git a/modules/motorMicroMo b/modules/motorMicroMo index ba3e575a..04331b5c 160000 --- a/modules/motorMicroMo +++ b/modules/motorMicroMo @@ -1 +1 @@ -Subproject commit ba3e575aec69ca764b436f8a0b86449bc56920af +Subproject commit 04331b5cfa223a530591a6f2273b414531d8d151 diff --git a/modules/motorNewFocus b/modules/motorNewFocus index dc1e0a7d..9b5dc615 160000 --- a/modules/motorNewFocus +++ b/modules/motorNewFocus @@ -1 +1 @@ -Subproject commit dc1e0a7d336db3cb36fc3f9fd5e50af4f104fc15 +Subproject commit 9b5dc61554a2748db776ad71cda5b1acdf712084 diff --git a/modules/motorNewport b/modules/motorNewport index cdd60e59..6201b857 160000 --- a/modules/motorNewport +++ b/modules/motorNewport @@ -1 +1 @@ -Subproject commit cdd60e596f2e2855af6fd76c4320e7ed6102542f +Subproject commit 6201b85711edb3437343487f3dcd96149473cbba diff --git a/modules/motorOms b/modules/motorOms index 85cde67e..ee078b39 160000 --- a/modules/motorOms +++ b/modules/motorOms @@ -1 +1 @@ -Subproject commit 85cde67e5c785d1dfc1f46c35105f5ef796b579e +Subproject commit ee078b399c77135f88cbd672da72bc2ae9e0669e diff --git a/modules/motorOmsAsyn b/modules/motorOmsAsyn index 1b4c794c..e949e2c5 160000 --- a/modules/motorOmsAsyn +++ b/modules/motorOmsAsyn @@ -1 +1 @@ -Subproject commit 1b4c794c24c8794b4cb6efb07c024fa9c1bb7d76 +Subproject commit e949e2c51c0766a878dd7f1c322d1144305f06fe diff --git a/modules/motorOriel b/modules/motorOriel index 6f151eab..e325636d 160000 --- a/modules/motorOriel +++ b/modules/motorOriel @@ -1 +1 @@ -Subproject commit 6f151eabf53e9e5f9f0c51dff662147524beb5e2 +Subproject commit e325636dbb06ed5c425fdc81a84bbd7b4ce00740 diff --git a/modules/motorPI b/modules/motorPI index 13c2b1c7..3e8d6cc3 160000 --- a/modules/motorPI +++ b/modules/motorPI @@ -1 +1 @@ -Subproject commit 13c2b1c75b3f49090bcc718c04e2c364c650ee44 +Subproject commit 3e8d6cc3fca4c38abdbc6404b2f772adc1bafbaf diff --git a/modules/motorParker b/modules/motorParker index 1f978b4f..efe069c2 160000 --- a/modules/motorParker +++ b/modules/motorParker @@ -1 +1 @@ -Subproject commit 1f978b4fd8ae50608c6b2d71ecb8f06c78d98d81 +Subproject commit efe069c2c2bfaed292a6b687290e789df114d88d diff --git a/modules/motorPiJena b/modules/motorPiJena index b1c58607..1dd01ea9 160000 --- a/modules/motorPiJena +++ b/modules/motorPiJena @@ -1 +1 @@ -Subproject commit b1c586075f31cdce13085c7fcabadedcc22a95c1 +Subproject commit 1dd01ea908e0baac3e6e2929595fb7da4f6d40b2 diff --git a/modules/motorSmarAct b/modules/motorSmarAct index c342ce08..66015236 160000 --- a/modules/motorSmarAct +++ b/modules/motorSmarAct @@ -1 +1 @@ -Subproject commit c342ce08e84b27a17ec7f50d48175618826849cb +Subproject commit 66015236bd1bf44176bf6dc5cdb99761b43dee31 diff --git a/modules/motorSmartMotor b/modules/motorSmartMotor index ee30ba9c..23eb223b 160000 --- a/modules/motorSmartMotor +++ b/modules/motorSmartMotor @@ -1 +1 @@ -Subproject commit ee30ba9cc44761a0cd28e22c9b48903368417096 +Subproject commit 23eb223b1dd36ca4a79734d678fc3d9f36e1f214 diff --git a/modules/motorThorLabs b/modules/motorThorLabs index 0a9ec8f1..11365b26 160000 --- a/modules/motorThorLabs +++ b/modules/motorThorLabs @@ -1 +1 @@ -Subproject commit 0a9ec8f1184f0b37e12f79b2746303f9fbbbe9c2 +Subproject commit 11365b26a6a63d474dc3e95b53e1213bfa01b6a2 diff --git a/motorApp/Db/Makefile b/motorApp/Db/Makefile index 0f40b164..4a32d43a 100644 --- a/motorApp/Db/Makefile +++ b/motorApp/Db/Makefile @@ -19,7 +19,7 @@ DB += $(patsubst ../%, %, $(wildcard ../*.template)) DB += $(patsubst ../%, %, $(wildcard ../*.db)) DB += $(patsubst ../%, %, $(wildcard ../*.vdb)) -REQ += $(patsubst ../%, %, $(wildcard ../*.req)) +DB += $(patsubst ../%, %, $(wildcard ../*.req)) #---------------------------------------------------- # Declare template files which do not show up in DB diff --git a/motorApp/MotorSrc/motorRecord.cc b/motorApp/MotorSrc/motorRecord.cc index 3aaf1a32..03a04d5d 100644 --- a/motorApp/MotorSrc/motorRecord.cc +++ b/motorApp/MotorSrc/motorRecord.cc @@ -192,7 +192,7 @@ USAGE... Motor Record Support. * .78 08-21-18 kmp - Reverted .69 stop on RA_PROBLEM true. */ -#define VERSION 6.10 +#define VERSION 7.1 #include #include diff --git a/motorApp/MotorSrc/motordrvCom.cc b/motorApp/MotorSrc/motordrvCom.cc index b0323825..a5c3eb85 100644 --- a/motorApp/MotorSrc/motordrvCom.cc +++ b/motorApp/MotorSrc/motordrvCom.cc @@ -312,7 +312,7 @@ static void process_messages(struct driver_table *tabptr, epicsTime tick, struct mess_info *motor_info; struct controller *brdptr; char inbuf[MAX_MSG_SIZE]; - char *axis_name; + const char *axis_name; if (tabptr->axis_names == NULL) axis_name = (char *) NULL; diff --git a/motorApp/MotorSrc/motordrvCom.h b/motorApp/MotorSrc/motordrvCom.h index c2351f5c..98e736af 100644 --- a/motorApp/MotorSrc/motordrvCom.h +++ b/motorApp/MotorSrc/motordrvCom.h @@ -196,13 +196,13 @@ struct driver_table struct controller ***card_array; int *cardcnt_ptr; int *any_inmotion_ptr; - RTN_STATUS (*sendmsg) (int, char const *, char *); + RTN_STATUS (*sendmsg) (int, const char *, const char *); int (*getmsg) (int, char *, int); int (*setstat) (int, int); void (*query_done) (int, int, struct mess_node *); void (*strtstat) (int); /* Optional; start status function or NULL. */ const bool *const init_indicator; /* Driver initialized indicator. */ - char **axis_names; /* Axis name array or NULL. */ + const char **axis_names; /* Axis name array or NULL. */ };