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

Import new upstream version 2.1.2.0 #9

Open
wants to merge 4 commits into
base: master
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 .ci/travis-build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ make -j2 $EXTRA
# Configure pyepics and IOC wrapper
eval `grep -m 1 "EPICS_BASE[[:space:]]*=" configure/RELEASE.local`
EPICS_HOST_ARCH=`sh $EPICS_BASE/startup/EpicsHostArch`
export PYEPICS_LIBCA=$EPICS_BASE/lib/$EPICS_HOST_ARCH/libca.so
[ "$CMPLR" = "clang" ] || export PYEPICS_LIBCA=$EPICS_BASE/lib/$EPICS_HOST_ARCH/libca.so
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$EPICS_BASE/lib/$EPICS_HOST_ARCH
export PATH=$PATH:$EPICS_BASE/bin/$EPICS_HOST_ARCH

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ html/
envPaths
QtC-*
*.orig
__pycache__

# Gateway generated scriptlets
gateway.killer
Expand Down
6 changes: 2 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@ language: cpp
env:
- BASE=7.0
- BASE=7.0 STATIC=YES
- BASE=3.16
- BASE=3.16 STATIC=YES
- BASE=3.16 STATIC=YES EXTRA=CMD_CXXFLAGS=-std=c++11
- BASE=3.16 CMPLR=clang
- BASE=7.0 STATIC=YES EXTRA=CMD_CXXFLAGS=-std=c++11
- BASE=7.0 CMPLR=clang
- BASE=3.15
- BASE=3.15 STATIC=YES
- BASE=3.14
Expand Down
16 changes: 15 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<a target="_blank" href="http://semver.org">![Version][badge.version]</a>
<a target="_blank" href="https://travis-ci.org/epics-extensions/ca-gateway">![Travis status][badge.travis]</a>

# Channel Access PV Gateway
[![Build Status](https://travis-ci.org/epics-extensions/ca-gateway.svg?branch=master)](https://travis-ci.org/epics-extensions/ca-gateway)

The [EPICS](https://epics-controls.org) Channel Access PV Gateway is both a
Channel Access server and Channel Access client.
Expand All @@ -13,6 +15,14 @@ to needed process variables.
The Gateway typically runs on a machine with multiple network cards,
and the clients and the server may be on different subnets.

## Dependencies

The CA Gateway is using the PCAS server library and needs the PCAS module
(https://github.com/epics-modules/pcas) when compiled against EPICS 7 (>= 3.16).

If you compile the CA Gateway with caPutLog support
(https://github.com/epics-modules/caPutLog), a caPutLog version >= 3.5 is required.

## Continuous Integration

The CI jobs for CA Gateway are provided by
Expand All @@ -22,3 +32,7 @@ The CI jobs for CA Gateway are provided by

More details are available on the
[CA Gateway main web page](http://www.aps.anl.gov/epics/extensions/gateway/).

<!-- Links -->
[badge.version]: https://badge.fury.io/gh/epics-extensions%2Fca-gateway.svg
[badge.travis]: https://travis-ci.org/epics-extensions/ca-gateway.svg?branch=master
16 changes: 14 additions & 2 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,23 @@
CA Gateway Release Notes
========================

## 2.1.2 (not released yet)
[View diff](https://github.com/epics-extensions/ca-gateway/compare/R2-1-1-0...master)
## 2.1.3 (not released yet)
[View diff](https://github.com/epics-extensions/ca-gateway/compare/R2-1-2-0...master)

* Ehhh...

## 2.1.2 (25 Oct 2019)
[View diff](https://github.com/epics-extensions/ca-gateway/compare/R2-1-1-0...R2-1-2-0)

* Crash reported and fixed by Diamond (on MAX_ARRAY_BYTES mismatch).
* Improve handling of DBR_CTRL requests.
* Remove support for EPICS Base 3.13, Solaris
* Improve tests, make them compatible with python3
* Properly depend on PCAS for EPICS 7 builds
* Update to support caPutLog >= 3.5 (older versions not supported)
* Add support for 64bit integers
* Raise PV name length limit to 256 characters

## 2.1.1 (17 Oct 2018)
[View diff](https://github.com/epics-extensions/ca-gateway/compare/R2-1-0-0...R2-1-1-0)

Expand Down
19 changes: 2 additions & 17 deletions configure/CONFIG_SITE
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,6 @@ USE_DENY_FROM=YES
# Compiler options
#USR_CXXFLAGS += -xsb

# Use Purify
#PURIFY=YES

# Use Quantify
#QUANTIFY=YES

# Turn on debug mode
#USR_CXXFLAGS += -DDEBUG_MODE

Expand Down Expand Up @@ -89,21 +83,12 @@ USR_CXXFLAGS += -DHANDLE_EXCEPTIONS
# continue building anyway if conflicts are found.
CHECK_RELEASE = YES

# Set this when you only want to compile this application
# for a subset of the cross-compiled target architectures
# that Base is built for.
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040
# Disable cross-builds for this application
CROSS_COMPILER_TARGET_ARCHS =

# To install files into a location other than $(TOP) define
# INSTALL_LOCATION here.
#INSTALL_LOCATION=</path/name/to/install/top>

# Set this when your IOC and the host use different paths
# to access the application. This will be needed to boot
# from a Microsoft FTP server or with some NFS mounts.
# You must rebuild in the iocBoot directory for this to
# take effect.
#IOCS_APPL_TOP = </IOC/path/to/application/top>

-include $(TOP)/../CONFIG_SITE.local
-include $(TOP)/configure/CONFIG_SITE.local
4 changes: 4 additions & 0 deletions configure/RELEASE
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@

#CAPUTLOG=/usr/lib/epics

# PCAS was unbundled from EPICS Base and is needed for building the
# ca-gateway with EPICS 7
#PCAS=/your/path/to/modules/pcas/

# EPICS_BASE usually appears last so other apps can override stuff:
#EPICS_BASE=/usr/lib/epics

Expand Down
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
epics-cagateway (2.1.2.0-1) unstable; urgency=low

* Imported Upstream version 2.1.2.0

-- Anton Derbenev <[email protected]> Fri, 08 Nov 2019 15:48:19 -0500

epics-cagateway (2.1.1.0-1) unstable; urgency=medium

* add cagateway-ssh script with quilt 3.0 compliant patch
Expand Down
57 changes: 3 additions & 54 deletions src/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,41 +7,12 @@
# Operator of Los Alamos National Laboratory.
# Copyright (c) 2014-2016 ITER Organization.
# This file is distributed subject to a Software License Agreement found
# in the file LICENSE that is included with this distribution.
# in the file LICENSE that is included with this distribution.
#*************************************************************************

TOP = ..
include $(TOP)/configure/CONFIG

ifeq ($(PURIFY),YES)
ifeq ($(OS_CLASS),solaris)
PURIFY_FLAGS = -first-only -chain-length=26 -max_threads=256
# Put the cache files in the appropriate bin directory
PURIFY_FLAGS += -always-use-cache-dir -cache-dir=$(shell $(PERL) $(TOOLS)/fullPathName.pl .)
DEBUGCMD = purify $(PURIFY_FLAGS)
endif
endif

ifeq ($(QUANTIFY),YES)
ifeq ($(OS_CLASS),solaris)
#QUANTIFY_FLAGS += -measure-timed-calls=user+system
QUANTIFY_FLAGS += -collection-granularity=function
QUANTIFY_FLAGS += -use-machine=UltraSparcIII:1002MHz
QUANTIFY_FLAGS += -max_threads=160

#QUANTIFY_FLAGS += -record-system-calls=no

# -measure-timed-calls=elapsed-time (default) gives wall clock time
# for system calls
# -measure-timed-calls=user+system gives user+system time
# -record-system-calls=no gives 0 time for system calls
# -collection-granularity=function runs faster than default=line
# -use-machine=UltraSparc:168MHz timing for Nike
# -use-machine=UltraSparcIII:1002MHz timing for Ctlapps1
DEBUGCMD = quantify $(QUANTIFY_FLAGS)
endif
endif

ifeq ($(USE_DENY_FROM),YES)
USR_CXXFLAGS += -DUSE_DENYFROM
endif
Expand All @@ -50,9 +21,6 @@ ifeq ($(USE_NEG_REGEXP),YES)
USR_CXXFLAGS += -DUSE_NEG_REGEXP
endif

# Reserve file descriptor for fopen to avoid fd limit of 256 on Solaris
USR_CXXFLAGS_solaris += -DRESERVE_FOPEN_FD

ifeq ($(CMPLR_CLASS),msvc)
USR_LDFLAGS_WIN32 += /SUBSYSTEM:CONSOLE
endif
Expand Down Expand Up @@ -103,7 +71,7 @@ USR_INCLUDES += -I$(EPICS_BASE)/src/ca/legacy/pcas/generic
# To compile in caPutLog functionality, define the location of the caPutLog
# module as 'CAPUTLOG' in the appropriate extensions configure/RELEASE* file
ifdef CAPUTLOG
USR_LIBS += caPutLog dbIoc
USR_LIBS += caPutLog $(EPICS_BASE_IOC_LIBS)
USR_CXXFLAGS += -DWITH_CAPUTLOG
USR_CFLAGS += -DWITH_CAPUTLOG
endif
Expand All @@ -114,31 +82,12 @@ include $(TOP)/configure/RULES

xxxx:
@echo HOST_OPT: $(HOST_OPT)
@echo PURIFY: $(PURIFY)
@echo PURIFY_FLAGS: $(PURIFY_FLAGS)
@echo PURIFYCMD: $(PURIFYCMD)
@echo QUANTIFY: $(QUANTIFY)
@echo QUANTIFYCMD: $(QUANTIFYCMD)
@echo CXX $(CXX)
@echo CXXFLAGS $(CXXFLAGS)
@echo LINK.cc: $(LINK.cc)
@echo LINK.c: $(LINK.c)
@echo TARGET_OBJS: $(TARGET_OBJS)
@echo PRODNAME_OBJS: $(PRODNAME_OBJS)
@echo PROD_LD_OBJS: $(PROD_LD_OBJS)
@echo PRODUCT_OBJS: $(PRODUCT_OBJS)
@echo PROD_OBJS: $(PROD_OBJS)
@echo EPICS_BASE: $(EPICS_BASE)
@echo HOST_ARCH: $(HOST_ARCH)
@echo ARCH_DEP_LDFLAGS_ML_NO: $(ARCH_DEP_LDFLAGS_ML_NO)
@echo ARCH_DEP_LDFLAGS_ML_YES: $(ARCH_DEP_LDFLAGS_ML_YES)
@echo ARCH_DEP_LDFLAGS_ML: $(ARCH_DEP_LDFLAGS_ML)
@echo ARCH_DEP_LDFLAGS_MD_NO: $(ARCH_DEP_LDFLAGS_MD_NO)
@echo ARCH_DEP_LDFLAGS_MD_YES: $(ARCH_DEP_LDFLAGS_MD_YES)
@echo ARCH_DEP_LDFLAGS_MD: $(ARCH_DEP_LDFLAGS_MD)
@echo ACC_SFLAGS_YES: $(ACC_SFLAGS_YES)
@echo ACC_SFLAGS_NO: $(ACC_SFLAGS_NO)
@echo EPICS_HOST_ARCH: $(EPICS_HOST_ARCH)
@echo SHARED_LIBRARIES: $(SHARED_LIBRARIES)
@echo DEBUGCMD: $(DEBUGCMD)
@echo CAPUTLOG: $(CAPUTLOG)
@echo EPICS_BASE_HOST_LIBS: $(EPICS_BASE_HOST_LIBS)
Loading