Compare commits
9 Commits
cafe-1.13.
...
cafe-1.15.
| Author | SHA1 | Date | |
|---|---|---|---|
| 844afa0a02 | |||
| 4cab5862dc | |||
| c2934ce3f7 | |||
| 7c779d9add | |||
| 80ce12d374 | |||
| 90e063f930 | |||
| cc804d2e7b | |||
| cecf4a3f11 | |||
| 275bf4ad10 |
276
+
Normal file
276
+
Normal file
@@ -0,0 +1,276 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.1"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
#else
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "CAFE VERSION: $CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -16,7 +16,6 @@ configure
|
||||
depcomp
|
||||
install-sh
|
||||
ltmain.sh
|
||||
m4
|
||||
makefile
|
||||
makefile.in
|
||||
missing
|
||||
|
||||
15
INSTALL
15
INSTALL
@@ -1,8 +1,8 @@
|
||||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006, 2007, 2008, 2009 Free Software Foundation, Inc.
|
||||
Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
|
||||
Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
@@ -226,6 +226,11 @@ order to use an ANSI C compiler:
|
||||
|
||||
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
|
||||
|
||||
HP-UX `make' updates targets which have the same time stamps as
|
||||
their prerequisites, which makes it generally unusable when shipped
|
||||
generated files such as `configure' are involved. Use GNU `make'
|
||||
instead.
|
||||
|
||||
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
|
||||
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
|
||||
a workaround. If GNU CC is not installed, it is therefore recommended
|
||||
@@ -304,9 +309,10 @@ causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
an Autoconf limitation. Until the limitation is lifted, you can use
|
||||
this workaround:
|
||||
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
@@ -362,4 +368,3 @@ operates.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
||||
|
||||
@@ -3,13 +3,12 @@
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/6.3.0
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
@@ -23,7 +22,7 @@ automake --force --add-missing --copy
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.13.0"
|
||||
CAFE_V="cafe-1.14.5"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
@@ -37,7 +36,7 @@ EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
@@ -57,6 +56,7 @@ echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py310" ] || [ "$FACILITY" = "py38" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
@@ -125,6 +125,7 @@ fi
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py310" ] || [ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
@@ -134,6 +135,7 @@ then
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py310" ] || [ "$CACLIENT_TEMP" = "py38" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
@@ -205,6 +207,16 @@ then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
elif [ "$CACLIENT" = "py38" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python38"
|
||||
ENABLE_OPTIONS+=" --enable-qt5py38"
|
||||
CAFE_V+="-py38"
|
||||
elif [ "$CACLIENT" = "py310" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python310"
|
||||
#ENABLE_OPTIONS+=" --enable-qt5py310"
|
||||
CAFE_V+="-py310"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
@@ -259,17 +271,20 @@ echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python310=/ioc/python/latest \
|
||||
--with-python38=/opt/gfa/python-3.8/latest \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5py310=/ioc/python/latest \
|
||||
--with-qt5py38=/opt/gfa/python-3.8/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-json=/opt/gfa/zmq/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib \
|
||||
--with-epics7=${EPICS}/base-7.0.6
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
286
autogen_psi.sh-
Normal file
286
autogen_psi.sh-
Normal file
@@ -0,0 +1,286 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/9.4.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.4"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py38" ] ||
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py38" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
elif [ "$CACLIENT" = "py38" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python38"
|
||||
ENABLE_OPTIONS+=" --enable-qt5py38"
|
||||
CAFE_V+="-py38"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "$CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python38=/opt/gfa/python-3.8/latest \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5py38=/opt/gfa/python-3.8/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib \
|
||||
--with-epics7=${EPICS}/base-7.0.6
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
306
autogen_sfbd.sh
Normal file
306
autogen_sfbd.sh
Normal file
@@ -0,0 +1,306 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
#libtoolize --force --copy
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.15.0"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py310" ] || [ "$FACILITY" = "py38" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ] || [ "$FACILITY" = "py34" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py310" ] || [ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ] || [ "$CACLIENT" = "py34" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py310" ] || [ "$CACLIENT_TEMP" = "py38" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ] || [ "$CACLIENT_TEMP" = "py34" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
#CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
elif [ "$FACILITY" = "sls" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-epics3"
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
|
||||
if [ "$CACLIENT" = "py34" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python34"
|
||||
ENABLE_OPTIONS+=" --enable-qt4py34"
|
||||
CAFE_V+="-py34"
|
||||
elif [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
elif [ "$CACLIENT" = "py38" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python38"
|
||||
ENABLE_OPTIONS+=" --enable-qt5py38"
|
||||
CAFE_V+="-py38"
|
||||
elif [ "$CACLIENT" = "py310" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python310"
|
||||
#ENABLE_OPTIONS+=" --enable-qt5py310"
|
||||
CAFE_V+="-py310"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "$CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python310=/ioc/python/latest \
|
||||
--with-python38=/opt/gfa/python-3.8/latest \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-python34=/opt/psi/Programming/psi-python34/2.1.0 \
|
||||
--with-qt5py310=/ioc/python/latest \
|
||||
--with-qt5py38=/opt/gfa/python-3.8/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-qt4py34=/opt/psi/Programming/psi-python34/2.1.0 \
|
||||
--with-json=/sf/bd/deps/zmq/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/sf/bd/deps/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/sf/bd/deps/zmq/curl-7.55.1 \
|
||||
--with-lz4=/sf/bd/deps/zmq/lz4/lib \
|
||||
--with-epics7=${EPICS}/base-7.0.6
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
286
autogen_slsbd.sh
Normal file
286
autogen_slsbd.sh
Normal file
@@ -0,0 +1,286 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.15.0"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
#else
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
elif [ "$CACLIENT" = "py34" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python34"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py34"
|
||||
#else
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "CAFE VERSION: $CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
echo 'EPICS='${EPICS}
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/afs/psi.ch/project/cafe/gitlab/CAFE/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-python34=/opt/psi/Programming/psi-python34/2.1.0 \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
1191
configure.ac-Mar10
Normal file
1191
configure.ac-Mar10
Normal file
File diff suppressed because it is too large
Load Diff
240
configurePSI.ac
240
configurePSI.ac
@@ -8,8 +8,8 @@
|
||||
|
||||
# Standard macros
|
||||
AC_PREREQ(2.63)
|
||||
AC_COPYRIGHT([CAFE,Jan Chrin, 2018])
|
||||
AC_INIT([CAFE], [1.13.0], [Bug reports to: jan.chrin@psi.ch])
|
||||
AC_COPYRIGHT([CAFE,Jan Chrin, 2010-2021])
|
||||
AC_INIT([CAFE], [1.15.0], [Bug reports to: jan.chrin@psi.ch])
|
||||
|
||||
AC_CONFIG_AUX_DIR(./)
|
||||
|
||||
@@ -166,6 +166,8 @@ if test x$HAVE_EPICS == xtrue; then
|
||||
CPPFLAGS=${CPPFLAGS}" "${EPICS_INCL_PATH}
|
||||
TEMP_LDFLAGS=${LDFLAGS}
|
||||
LDFLAGS=${LDFLAGS}" -L"${EPICS_LIB_PATH}" -Wl,-rpath,"${EPICS_LIB_PATH}
|
||||
#LDFLAGS=${LDFLAGS}" -L/opt/psi/Programming/gcc/7.3.0/lib64 -Wl,-rpath,/opt/psi/Programming/gcc/7.3.0/lib64"
|
||||
#LDFLAGS=${LDFLAGS}" -L/opt/psi/Programming/gcc/7.3.0/lib -Wl,-rpath,/opt/psi/Programming/gcc/7.3.0/lib"
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
@@ -363,6 +365,31 @@ PYTHON_OPTION=""
|
||||
##-- Python 3.5/3.7 -- path and options
|
||||
##-- Python header files required for callbacks
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python34],
|
||||
AC_HELP_STRING([--enable-python34],
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY34_=true]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY34_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
python34,
|
||||
AC_HELP_STRING(
|
||||
[--with-python34 = location of python],
|
||||
[prefix giving the python base directory]),
|
||||
[#HAVE_PYTHON_=true
|
||||
PYTHON_PREFIX=$withval
|
||||
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.4m
|
||||
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
|
||||
"/lib/python3.4/site-packages/numpy/core/include"
|
||||
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python35],
|
||||
@@ -394,7 +421,8 @@ AC_ARG_ENABLE(
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY37_=true
|
||||
HAVE_PY35_=false]
|
||||
HAVE_PY35_=false
|
||||
HAVE_PY34_=false]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY37_ == xtrue ; then
|
||||
@@ -412,6 +440,65 @@ if test x$HAVE_PY37_ == xtrue ; then
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python38],
|
||||
AC_HELP_STRING([--enable-python38],
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY38_=true
|
||||
HAVE_PY37_=false
|
||||
HAVE_PY35_=false
|
||||
HAVE_PY34_=false]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY38_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
python38,
|
||||
AC_HELP_STRING(
|
||||
[--with-python38 = location of python],
|
||||
[prefix giving the python base directory]),
|
||||
[#HAVE_PYTHON_=true
|
||||
PYTHON_PREFIX=$withval
|
||||
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.8
|
||||
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
|
||||
"/lib/python3.8/site-packages/numpy/core/include"
|
||||
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python310],
|
||||
AC_HELP_STRING([--enable-python310],
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY310_=true
|
||||
HAVE_PY38_=false
|
||||
HAVE_PY37_=false
|
||||
HAVE_PY35_=false
|
||||
HAVE_PY34_=false]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY310_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
python310,
|
||||
AC_HELP_STRING(
|
||||
[--with-python310 = location of python],
|
||||
[prefix giving the python base directory]),
|
||||
[#HAVE_PYTHON_=true
|
||||
PYTHON_PREFIX=$withval
|
||||
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.10
|
||||
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
|
||||
"/lib/python3.10/site-packages/numpy/core/include"
|
||||
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
##
|
||||
##---------------------------------------------------------------------------
|
||||
@@ -450,6 +537,23 @@ if test x$HAVE_PYTHON_ == xtrue ; then
|
||||
[])
|
||||
#fi
|
||||
|
||||
|
||||
if test x$HAVE_PY310_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.10,[main], [],
|
||||
[HAVE_PYTHON_=false
|
||||
AC_MSG_WARN(libpython3.10 not found!)]
|
||||
)
|
||||
fi
|
||||
|
||||
if test x$HAVE_PY38_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.8,[main], [],
|
||||
[HAVE_PYTHON_=false
|
||||
AC_MSG_WARN(libpython3.8 not found!)]
|
||||
)
|
||||
fi
|
||||
|
||||
if test x$HAVE_PY37_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.7m,[main], [],
|
||||
@@ -466,6 +570,16 @@ if test x$HAVE_PYTHON_ == xtrue ; then
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
if test x$HAVE_PY34_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.4m,[main], [],
|
||||
[HAVE_PYTHON_=false
|
||||
AC_MSG_WARN(libpython3.4m not found!)]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
# If all checks are OK we add Qt version 4 to the FLAGS.
|
||||
|
||||
if test x$HAVE_PYTHON_ != xtrue ; then
|
||||
@@ -488,7 +602,7 @@ fi
|
||||
|
||||
AC_LANG_POP
|
||||
##
|
||||
##-- end Python 3.7 -- check header files and library
|
||||
##-- end Python 3.7(3.8 -- check header files and library
|
||||
##-----------------------------
|
||||
|
||||
|
||||
@@ -538,7 +652,7 @@ AC_ARG_ENABLE(
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
@@ -556,7 +670,101 @@ if test x$HAVE_QT_5_ == xtrue ; then
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt5py38],
|
||||
AC_HELP_STRING([--enable-qt5py38],
|
||||
[enable Qt version 5 use [default=no]]),
|
||||
[HAVE_QT_=true
|
||||
HAVE_QT_5py38_=true
|
||||
HAVE_QT_5_=false
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5py38_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
qt5py38,
|
||||
AC_HELP_STRING([--with-qt5py38=PREFIX],
|
||||
[prefix, parent directory where the Qt version 5 library is installed]),
|
||||
[#HAVE_QT_=true
|
||||
QT_PREFIX=$withval
|
||||
QT_INCL_BASE=" -I"${QT_PREFIX}"/include/qt"
|
||||
QT_INCL_PATH=${QT_INCL_BASE}
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtCore"
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtXml"
|
||||
QT_LIB_PATH=${QT_PREFIX}"/lib "
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt5py310],
|
||||
AC_HELP_STRING([--enable-qt5py310],
|
||||
[enable Qt version 5 use [default=no]]),
|
||||
[HAVE_QT_=true
|
||||
HAVE_QT_5py310_=true
|
||||
HAVE_QT_5py38_=false
|
||||
HAVE_QT_5_=false
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5py310_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
qt5py310,
|
||||
AC_HELP_STRING([--with-qt5py310=PREFIX],
|
||||
[prefix, parent directory where the Qt version 5 library is installed]),
|
||||
[#HAVE_QT_=true
|
||||
QT_PREFIX=$withval
|
||||
QT_INCL_BASE=" -I"${QT_PREFIX}"/include/qt"
|
||||
QT_INCL_PATH=${QT_INCL_BASE}
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtCore"
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtXml"
|
||||
QT_LIB_PATH=${QT_PREFIX}"/lib "
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt4py34],
|
||||
AC_HELP_STRING([--enable-qt4py34],
|
||||
[enable Qt version 4 use [default=no]]),
|
||||
[HAVE_QT_=true
|
||||
HAVE_QT_4py34_=true
|
||||
HAVE_QT_5py310_=false
|
||||
HAVE_QT_5py38_=false
|
||||
HAVE_QT_5_=false
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_4py34_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
qt4py34,
|
||||
AC_HELP_STRING([--with-qt4py34=PREFIX],
|
||||
[prefix, parent directory where the Qt version 4 library is installed]),
|
||||
[#HAVE_QT_=true
|
||||
QT_PREFIX=$withval
|
||||
QT_INCL_BASE=" -I"${QT_PREFIX}"/include"
|
||||
QT_INCL_PATH=${QT_INCL_BASE}
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtCore"
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtXml"
|
||||
QT_LIB_PATH=${QT_PREFIX}"/lib "
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
##
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
@@ -601,21 +809,23 @@ if test x$HAVE_QT_ == xtrue ; then
|
||||
AC_MSG_WARN(libQtXml not found!)])
|
||||
fi
|
||||
|
||||
#if test x$HAVE_QT_5_ == xtrue ; then
|
||||
# AC_CHECK_LIB(Qt5Core,[write],
|
||||
# [],
|
||||
# [HAVE_QT_=false #force true if there but not found
|
||||
# AC_MSG_WARN(libQt5Core... no check)])
|
||||
#fi
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
AC_CHECK_LIB(Qt5Core,[write],
|
||||
[],
|
||||
[HAVE_QT_=true #force true if there but not found
|
||||
AC_MSG_WARN(libQt5Core not checked for!)])
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
AC_CHECK_LIB(Qt5Xml,[qt_version_tag],
|
||||
[],
|
||||
[HAVE_QT_=false
|
||||
AC_MSG_WARN(libQt5Xml not found!)])
|
||||
[],
|
||||
[HAVE_QT_=true
|
||||
AC_MSG_WARN(libQt5Xml not checked for!)])
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
# If all checks are OK we add Qt version 5 to the FLAGS.
|
||||
if test x$HAVE_QT_ != xtrue ; then
|
||||
if test x"${QT_PREFIX}" != x"" ; then
|
||||
|
||||
1052
configurePSI.ac-
Normal file
1052
configurePSI.ac-
Normal file
File diff suppressed because it is too large
Load Diff
1118
configurePSI.ac--
Normal file
1118
configurePSI.ac--
Normal file
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,6 @@
|
||||
// A simple example
|
||||
//
|
||||
#include <cafe.h>
|
||||
|
||||
#include "callbacks.h" //ca callback funtions
|
||||
|
||||
// Test with 6 PVS
|
||||
@@ -64,7 +63,14 @@ int main( int argc, char *argv[] )
|
||||
//Instantaite CAFE
|
||||
CAFE * cafe = new CAFE();
|
||||
|
||||
|
||||
//PVCtrlHolder pvcd;
|
||||
//dbr_string_t str_out;
|
||||
//cafe->open("SF-OP:CR-MSG:OP-MSG1.DESC", handle);
|
||||
//cafe->open("ARIDI-BPM:OFB-YRMS", handle);
|
||||
//status = cafe->getCtrl("ARIDI-BPM:OFB-YRMS", pvcd);
|
||||
//pvcd.print();
|
||||
//cout << "status " << status << " value " << str_out << endl;
|
||||
//exit(1);
|
||||
|
||||
//------------------------------------------------------------
|
||||
//(1) Establishing connections to EPICS Process Variables (PVs)
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=cafe-1.12.5-gcc-7.3.0
|
||||
CAFE_VERSION=cafe-1.14.4-gcc-7.3.0
|
||||
|
||||
#PYTHON_INCLUDE=/opt/gfa/python-3.5/latest/include/python3.5m
|
||||
#PYTHON_LIB=/opt/gfa/python-3.5/latest/lib
|
||||
@@ -18,10 +18,6 @@ EPICS_BASE=${EPICS}/base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
CAFE_BASE=/afs/psi.ch/project/cafe/gitlab/CAFE/
|
||||
CAFE_CPP_BASE=${CAFE_BASE}
|
||||
CAFE_VERSION=cpp
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
@@ -32,10 +28,14 @@ INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-L/opt/gfa/python-3.7/latest/lib \
|
||||
-Wl,-rpath,/opt/gfa/python-3.7/latest/lib \
|
||||
-L/opt/psi/Programming/gcc/10.3.0/lib64 \
|
||||
-Wl,-rpath,/opt/psi/Programming/gcc/10.3.0/lib64
|
||||
|
||||
LIBS += -lcafe -lca -lCom
|
||||
LIBS += -lcafe -lca -lCom -lQt5Core
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
|
||||
48
examples/cafeTest/makefile7
Normal file
48
examples/cafeTest/makefile7
Normal file
@@ -0,0 +1,48 @@
|
||||
#
|
||||
# Jan Chrin
|
||||
# June 2016
|
||||
#
|
||||
# Makefile to build a simple C++ cafe client
|
||||
#
|
||||
|
||||
#-py37- libcafe.so: undefined reference to `cy_event_handler_wrapper
|
||||
#CAFE version to link to
|
||||
#CAFE_VERSION=cafe-1.14.4-sls2-gcc-7.3.0
|
||||
#CAFE_VERSION=cafe-1.15.0-py37-gcc-10.3.0
|
||||
CAFE_VERSION=cafe-1.15.0-gcc-10.3.0
|
||||
|
||||
PYTHON_INCLUDE=/opt/gfa/python-3.7/latest/include/python3.7m
|
||||
PYTHON_LIB=/opt/gfa/python-3.7/latest/lib
|
||||
|
||||
EPICS_BASE=${EPICS}/base-7.0.6
|
||||
|
||||
#CAFE project base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
-I$(EPICS_BASE)/include -I$(EPICS_BASE)/include/compiler/gcc \
|
||||
-I$(EPICS_BASE)/include/os/Linux \
|
||||
-I$(BOOST_BASE) -I${PYTHON_INCLUDE}
|
||||
#-I$(BOOST_BASE)/boost
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-L/opt/psi/Programming/gcc/10.3.0/lib64 -Wl,-rpath,/opt/psi/Programming/gcc/10.3.0/lib64 \
|
||||
-L$(PYTHON_LIB) -Wl,-rpath,$(PYTHON_LIB)
|
||||
|
||||
|
||||
LIBS += -lcafe -lca -lCom -lQt5Core -lpython3.7m
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
$(INCLUDE_PATH) $(LIB_DIR) $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -f cafeTest.o cafeTest
|
||||
|
||||
46
examples/cafeTest/makefile_local
Normal file
46
examples/cafeTest/makefile_local
Normal file
@@ -0,0 +1,46 @@
|
||||
#
|
||||
# Jan Chrin
|
||||
# June 2016
|
||||
#
|
||||
# Makefile to build a simple C++ cafe client
|
||||
#
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=cafe-1.14.1-gcc-7.3.0
|
||||
|
||||
#PYTHON_INCLUDE=/opt/gfa/python-3.5/latest/include/python3.5m
|
||||
#PYTHON_LIB=/opt/gfa/python-3.5/latest/lib
|
||||
|
||||
EPICS_BASE=${EPICS}/base
|
||||
|
||||
#CAFE project base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
CAFE_BASE=/afs/psi.ch/project/cafe/gitlab/CAFE/
|
||||
CAFE_CPP_BASE=${CAFE_BASE}
|
||||
CAFE_VERSION=cpp
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
-I$(EPICS_BASE)/include -I$(EPICS_BASE)/include/os/Linux \
|
||||
-I$(BOOST_BASE)
|
||||
#-I$(BOOST_BASE)/boost
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib
|
||||
|
||||
LIBS += -lcafe -lca -lCom
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
$(INCLUDE_PATH) $(LIB_DIR) $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -f cafeTest.o cafeTest
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=pyzcafe-1.12.5-gcc-7.3.0
|
||||
CAFE_VERSION=cafe-1.15.0-gcc-7.3.0
|
||||
|
||||
PYTHON_INCLUDE=/opt/gfa/python-3.7/latest/include/python3.7m
|
||||
PYTHON_LIB=/opt/gfa/python-3.7/latest/lib
|
||||
|
||||
@@ -18,15 +18,19 @@
|
||||
#define DL_IMPORT(_T) _T
|
||||
#endif
|
||||
|
||||
__PYX_EXTERN_C void cy_monitor_handler_wrapper(void *);
|
||||
__PYX_EXTERN_C void cy_data_event_handler_wrapper(void *, unsigned int, std::string, PVDataHolder);
|
||||
__PYX_EXTERN_C void cy_ctrl_event_handler_wrapper(void *, unsigned int, std::string, PVCtrlHolder);
|
||||
__PYX_EXTERN_C void cy_event_handler_wrapper(void *, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void cy_handle_handler_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void cy_connect_handler_wrapper(void *, unsigned int, std::string, int);
|
||||
__PYX_EXTERN_C void py_cb_wrapper(PVDataHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_ctrl_wrapper(PVCtrlHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_handle_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_monid_wrapper(unsigned int, unsigned long);
|
||||
__PYX_EXTERN_C void cy_cb_handle_get_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_get_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void cy_cb_handle_put_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_put_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_open_wrapper(unsigned int, int);
|
||||
__PYX_EXTERN_C void py_cb_handle_connect_wrapper(unsigned int, std::string, int);
|
||||
|
||||
46
include/PyCafe_sf.h
Normal file
46
include/PyCafe_sf.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/* Generated by Cython 0.29.2 */
|
||||
|
||||
#ifndef __PYX_HAVE__PyCafe
|
||||
#define __PYX_HAVE__PyCafe
|
||||
|
||||
|
||||
#ifndef __PYX_HAVE_API__PyCafe
|
||||
|
||||
#ifndef __PYX_EXTERN_C
|
||||
#ifdef __cplusplus
|
||||
#define __PYX_EXTERN_C extern "C"
|
||||
#else
|
||||
#define __PYX_EXTERN_C extern
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef DL_IMPORT
|
||||
#define DL_IMPORT(_T) _T
|
||||
#endif
|
||||
|
||||
__PYX_EXTERN_C void cy_data_event_handler_wrapper(void *, unsigned int, std::string, PVDataHolder);
|
||||
__PYX_EXTERN_C void cy_ctrl_event_handler_wrapper(void *, unsigned int, std::string, PVCtrlHolder);
|
||||
__PYX_EXTERN_C void cy_event_handler_wrapper(void *, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void cy_handle_handler_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void cy_connect_handler_wrapper(void *, unsigned int, std::string, int);
|
||||
__PYX_EXTERN_C void py_cb_wrapper(PVDataHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_ctrl_wrapper(PVCtrlHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_handle_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_monid_wrapper(unsigned int, unsigned long);
|
||||
__PYX_EXTERN_C void py_cb_handle_get_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_put_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_open_wrapper(unsigned int, int);
|
||||
__PYX_EXTERN_C void py_cb_handle_connect_wrapper(unsigned int, std::string, int);
|
||||
|
||||
#endif /* !__PYX_HAVE_API__PyCafe */
|
||||
|
||||
/* WARNING: the interface of the module init function changed in CPython 3.5. */
|
||||
/* It now returns a PyModuleDef instance instead of a PyModule instance. */
|
||||
|
||||
#if PY_MAJOR_VERSION < 3
|
||||
PyMODINIT_FUNC initPyCafe(void);
|
||||
#else
|
||||
PyMODINIT_FUNC PyInit_PyCafe(void);
|
||||
#endif
|
||||
|
||||
#endif /* !__PYX_HAVE__PyCafe */
|
||||
@@ -179,13 +179,13 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
std::string getCafeConnectionStateAsString()
|
||||
std::string getCafeConnectionStateAsString()
|
||||
{
|
||||
return cafeStatus.csc.message(cafeConnectionState);
|
||||
};
|
||||
|
||||
ChannelRegalia():channelID((chid) NULL), connectFlag(false), nelem((unsigned int) 1),
|
||||
dataType((chtype) CAFE_TYPENOTCONN),
|
||||
dataType(chtype((int)CAFE_TYPENOTCONN)),
|
||||
accessRead((unsigned short) 0), accessWrite((unsigned short) 0),
|
||||
connectionState((int) CA_OP_CONN_DOWN), cafeConnectionState((int) ICAFE_CS_NEVER_CONN)
|
||||
{
|
||||
|
||||
@@ -237,9 +237,12 @@ private:
|
||||
//void * PyDataEventHandler() const;
|
||||
//void * PyCtrlEventHandler() const;
|
||||
|
||||
void * CyEventHandler() const;
|
||||
void * CyDataEventHandler() const;
|
||||
void * CyCtrlEventHandler() const;
|
||||
void * CyMonitorHandler() const; //can handle all three cb signatures
|
||||
|
||||
//void * CyHandleHandler() const; //handle
|
||||
//void * CyEventHandler() const; //handle, pv
|
||||
//void * CyDataEventHandler() const; //handle, pv, pvdata
|
||||
void * CyCtrlEventHandler() const; //handle, pv, pvctrl
|
||||
|
||||
bool pyOpenCallbackFlag;
|
||||
|
||||
@@ -738,6 +741,8 @@ public:
|
||||
std::cout << "getMonitorPolicyVector(monitor_id): " << monitor_id << " NOT FOUND! " << std::endl;
|
||||
std::cout << "Could not modify entry!" << std::endl;
|
||||
}
|
||||
MonitorPolicy mp;
|
||||
return mp;
|
||||
};
|
||||
|
||||
std::vector<MonitorPolicy> getMonitorPolicyVector(void) const
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
/**
|
||||
* Friend to Conduit/CAFEGroup records the connection_handler_args struct from callback fns
|
||||
* in hash table
|
||||
* Function is not invoked on closechannel by user
|
||||
*/
|
||||
struct change_connectionHandlerArgs
|
||||
{
|
||||
@@ -34,7 +35,7 @@ struct change_connectionHandlerArgs
|
||||
// but we do not overwrite it upon disconnect.
|
||||
|
||||
//std::cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << std::endl;
|
||||
|
||||
//std::cout << new_connectionHandlerArgs.op << std::endl;
|
||||
//connectFlag
|
||||
if (new_connectionHandlerArgs.op == CA_OP_CONN_UP)
|
||||
{
|
||||
|
||||
@@ -22,18 +22,19 @@ struct change_eventHandlerArgs
|
||||
#define __METHOD__ "change_eventHandlerArgs"
|
||||
change_eventHandlerArgs (const struct event_handler_args & new_eventHandlerArgs) :
|
||||
new_eventHandlerArgs(new_eventHandlerArgs) {}
|
||||
|
||||
|
||||
void operator() (Conduit& c)
|
||||
{
|
||||
|
||||
|
||||
//c.eventHandlerArgs = new_eventHandlerArgs;
|
||||
c.status= new_eventHandlerArgs.status;
|
||||
|
||||
if(c.status!=ECA_NORMAL) {
|
||||
std::cout << __METHOD__ << " STATUS IS " << c.status << std::endl;
|
||||
std::cout << __METHOD__ << " return from method enforced " << std::endl;
|
||||
std::cout << __METHOD__ << " return from method ***IS*** enforced " << std::endl;
|
||||
return;
|
||||
}
|
||||
//std::cout << __METHOD__ << " STATUS IS " << c.status << std::endl;
|
||||
|
||||
Helper helper;
|
||||
|
||||
@@ -641,9 +642,16 @@ struct change_eventHandlerArgs
|
||||
((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->precision;
|
||||
(*(&((c.ctrlBuffer)->cdblval.RISC_pad0))) =
|
||||
(dbr_short_t) ((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->RISC_pad0; //dbr_short_t
|
||||
//std::cout << __METHOD__ << __LINE__ << std::endl;
|
||||
|
||||
//std::cout << ((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units << std::endl;
|
||||
|
||||
memcpy((*(&((c.ctrlBuffer)->cdblval.units))),
|
||||
&(((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units),
|
||||
sizeof(char[MAX_UNITS_SIZE]));
|
||||
sizeof( char[MAX_UNITS_SIZE])); // (((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units) ));
|
||||
|
||||
|
||||
|
||||
(*(&((c.ctrlBuffer)->cdblval.upper_disp_limit))) =
|
||||
((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->upper_disp_limit;
|
||||
(*(&((c.ctrlBuffer)->cdblval.lower_disp_limit))) =
|
||||
|
||||
@@ -32,8 +32,7 @@
|
||||
#include <boost/chrono.hpp>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#include <epicsVersion.h>
|
||||
|
||||
class Connect
|
||||
{
|
||||
@@ -202,6 +201,14 @@ public:
|
||||
return ca_flush_io();
|
||||
}
|
||||
|
||||
std::string _ca_version(){
|
||||
return (std::string) ca_version();
|
||||
}
|
||||
|
||||
std::string _epics_version(){
|
||||
return (std::string) EPICS_VERSION_STRING;
|
||||
}
|
||||
|
||||
int _ca_flush_io()
|
||||
{
|
||||
return ca_flush_io();
|
||||
@@ -696,7 +703,7 @@ public:
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout<< "Input handle " << handle << " does not exists! " << std::endl;
|
||||
std::cout<< "Input handle " << handle << " does not exist! " << std::endl;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,8 +21,6 @@ extern bool CHECK_CONSISTENCY_CA_STATE;
|
||||
extern bool MUTEX;
|
||||
extern epicsMutex cafeMutex;
|
||||
|
||||
|
||||
|
||||
extern cafeConduit_set cs;
|
||||
extern cafeGroup_set gs;
|
||||
extern std::vector<PVGroup> PVGroupV;
|
||||
@@ -32,14 +30,11 @@ extern std::map<std::vector<unsigned int>, std::string> groupPseudoMap;
|
||||
|
||||
extern std::vector<std::string> globalChannelList;
|
||||
|
||||
|
||||
extern std::string contentsS;
|
||||
extern std::string contentsBS;
|
||||
|
||||
extern unsigned long nCBs;
|
||||
|
||||
extern bool callbackLiveFlag;
|
||||
|
||||
extern bool SF_WITH_PULSE_ID;
|
||||
|
||||
|
||||
|
||||
@@ -83,6 +83,17 @@ public:
|
||||
ca_client_context * getContextFromPV (const char * _pv);
|
||||
ca_client_context * getContextFromHandle (unsigned int _handle);
|
||||
|
||||
cafeConduit_set_by_handle::iterator getIterFromHandle(unsigned int handle);
|
||||
cafeConduit_set_by_handle & getcsHandleIndex();
|
||||
int modifyHandleIndexStatus(unsigned int handle, long status);
|
||||
int modifyChannelRequestMetaDataClient(unsigned int handle,
|
||||
ChannelRequestMetaDataClient channelRequestMetaDataClient);
|
||||
int modifyChannelRequestStatusGet(unsigned int handle,
|
||||
ChannelRequestStatus channelRequestStatusGet);
|
||||
|
||||
int modifyChannelTimeoutPolicyGet(unsigned int handle,
|
||||
ChannelTimeoutPolicy channelTimeoutPolicyGet);
|
||||
|
||||
const char * getPVFromHandle (unsigned int _handle);
|
||||
const char * getPVFromHandle (unsigned int _handle, ca_client_context * ccc);
|
||||
|
||||
@@ -93,6 +104,8 @@ public:
|
||||
const char * getPVAlias (unsigned int _handle);
|
||||
const char * getPVAlias (unsigned int _handle, ca_client_context * ccc);
|
||||
|
||||
|
||||
|
||||
unsigned int getHandleFromPV (const char * _pv);
|
||||
unsigned int getHandleFromPV (const char * _pv, ca_client_context * ccc);
|
||||
unsigned int getHandleFromPVAlias(const char * _pv);
|
||||
@@ -327,6 +340,9 @@ public:
|
||||
int getMonitorAction(unsigned int _handle, std::vector<std::string> &msV);
|
||||
std::vector<std::string> getMonitorAction(bool onlyIfNewData); //all handles; false gives all
|
||||
|
||||
int updateMonitorPolicyDeltaMS(unsigned int _handle, unsigned int _monid,
|
||||
unsigned short deltaMS);
|
||||
|
||||
int getMonitorPolicyVector(unsigned int _handle, std::vector<MonitorPolicy> &mpV);
|
||||
int getMonitorPolicyInWaitingVector(unsigned int _handle, std::vector<MonitorPolicy> &mpV);
|
||||
int getNmonitor(unsigned int _handle);
|
||||
|
||||
3161
include/instant.cpp
3161
include/instant.cpp
File diff suppressed because it is too large
Load Diff
4188
include/instant.h
4188
include/instant.h
File diff suppressed because it is too large
Load Diff
61
include/instantT.h
Normal file
61
include/instantT.h
Normal file
@@ -0,0 +1,61 @@
|
||||
///
|
||||
/// \file instantT.h
|
||||
/// \author Jan Chrin, PSI
|
||||
/// \date Release: July 2021
|
||||
/// \version CAFE 1.14.2
|
||||
///
|
||||
|
||||
|
||||
#ifndef INSTANT_T_H
|
||||
#define INSTANT_T_H
|
||||
|
||||
#include <instant.h>
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::set(const unsigned int _handle,
|
||||
const chtype _dbrType, const CTYPE * _val );
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::get(const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::getCache(const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::getCache(const unsigned int *handleArray, const unsigned int nelem,
|
||||
const chtype _dbrType, CTYPE * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::set(const unsigned int *handleArray, const unsigned int nelem,
|
||||
onst chtype _dbrType, const CTYPE * val, int *statusArray);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::clientRequests(
|
||||
const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts, bool isCacheRequest);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::clientRequests(
|
||||
const unsigned int _handle, const chtype _dbrType, const CTYPE * _val);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndGet(const unsigned int handleSet, const chtype dbrType, CTYPE valSet, CTYPE &valGet);
|
||||
template <class CTYPE> int Instant<CTYPE>::setMany(std::vector<unsigned int> handleSet, const chtype dbrType, std::vector<CTYPE> valSet, bool printFlag);
|
||||
template <class CTYPE> int Instant<CTYPE>::compareAndMatchMany(std::vector<unsigned int> handleSet, const chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
//template <class CTYPE> int Instant<CTYPE>::setTriggerAndMatchMany(std::vector<unsigned int> handleSet, chtype dbrType, std::vector<CTYPE> valSet,
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndMatchMany(std::vector<unsigned int> handleSet, chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndMatch(const unsigned int handleSet, const chtype dbrType, CTYPE valSet, const unsigned int handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::match(const chtype dbrType, CTYPE valSet, unsigned int handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::matchMany(const chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch, CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
|
||||
#endif
|
||||
239
include/makefile
239
include/makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# include/makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -45,8 +89,8 @@ host_triplet = x86_64-unknown-linux-gnu
|
||||
am__append_2 = PyCafe.h
|
||||
#am__append_3 = PyCafe_api.h
|
||||
subdir = include
|
||||
DIST_COMMON = $(am__include_HEADERS_DIST) $(srcdir)/makefile.am \
|
||||
$(srcdir)/makefile.in
|
||||
DIST_COMMON = $(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(am__include_HEADERS_DIST)
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -58,8 +102,25 @@ mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/./include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__include_HEADERS_DIST = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
cafeDataType.h cafeDataTypeHelper.h cafeEnum.h \
|
||||
cafeEnumStrings.h cafeRoast.h cafeVectors.h cafeXML.h \
|
||||
@@ -68,7 +129,7 @@ am__include_HEADERS_DIST = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
conduitFriends.h connect.h defines.h deviceCollection.h \
|
||||
exceptions.h exceptionsHelper.h global.h enumStrings.h \
|
||||
granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
instant.cpp loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
methodCallbacks.h policies.h policyHelper.h PVCtrlHolder.h \
|
||||
PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h \
|
||||
@@ -97,26 +158,50 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(includedir)"
|
||||
HEADERS = $(include_HEADERS)
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/7.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/7.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
@@ -130,27 +215,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS = -lQt5Xml -lpython3.7m
|
||||
LIBS = -lQtXml -lQtCore -lpython3.5m
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -160,16 +245,17 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.13.0
|
||||
PACKAGE_STRING = CAFE 1.15.0
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.15.0
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.13.0
|
||||
VERSION = 1.15.0
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/include
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/include
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
@@ -181,8 +267,8 @@ ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -204,15 +290,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.13.0/lib/SL6-x86_64
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.13.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -231,7 +317,7 @@ include_HEADERS = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
conduitFriends.h connect.h defines.h deviceCollection.h \
|
||||
exceptions.h exceptionsHelper.h global.h enumStrings.h \
|
||||
granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
instant.cpp loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
methodCallbacks.h policies.h policyHelper.h PVCtrlHolder.h \
|
||||
PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h \
|
||||
@@ -277,8 +363,11 @@ clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-includeHEADERS: $(include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
@@ -292,30 +381,17 @@ uninstall-includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
test -n "$$files" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(includedir)" && rm -f $$files
|
||||
dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -327,15 +403,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -344,6 +416,21 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-am
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
@@ -395,10 +482,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -478,18 +570,19 @@ uninstall-am: uninstall-includeHEADERS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool ctags distclean distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am \
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool cscopelist-am ctags ctags-am distclean \
|
||||
distclean-generic distclean-libtool distclean-tags distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-includeHEADERS install-info install-info-am \
|
||||
install-man install-pdf install-pdf-am install-ps \
|
||||
install-ps-am install-strip installcheck installcheck-am \
|
||||
installdirs maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||
ps ps-am tags uninstall uninstall-am uninstall-includeHEADERS
|
||||
ps ps-am tags tags-am uninstall uninstall-am \
|
||||
uninstall-includeHEADERS
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -7,7 +7,7 @@ include_HEADERS = config.h cafe.h cafeCache.h cafeConvert.h cafeDataType.h cafeD
|
||||
cafeEnumStrings.h cafeRoast.h cafeVectors.h cafeXML.h caopCodes.h channelRegalia.h \
|
||||
conduit.h conduitConnectionHandlerArgs.h conduitEventHandlerArgs.h conduitFriends.h \
|
||||
connect.h defines.h deviceCollection.h exceptions.h exceptionsHelper.h global.h \
|
||||
enumStrings.h granules.h handleHelper.h hashConduit.h helper.h instant.h instant.cpp \
|
||||
enumStrings.h granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h methodCallbacks.h policies.h policyHelper.h \
|
||||
PVCtrlHolder.h PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h tmDateMap.h
|
||||
|
||||
@@ -506,7 +506,7 @@ private:
|
||||
|
||||
pCallback handler; // for blockingKind=WITH_CALLBACK_DEFAULT or WITH_CALLBACK_USER_SUPPLIED
|
||||
int callbackStatus; // used by CAFE::waitForGetEvent() to record status of callback
|
||||
|
||||
void * cyCallback; // callback provide by python client
|
||||
public:
|
||||
|
||||
ChannelWhenToFlushSendBufferPolicyKind getWhenToFlushSendBuffer() const
|
||||
@@ -533,6 +533,7 @@ public:
|
||||
return callbackStatus;
|
||||
};
|
||||
|
||||
|
||||
void setHandler(pCallback h)
|
||||
{
|
||||
if (h!=NULL)
|
||||
@@ -543,16 +544,26 @@ public:
|
||||
};
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
void setPyHandlerGet()
|
||||
void setPyHandlerGet(void * cythonCallback)
|
||||
{
|
||||
cyCallback=cythonCallback;
|
||||
handler= CALLBACK_CAFE::PyHandlerGet;
|
||||
methodKind=WITH_CALLBACK_USER_SUPPLIED;
|
||||
}; //CAFE_CALLBACK::PyHandlerGet
|
||||
void setPyHandlerPut()
|
||||
};
|
||||
//CAFE_CALLBACK::PyHandlerGet
|
||||
void setPyHandlerPut(void * cythonCallback)
|
||||
{
|
||||
cyCallback=cythonCallback;
|
||||
handler= CALLBACK_CAFE::PyHandlerPut;
|
||||
methodKind=WITH_CALLBACK_USER_SUPPLIED;
|
||||
}; //CAFE_CALLBACK::PyHandlerPut
|
||||
};
|
||||
//CAFE_CALLBACK::PyHandlerPut
|
||||
|
||||
void * getCyCallback() const
|
||||
{
|
||||
return cyCallback;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
void setMethodKind(ChannelRequestPolicyKind m)
|
||||
@@ -642,7 +653,7 @@ public:
|
||||
//Constructors
|
||||
ChannelRequestPolicy():
|
||||
whenKind(FLUSH_AFTER_EACH_MESSAGE),waitKind(WAIT),methodKind(WITH_CALLBACK_DEFAULT), //WITHOUT_CALLBACK),
|
||||
callbackStatus(ICAFE_NORMAL)
|
||||
callbackStatus(ICAFE_NORMAL), cyCallback(NULL)
|
||||
{
|
||||
handler=NULL;
|
||||
|
||||
@@ -659,6 +670,7 @@ public:
|
||||
std::cout << b << " is anINVALID ChannelRequestPolicyKind" << std::endl;
|
||||
}
|
||||
handler=NULL;
|
||||
cyCallback=NULL;
|
||||
callbackStatus=ICAFE_NORMAL;
|
||||
whenKind=FLUSH_AFTER_EACH_MESSAGE;
|
||||
waitKind=WAIT;
|
||||
@@ -667,6 +679,7 @@ public:
|
||||
ChannelRequestPolicy(pCallback h)
|
||||
{
|
||||
handler=h;
|
||||
cyCallback=NULL;
|
||||
methodKind=WITH_CALLBACK_DEFAULT;
|
||||
whenKind=FLUSH_AFTER_EACH_MESSAGE;
|
||||
waitKind=WAIT;
|
||||
@@ -699,6 +712,7 @@ private:
|
||||
unsigned int mask; //4
|
||||
pCallback handler; //5
|
||||
void * cyCallback;
|
||||
unsigned short nCyCallbackParameters; // 1=handle, 2=handle,pv 3=handle,pv,pvdata
|
||||
void * userArgs; //6 handle
|
||||
evid eventID; //output
|
||||
int status; //output
|
||||
@@ -706,8 +720,10 @@ private:
|
||||
unsigned short notifyDeltaMilliSeconds; // Nov. 2020; push to Python Widgets
|
||||
ptime lastUpdate;
|
||||
|
||||
static void PyCallbackHandlerMonitorData(struct event_handler_args args); //pushes pvd,handle,pvname
|
||||
static void PyCallbackHandlerMonitor(struct event_handler_args args); //pushes handle
|
||||
static void PyCallbackHandlerMonitorData(struct event_handler_args args); //pushes handle, pvname, pvdata
|
||||
static void PyCallbackHandlerMonitor(struct event_handler_args args); //pushes handle, pvname
|
||||
//static void PyCallbackHandlerHandle(struct event_handler_args args); //pushes handle
|
||||
|
||||
|
||||
void setEventID(evid e)
|
||||
{
|
||||
@@ -720,8 +736,8 @@ public:
|
||||
cafeDbrType((CAFENUM::DBR_TYPE) CAFENUM::DBR_TIME),
|
||||
nelem(0), mask(DBE_VALUE | DBE_LOG | DBE_ALARM),
|
||||
handler(callbackHandlerMonitor), cyCallback(NULL),
|
||||
userArgs(NULL), eventID(NULL), status(ICAFE_NORMAL),
|
||||
notifyDeltaMilliSeconds(0)
|
||||
nCyCallbackParameters(1), userArgs(NULL), eventID(NULL),
|
||||
status(ICAFE_NORMAL), notifyDeltaMilliSeconds(0)
|
||||
{
|
||||
++idNext;
|
||||
id = idNext;
|
||||
@@ -785,6 +801,11 @@ public:
|
||||
return cyCallback;
|
||||
};
|
||||
|
||||
unsigned short getNoCyCallbackParameters() const
|
||||
{
|
||||
return nCyCallbackParameters;
|
||||
};
|
||||
|
||||
pCallback getHandler() const
|
||||
{
|
||||
return handler;
|
||||
@@ -849,6 +870,18 @@ public:
|
||||
cyCallback=cythonCallback;
|
||||
}
|
||||
|
||||
void setNoCyCallbackParameters(unsigned int nCyCbParam){
|
||||
nCyCallbackParameters = nCyCbParam;
|
||||
}
|
||||
|
||||
|
||||
//void setPyCyHandlerHandle(void * cythonCallback)
|
||||
//{
|
||||
// handler= PyCallbackHandlerHandle;
|
||||
// cyCallback=cythonCallback;
|
||||
//};
|
||||
|
||||
|
||||
void setPyCyHandler(void * cythonCallback)
|
||||
{
|
||||
handler= PyCallbackHandlerMonitor;
|
||||
|
||||
@@ -228,7 +228,7 @@ public:
|
||||
};
|
||||
|
||||
|
||||
int asInt (std::string message)
|
||||
int asInt(std::string message)
|
||||
{
|
||||
for (pos=mapAlarmCondition.begin(); pos != mapAlarmCondition.end(); ++pos)
|
||||
{
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
template <class CTYPE> class Transpose {
|
||||
|
||||
public:
|
||||
Transpose () {};
|
||||
Transpose () {useHandleHelper = true;};
|
||||
~Transpose () {};
|
||||
|
||||
HandleHelper handleHelper;
|
||||
@@ -109,6 +109,8 @@ private:
|
||||
chtype _dataTypeClient;
|
||||
char stig [MAX_ENUM_STATES][MAX_ENUM_STRING_SIZE];
|
||||
|
||||
bool useHandleHelper; //instantiating global extern cs for use in pybind11
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -269,8 +271,15 @@ template <class CTYPE> int Transpose<CTYPE>::put(const unsigned int _handle,
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -711,7 +720,7 @@ template <class CTYPE> int Transpose<CTYPE>::put(const unsigned int _handle,
|
||||
//long Transpose<CAFE_DATATYPE_UNION>::put( const unsigned int _handle,
|
||||
// CAFE_DATATYPE_UNION_SEQ val, CAFE_DATATYPE cdt)
|
||||
|
||||
template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
CAFE_DATATYPE_UNION_SEQ val, CAFE_DATATYPE cdt)
|
||||
{
|
||||
#define __METHOD__ "Transpose<CTYPE>::put()"
|
||||
@@ -720,7 +729,13 @@ template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -987,7 +1002,14 @@ template <class CTYPE> int Transpose<CTYPE>::putString
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -1264,7 +1286,7 @@ template <class CTYPE> int Transpose<CTYPE>::putString
|
||||
|
||||
/**
|
||||
* \brief Retrieves data transmitted by CA with dbrTypeRequest_DataBuffer
|
||||
* and then converts to CTYPE i.e. _dataTypeClient
|
||||
* and then converts to CTYPE i.e. _dataTypeClient
|
||||
* \param _handle input: handle to Conduit object
|
||||
* \param val output: CTYPE datatype
|
||||
* \param alarmStatus output: dbr_short_t
|
||||
@@ -1281,7 +1303,19 @@ template <class CTYPE> int Transpose<CTYPE>::get(
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
//pybind11 fix
|
||||
//cafeConduit_set_by_handle & handle_index = helper.getcsHandleIndex();
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
|
||||
//std::cout << __FILE__ << "//" << __METHOD__ << std::endl;
|
||||
|
||||
@@ -1840,7 +1874,14 @@ template <class CTYPE> int Transpose<CTYPE>::getCtrl (
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
22
libtool
22
libtool
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Generated automatically by config.status (cafe) 1.13.0
|
||||
# Libtool was configured on host gfa-lc6-64:
|
||||
# Generated automatically by config.status (cafe) 1.15.0
|
||||
# Libtool was configured on host sf-lc7a.psi.ch:
|
||||
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
|
||||
|
||||
# Provide generalized library-building support services.
|
||||
@@ -76,19 +76,19 @@ build=x86_64-unknown-linux-gnu
|
||||
build_os=linux-gnu
|
||||
|
||||
# A sed program that does not truncate output.
|
||||
SED="/bin/sed"
|
||||
SED="/usr/bin/sed"
|
||||
|
||||
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
|
||||
Xsed="$SED -e 1s/^X//"
|
||||
|
||||
# A grep program that handles long lines.
|
||||
GREP="/bin/grep"
|
||||
GREP="/usr/bin/grep"
|
||||
|
||||
# An ERE matcher.
|
||||
EGREP="/bin/grep -E"
|
||||
EGREP="/usr/bin/grep -E"
|
||||
|
||||
# A literal string matcher.
|
||||
FGREP="/bin/grep -F"
|
||||
FGREP="/usr/bin/grep -F"
|
||||
|
||||
# A BSD- or MS-compatible name lister.
|
||||
NM="/usr/bin/nm -B"
|
||||
@@ -97,7 +97,7 @@ NM="/usr/bin/nm -B"
|
||||
LN_S="ln -s"
|
||||
|
||||
# What is the maximum length of a command?
|
||||
max_cmd_len=1966080
|
||||
max_cmd_len=1572864
|
||||
|
||||
# Object file suffix (normally "o").
|
||||
objext=o
|
||||
@@ -192,7 +192,7 @@ nm_file_list_spec="@"
|
||||
lt_sysroot=
|
||||
|
||||
# Command to truncate a binary pipe.
|
||||
lt_truncate_bin="/bin/dd bs=4096 count=1"
|
||||
lt_truncate_bin="/usr/bin/dd bs=4096 count=1"
|
||||
|
||||
# The name of the directory that contains temporary libtool files.
|
||||
objdir=.libs
|
||||
@@ -285,7 +285,7 @@ hardcode_into_libs=yes
|
||||
sys_lib_search_path_spec="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc /opt/psi/Programming/gcc/7.3.0/lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib64 /lib64 /usr/lib64 /opt/psi/Programming/gcc/7.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib /lib /usr/lib "
|
||||
|
||||
# Detected run-time system search path for libraries.
|
||||
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/lib64/atlas /usr/lib64/ctapi /usr/lib64/llvm /usr/lib64/mysql /usr/lib64/papi-4.1.3 /usr/lib64/papi-5.1.1/usr/lib /usr/lib/qt-3.3/lib /usr/lib64/qt-3.3/lib /usr/lib64/tcl8.5/tclx8.4 /usr/lib64/tcl8.5 /usr/lib64/xulrunner "
|
||||
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/lib64/atlas /usr/lib64//bind9-export/ /usr/lib64/dyninst /usr/lib64/mysql /usr/lib/oracle/12.2/client64/lib /usr/lib64/tcl8.5/tclx8.4 "
|
||||
|
||||
# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
|
||||
configure_time_lt_sys_library_path=""
|
||||
@@ -11819,8 +11819,8 @@ compiler_lib_search_dirs="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/
|
||||
|
||||
# Dependencies to place before and after the objects being linked to
|
||||
# create a shared library.
|
||||
predep_objects="/usr/lib/../lib64/crti.o /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtbeginS.o"
|
||||
postdep_objects="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtendS.o /usr/lib/../lib64/crtn.o"
|
||||
predep_objects="/lib/../lib64/crti.o /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtbeginS.o"
|
||||
postdep_objects="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtendS.o /lib/../lib64/crtn.o"
|
||||
predeps=""
|
||||
postdeps="-lstdc++ -lm -lgcc_s -lc -lgcc_s"
|
||||
|
||||
|
||||
8369
m4/libtool.m4
vendored
Normal file
8369
m4/libtool.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
437
m4/ltoptions.m4
vendored
Normal file
437
m4/ltoptions.m4
vendored
Normal file
@@ -0,0 +1,437 @@
|
||||
# Helper functions for option handling. -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
|
||||
# Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 8 ltoptions.m4
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
||||
|
||||
|
||||
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
|
||||
# ------------------------------------------
|
||||
m4_define([_LT_MANGLE_OPTION],
|
||||
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
|
||||
|
||||
|
||||
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
|
||||
# ---------------------------------------
|
||||
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
|
||||
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
|
||||
# saved as a flag.
|
||||
m4_define([_LT_SET_OPTION],
|
||||
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
|
||||
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
|
||||
_LT_MANGLE_DEFUN([$1], [$2]),
|
||||
[m4_warning([Unknown $1 option '$2'])])[]dnl
|
||||
])
|
||||
|
||||
|
||||
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
|
||||
# ------------------------------------------------------------
|
||||
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
|
||||
m4_define([_LT_IF_OPTION],
|
||||
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
|
||||
|
||||
|
||||
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
|
||||
# -------------------------------------------------------
|
||||
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
|
||||
# are set.
|
||||
m4_define([_LT_UNLESS_OPTIONS],
|
||||
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
|
||||
[m4_define([$0_found])])])[]dnl
|
||||
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
|
||||
])[]dnl
|
||||
])
|
||||
|
||||
|
||||
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
|
||||
# ----------------------------------------
|
||||
# OPTION-LIST is a space-separated list of Libtool options associated
|
||||
# with MACRO-NAME. If any OPTION has a matching handler declared with
|
||||
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
|
||||
# the unknown option and exit.
|
||||
m4_defun([_LT_SET_OPTIONS],
|
||||
[# Set options
|
||||
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||
[_LT_SET_OPTION([$1], _LT_Option)])
|
||||
|
||||
m4_if([$1],[LT_INIT],[
|
||||
dnl
|
||||
dnl Simply set some default values (i.e off) if boolean options were not
|
||||
dnl specified:
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
|
||||
])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
|
||||
])
|
||||
dnl
|
||||
dnl If no reference was made to various pairs of opposing options, then
|
||||
dnl we run the default mode handler for the pair. For example, if neither
|
||||
dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
|
||||
dnl archives by default:
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
|
||||
[_LT_ENABLE_FAST_INSTALL])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
|
||||
[_LT_WITH_AIX_SONAME([aix])])
|
||||
])
|
||||
])# _LT_SET_OPTIONS
|
||||
|
||||
|
||||
## --------------------------------- ##
|
||||
## Macros to handle LT_INIT options. ##
|
||||
## --------------------------------- ##
|
||||
|
||||
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
|
||||
# -----------------------------------------
|
||||
m4_define([_LT_MANGLE_DEFUN],
|
||||
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
|
||||
|
||||
|
||||
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
|
||||
# -----------------------------------------------
|
||||
m4_define([LT_OPTION_DEFINE],
|
||||
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
|
||||
])# LT_OPTION_DEFINE
|
||||
|
||||
|
||||
# dlopen
|
||||
# ------
|
||||
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
|
||||
])
|
||||
|
||||
AU_DEFUN([AC_LIBTOOL_DLOPEN],
|
||||
[_LT_SET_OPTION([LT_INIT], [dlopen])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'dlopen' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
|
||||
|
||||
|
||||
# win32-dll
|
||||
# ---------
|
||||
# Declare package support for building win32 dll's.
|
||||
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
|
||||
[enable_win32_dll=yes
|
||||
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
|
||||
AC_CHECK_TOOL(AS, as, false)
|
||||
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
||||
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
||||
;;
|
||||
esac
|
||||
|
||||
test -z "$AS" && AS=as
|
||||
_LT_DECL([], [AS], [1], [Assembler program])dnl
|
||||
|
||||
test -z "$DLLTOOL" && DLLTOOL=dlltool
|
||||
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
|
||||
|
||||
test -z "$OBJDUMP" && OBJDUMP=objdump
|
||||
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
|
||||
])# win32-dll
|
||||
|
||||
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
|
||||
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
||||
_LT_SET_OPTION([LT_INIT], [win32-dll])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'win32-dll' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
|
||||
|
||||
|
||||
# _LT_ENABLE_SHARED([DEFAULT])
|
||||
# ----------------------------
|
||||
# implement the --enable-shared flag, and supports the 'shared' and
|
||||
# 'disable-shared' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_SHARED],
|
||||
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([shared],
|
||||
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
|
||||
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_shared=yes ;;
|
||||
no) enable_shared=no ;;
|
||||
*)
|
||||
enable_shared=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_shared=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
|
||||
|
||||
_LT_DECL([build_libtool_libs], [enable_shared], [0],
|
||||
[Whether or not to build shared libraries])
|
||||
])# _LT_ENABLE_SHARED
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
|
||||
|
||||
# Old names:
|
||||
AC_DEFUN([AC_ENABLE_SHARED],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_DISABLE_SHARED],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-shared])
|
||||
])
|
||||
|
||||
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
|
||||
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
|
||||
|
||||
|
||||
|
||||
# _LT_ENABLE_STATIC([DEFAULT])
|
||||
# ----------------------------
|
||||
# implement the --enable-static flag, and support the 'static' and
|
||||
# 'disable-static' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_STATIC],
|
||||
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([static],
|
||||
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
|
||||
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_static=yes ;;
|
||||
no) enable_static=no ;;
|
||||
*)
|
||||
enable_static=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_static=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
|
||||
|
||||
_LT_DECL([build_old_libs], [enable_static], [0],
|
||||
[Whether or not to build static libraries])
|
||||
])# _LT_ENABLE_STATIC
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
|
||||
|
||||
# Old names:
|
||||
AC_DEFUN([AC_ENABLE_STATIC],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_DISABLE_STATIC],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-static])
|
||||
])
|
||||
|
||||
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
|
||||
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
|
||||
|
||||
|
||||
|
||||
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
|
||||
# ----------------------------------
|
||||
# implement the --enable-fast-install flag, and support the 'fast-install'
|
||||
# and 'disable-fast-install' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_FAST_INSTALL],
|
||||
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([fast-install],
|
||||
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
|
||||
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_fast_install=yes ;;
|
||||
no) enable_fast_install=no ;;
|
||||
*)
|
||||
enable_fast_install=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_fast_install=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
|
||||
|
||||
_LT_DECL([fast_install], [enable_fast_install], [0],
|
||||
[Whether or not to optimize for fast installation])dnl
|
||||
])# _LT_ENABLE_FAST_INSTALL
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
|
||||
|
||||
# Old names:
|
||||
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||
the 'fast-install' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||
the 'disable-fast-install' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
||||
|
||||
|
||||
# _LT_WITH_AIX_SONAME([DEFAULT])
|
||||
# ----------------------------------
|
||||
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
||||
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
|
||||
# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
|
||||
m4_define([_LT_WITH_AIX_SONAME],
|
||||
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
||||
shared_archive_member_spec=
|
||||
case $host,$enable_shared in
|
||||
power*-*-aix[[5-9]]*,yes)
|
||||
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
||||
AC_ARG_WITH([aix-soname],
|
||||
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
||||
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
||||
[case $withval in
|
||||
aix|svr4|both)
|
||||
;;
|
||||
*)
|
||||
AC_MSG_ERROR([Unknown argument to --with-aix-soname])
|
||||
;;
|
||||
esac
|
||||
lt_cv_with_aix_soname=$with_aix_soname],
|
||||
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
||||
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
|
||||
with_aix_soname=$lt_cv_with_aix_soname])
|
||||
AC_MSG_RESULT([$with_aix_soname])
|
||||
if test aix != "$with_aix_soname"; then
|
||||
# For the AIX way of multilib, we name the shared archive member
|
||||
# based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
|
||||
# and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
|
||||
# Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
|
||||
# the AIX toolchain works better with OBJECT_MODE set (default 32).
|
||||
if test 64 = "${OBJECT_MODE-32}"; then
|
||||
shared_archive_member_spec=shr_64
|
||||
else
|
||||
shared_archive_member_spec=shr
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
with_aix_soname=aix
|
||||
;;
|
||||
esac
|
||||
|
||||
_LT_DECL([], [shared_archive_member_spec], [0],
|
||||
[Shared archive member basename, for filename based shared library versioning on AIX])dnl
|
||||
])# _LT_WITH_AIX_SONAME
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
||||
|
||||
|
||||
# _LT_WITH_PIC([MODE])
|
||||
# --------------------
|
||||
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
||||
# LT_INIT options.
|
||||
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
||||
m4_define([_LT_WITH_PIC],
|
||||
[AC_ARG_WITH([pic],
|
||||
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
||||
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
||||
[lt_p=${PACKAGE-default}
|
||||
case $withval in
|
||||
yes|no) pic_mode=$withval ;;
|
||||
*)
|
||||
pic_mode=default
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for lt_pkg in $withval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$lt_pkg" = "X$lt_p"; then
|
||||
pic_mode=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[pic_mode=m4_default([$1], [default])])
|
||||
|
||||
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
||||
])# _LT_WITH_PIC
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
|
||||
|
||||
# Old name:
|
||||
AU_DEFUN([AC_LIBTOOL_PICMODE],
|
||||
[_LT_SET_OPTION([LT_INIT], [pic-only])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'pic-only' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
|
||||
|
||||
## ----------------- ##
|
||||
## LTDL_INIT Options ##
|
||||
## ----------------- ##
|
||||
|
||||
m4_define([_LTDL_MODE], [])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
|
||||
[m4_define([_LTDL_MODE], [nonrecursive])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
|
||||
[m4_define([_LTDL_MODE], [recursive])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
|
||||
[m4_define([_LTDL_MODE], [subproject])])
|
||||
|
||||
m4_define([_LTDL_TYPE], [])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [installable],
|
||||
[m4_define([_LTDL_TYPE], [installable])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
|
||||
[m4_define([_LTDL_TYPE], [convenience])])
|
||||
124
m4/ltsugar.m4
vendored
Normal file
124
m4/ltsugar.m4
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
|
||||
# Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 6 ltsugar.m4
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
|
||||
|
||||
|
||||
# lt_join(SEP, ARG1, [ARG2...])
|
||||
# -----------------------------
|
||||
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
|
||||
# associated separator.
|
||||
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
|
||||
# versions in m4sugar had bugs.
|
||||
m4_define([lt_join],
|
||||
[m4_if([$#], [1], [],
|
||||
[$#], [2], [[$2]],
|
||||
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
|
||||
m4_define([_lt_join],
|
||||
[m4_if([$#$2], [2], [],
|
||||
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
|
||||
|
||||
|
||||
# lt_car(LIST)
|
||||
# lt_cdr(LIST)
|
||||
# ------------
|
||||
# Manipulate m4 lists.
|
||||
# These macros are necessary as long as will still need to support
|
||||
# Autoconf-2.59, which quotes differently.
|
||||
m4_define([lt_car], [[$1]])
|
||||
m4_define([lt_cdr],
|
||||
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
|
||||
[$#], 1, [],
|
||||
[m4_dquote(m4_shift($@))])])
|
||||
m4_define([lt_unquote], $1)
|
||||
|
||||
|
||||
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
|
||||
# ------------------------------------------
|
||||
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
|
||||
# Note that neither SEPARATOR nor STRING are expanded; they are appended
|
||||
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
|
||||
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
|
||||
# than defined and empty).
|
||||
#
|
||||
# This macro is needed until we can rely on Autoconf 2.62, since earlier
|
||||
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
|
||||
m4_define([lt_append],
|
||||
[m4_define([$1],
|
||||
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
|
||||
|
||||
|
||||
|
||||
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
|
||||
# ----------------------------------------------------------
|
||||
# Produce a SEP delimited list of all paired combinations of elements of
|
||||
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
|
||||
# has the form PREFIXmINFIXSUFFIXn.
|
||||
# Needed until we can rely on m4_combine added in Autoconf 2.62.
|
||||
m4_define([lt_combine],
|
||||
[m4_if(m4_eval([$# > 3]), [1],
|
||||
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
|
||||
[[m4_foreach([_Lt_prefix], [$2],
|
||||
[m4_foreach([_Lt_suffix],
|
||||
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
|
||||
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
|
||||
|
||||
|
||||
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
|
||||
# -----------------------------------------------------------------------
|
||||
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
|
||||
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
|
||||
m4_define([lt_if_append_uniq],
|
||||
[m4_ifdef([$1],
|
||||
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
|
||||
[lt_append([$1], [$2], [$3])$4],
|
||||
[$5])],
|
||||
[lt_append([$1], [$2], [$3])$4])])
|
||||
|
||||
|
||||
# lt_dict_add(DICT, KEY, VALUE)
|
||||
# -----------------------------
|
||||
m4_define([lt_dict_add],
|
||||
[m4_define([$1($2)], [$3])])
|
||||
|
||||
|
||||
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
|
||||
# --------------------------------------------
|
||||
m4_define([lt_dict_add_subkey],
|
||||
[m4_define([$1($2:$3)], [$4])])
|
||||
|
||||
|
||||
# lt_dict_fetch(DICT, KEY, [SUBKEY])
|
||||
# ----------------------------------
|
||||
m4_define([lt_dict_fetch],
|
||||
[m4_ifval([$3],
|
||||
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
|
||||
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
|
||||
|
||||
|
||||
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
|
||||
# -----------------------------------------------------------------
|
||||
m4_define([lt_if_dict_fetch],
|
||||
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
|
||||
[$5],
|
||||
[$6])])
|
||||
|
||||
|
||||
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
|
||||
# --------------------------------------------------------------
|
||||
m4_define([lt_dict_filter],
|
||||
[m4_if([$5], [], [],
|
||||
[lt_join(m4_quote(m4_default([$4], [[, ]])),
|
||||
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
|
||||
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
|
||||
])
|
||||
23
m4/ltversion.m4
vendored
Normal file
23
m4/ltversion.m4
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
|
||||
# Written by Scott James Remnant, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# @configure_input@
|
||||
|
||||
# serial 4179 ltversion.m4
|
||||
# This file is part of GNU Libtool
|
||||
|
||||
m4_define([LT_PACKAGE_VERSION], [2.4.6])
|
||||
m4_define([LT_PACKAGE_REVISION], [2.4.6])
|
||||
|
||||
AC_DEFUN([LTVERSION_VERSION],
|
||||
[macro_version='2.4.6'
|
||||
macro_revision='2.4.6'
|
||||
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
||||
_LT_DECL(, macro_revision, 0)
|
||||
])
|
||||
99
m4/lt~obsolete.m4
vendored
Normal file
99
m4/lt~obsolete.m4
vendored
Normal file
@@ -0,0 +1,99 @@
|
||||
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
|
||||
# Foundation, Inc.
|
||||
# Written by Scott James Remnant, 2004.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 5 lt~obsolete.m4
|
||||
|
||||
# These exist entirely to fool aclocal when bootstrapping libtool.
|
||||
#
|
||||
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
|
||||
# which have later been changed to m4_define as they aren't part of the
|
||||
# exported API, or moved to Autoconf or Automake where they belong.
|
||||
#
|
||||
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
|
||||
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
|
||||
# using a macro with the same name in our local m4/libtool.m4 it'll
|
||||
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
|
||||
# and doesn't know about Autoconf macros at all.)
|
||||
#
|
||||
# So we provide this file, which has a silly filename so it's always
|
||||
# included after everything else. This provides aclocal with the
|
||||
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
||||
# because those macros already exist, or will be overwritten later.
|
||||
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
||||
#
|
||||
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
||||
# Yes, that means every name once taken will need to remain here until
|
||||
# we give up compatibility with versions before 1.7, at which point
|
||||
# we need to keep only those names which we still refer to.
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
|
||||
|
||||
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
|
||||
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
|
||||
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
|
||||
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
|
||||
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
|
||||
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
|
||||
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
|
||||
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
|
||||
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
|
||||
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
|
||||
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
|
||||
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
|
||||
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
|
||||
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
|
||||
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
|
||||
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
|
||||
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
|
||||
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
|
||||
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
|
||||
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
|
||||
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
|
||||
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
|
||||
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
|
||||
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
|
||||
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
|
||||
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
|
||||
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
|
||||
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
|
||||
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
|
||||
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
|
||||
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
|
||||
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
|
||||
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
|
||||
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
|
||||
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
|
||||
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
|
||||
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
|
||||
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
|
||||
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
|
||||
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
|
||||
1
m4/makefile.am
Normal file
1
m4/makefile.am
Normal file
@@ -0,0 +1 @@
|
||||
ACLOCAL_AMFLAGS -I m4
|
||||
455
makefile
455
makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -35,14 +79,16 @@ POST_UNINSTALL = :
|
||||
build_triplet = x86_64-unknown-linux-gnu
|
||||
host_triplet = x86_64-unknown-linux-gnu
|
||||
subdir = .
|
||||
DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \
|
||||
$(srcdir)/makefile.am $(srcdir)/makefile.in \
|
||||
$(top_srcdir)/./include/config.in $(top_srcdir)/configure \
|
||||
.//AUTHORS .//COPYING .//ChangeLog .//INSTALL .//NEWS \
|
||||
.//README .//config.guess .//config.sub .//depcomp \
|
||||
.//install-sh .//ltmain.sh .//missing AUTHORS COPYING \
|
||||
ChangeLog INSTALL NEWS config.guess config.sub depcomp \
|
||||
install-sh ltmain.sh missing
|
||||
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
|
||||
$(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(top_srcdir)/configure $(am__configure_deps) \
|
||||
$(top_srcdir)/./include/config.in $(include_HEADERS) \
|
||||
.//AUTHORS COPYING .//COPYING .//ChangeLog .//INSTALL .//NEWS \
|
||||
.//README config.guess .//config.guess config.sub \
|
||||
.//config.sub install-sh .//install-sh missing .//missing \
|
||||
ltmain.sh .//ltmain.sh $(top_srcdir)/./config.guess \
|
||||
$(top_srcdir)/./config.sub $(top_srcdir)/./install-sh \
|
||||
$(top_srcdir)/./ltmain.sh $(top_srcdir)/./missing
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -56,15 +102,33 @@ mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/./include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-dvi-recursive install-exec-recursive \
|
||||
install-html-recursive install-info-recursive \
|
||||
install-pdf-recursive install-ps-recursive install-recursive \
|
||||
installcheck-recursive installdirs-recursive pdf-recursive \
|
||||
ps-recursive uninstall-recursive
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||
install-data-recursive install-dvi-recursive \
|
||||
install-exec-recursive install-html-recursive \
|
||||
install-info-recursive install-pdf-recursive \
|
||||
install-ps-recursive install-recursive installcheck-recursive \
|
||||
installdirs-recursive pdf-recursive ps-recursive \
|
||||
tags-recursive uninstall-recursive
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@@ -86,23 +150,53 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(includedir)"
|
||||
HEADERS = $(include_HEADERS)
|
||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||
distclean-recursive maintainer-clean-recursive
|
||||
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
|
||||
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
|
||||
distdir dist dist-all distcheck
|
||||
am__recursive_targets = \
|
||||
$(RECURSIVE_TARGETS) \
|
||||
$(RECURSIVE_CLEAN_TARGETS) \
|
||||
$(am__extra_recursive_targets)
|
||||
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
|
||||
cscope distdir dist dist-all distcheck
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
CSCOPE = cscope
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
{ test ! -d "$(distdir)" \
|
||||
|| { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -fr "$(distdir)"; }; }
|
||||
if test -d "$(distdir)"; then \
|
||||
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -rf "$(distdir)" \
|
||||
|| { sleep 5 && rm -rf "$(distdir)"; }; \
|
||||
else :; fi
|
||||
am__post_remove_distdir = $(am__remove_distdir)
|
||||
am__relativize = \
|
||||
dir0=`pwd`; \
|
||||
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
|
||||
@@ -130,23 +224,27 @@ am__relativize = \
|
||||
reldir="$$dir2"
|
||||
DIST_ARCHIVES = $(distdir).tar.gz
|
||||
GZIP_ENV = --best
|
||||
DIST_TARGETS = dist-gzip
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||||
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml -I$(top_srcdir)/include
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib @CAFE_LIBS@
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml -I$(top_srcdir)/include
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib @CAFE_LIBS@
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/7.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/7.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
@@ -160,27 +258,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS = -lQt5Xml -lpython3.7m
|
||||
LIBS = -lQtXml -lQtCore -lpython3.5m
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -190,16 +288,17 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.13.0
|
||||
PACKAGE_STRING = CAFE 1.15.0
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.15.0
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.13.0
|
||||
VERSION = 1.15.0
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
@@ -211,8 +310,8 @@ ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -234,15 +333,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.13.0/lib/SL6-x86_64
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.13.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -259,7 +358,7 @@ ACLOCAL_AMFLAGS = -I m4
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
am--refresh:
|
||||
am--refresh: makefile
|
||||
@:
|
||||
$(srcdir)/makefile.in: $(srcdir)/makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
@@ -295,10 +394,8 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
./include/config.h: ./include/stamp-h1
|
||||
@if test ! -f $@; then \
|
||||
rm -f ./include/stamp-h1; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) ./include/stamp-h1; \
|
||||
else :; fi
|
||||
@if test ! -f $@; then rm -f ./include/stamp-h1; else :; fi
|
||||
@if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) ./include/stamp-h1; else :; fi
|
||||
|
||||
./include/stamp-h1: $(top_srcdir)/./include/config.in $(top_builddir)/config.status
|
||||
@rm -f ./include/stamp-h1
|
||||
@@ -321,8 +418,11 @@ distclean-libtool:
|
||||
-rm -f libtool config.lt
|
||||
install-includeHEADERS: $(include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
@@ -336,27 +436,28 @@ uninstall-includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
test -n "$$files" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(includedir)" && rm -f $$files
|
||||
dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run `make' without going through this Makefile.
|
||||
# To change the values of `make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
$(RECURSIVE_TARGETS):
|
||||
@fail= failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
# into them and run 'make' without going through this Makefile.
|
||||
# To change the values of 'make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||||
# (2) otherwise, pass the desired values on the 'make' command line.
|
||||
$(am__recursive_targets):
|
||||
@fail=; \
|
||||
if $(am__make_keepgoing); then \
|
||||
failcom='fail=yes'; \
|
||||
else \
|
||||
failcom='exit 1'; \
|
||||
fi; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
@@ -371,57 +472,12 @@ $(RECURSIVE_TARGETS):
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
$(RECURSIVE_CLEAN_TARGETS):
|
||||
@fail= failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
rev=''; for subdir in $$list; do \
|
||||
if test "$$subdir" = "."; then :; else \
|
||||
rev="$$subdir $$rev"; \
|
||||
fi; \
|
||||
done; \
|
||||
rev="$$rev ."; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
for subdir in $$rev; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done && test -z "$$fail"
|
||||
tags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
||||
done
|
||||
ctags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
||||
done
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-recursive
|
||||
TAGS: tags
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
@@ -437,12 +493,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -454,15 +505,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-recursive
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -471,9 +518,31 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscope: cscope.files
|
||||
test ! -s cscope.files \
|
||||
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
|
||||
clean-cscope:
|
||||
-rm -f cscope.files
|
||||
cscope.files: clean-cscope cscopelist
|
||||
cscopelist: cscopelist-recursive
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
@@ -509,13 +578,10 @@ distdir: $(DISTFILES)
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
$(am__make_dryrun) \
|
||||
|| test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
|
||||
$(am__relativize); \
|
||||
new_distdir=$$reldir; \
|
||||
@@ -544,36 +610,36 @@ distdir: $(DISTFILES)
|
||||
|| chmod -R a+r "$(distdir)"
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
$(am__remove_distdir)
|
||||
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-lzma: distdir
|
||||
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
|
||||
$(am__remove_distdir)
|
||||
dist-lzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-xz: distdir
|
||||
tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
|
||||
$(am__remove_distdir)
|
||||
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-tarZ: distdir
|
||||
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-shar: distdir
|
||||
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist dist-all: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
dist dist-all:
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
@@ -584,8 +650,8 @@ distcheck: dist
|
||||
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||
*.tar.lzma*) \
|
||||
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
|
||||
*.tar.lz*) \
|
||||
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
|
||||
*.tar.xz*) \
|
||||
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
|
||||
*.tar.Z*) \
|
||||
@@ -595,9 +661,9 @@ distcheck: dist
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir); chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build
|
||||
mkdir $(distdir)/_inst
|
||||
chmod -R a-w $(distdir)
|
||||
chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
test -d $(distdir)/_build || exit 0; \
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
@@ -605,6 +671,7 @@ distcheck: dist
|
||||
&& am__cwd=`pwd` \
|
||||
&& $(am__cd) $(distdir)/_build \
|
||||
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
|
||||
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
@@ -628,13 +695,21 @@ distcheck: dist
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
|
||||
&& cd "$$am__cwd" \
|
||||
|| exit 1
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||||
distuninstallcheck:
|
||||
@$(am__cd) '$(distuninstallcheck_dir)' \
|
||||
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
||||
@test -n '$(distuninstallcheck_dir)' || { \
|
||||
echo 'ERROR: trying to run $@ with an empty' \
|
||||
'$$(distuninstallcheck_dir)' >&2; \
|
||||
exit 1; \
|
||||
}; \
|
||||
$(am__cd) '$(distuninstallcheck_dir)' || { \
|
||||
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
|
||||
exit 1; \
|
||||
}; \
|
||||
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left after uninstall:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
@@ -668,10 +743,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -753,25 +833,24 @@ ps-am:
|
||||
|
||||
uninstall-am: uninstall-includeHEADERS
|
||||
|
||||
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
|
||||
install-am install-strip tags-recursive
|
||||
.MAKE: $(am__recursive_targets) install-am install-strip
|
||||
|
||||
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
|
||||
all all-am am--refresh check check-am clean clean-generic \
|
||||
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
|
||||
distcheck distclean distclean-generic distclean-hdr \
|
||||
distclean-libtool distclean-tags distcleancheck distdir \
|
||||
distuninstallcheck dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-includeHEADERS install-info \
|
||||
install-info-am install-man install-pdf install-pdf-am \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
|
||||
uninstall uninstall-am uninstall-includeHEADERS
|
||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||||
am--refresh check check-am clean clean-cscope clean-generic \
|
||||
clean-libtool cscope cscopelist-am ctags ctags-am dist \
|
||||
dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
|
||||
dist-xz dist-zip distcheck distclean distclean-generic \
|
||||
distclean-hdr distclean-libtool distclean-tags distcleancheck \
|
||||
distdir distuninstallcheck dvi dvi-am html html-am info \
|
||||
info-am install install-am install-data install-data-am \
|
||||
install-dvi install-dvi-am install-exec install-exec-am \
|
||||
install-html install-html-am install-includeHEADERS \
|
||||
install-info install-info-am install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installdirs installdirs-am \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags tags-am uninstall uninstall-am uninstall-includeHEADERS
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -1 +1 @@
|
||||
PyCafe_sls.cpp
|
||||
PyCafe_sls_py37.cpp
|
||||
54163
src/PyCafe_sls.cpp
54163
src/PyCafe_sls.cpp
File diff suppressed because it is too large
Load Diff
163492
src/PyCafe_sls_py37.cpp
Normal file
163492
src/PyCafe_sls_py37.cpp
Normal file
File diff suppressed because it is too large
Load Diff
0
src/bitshuffle/.deps/.dirstamp
Normal file
0
src/bitshuffle/.deps/.dirstamp
Normal file
@@ -1 +1,116 @@
|
||||
# dummy
|
||||
bitshuffle/bitshuffle.lo: bitshuffle/bitshuffle.c \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle.h /usr/include/stdlib.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
bitshuffle/bitshuffle_internals.h bitshuffle/iochain.h \
|
||||
.././include/lz4.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/bits/stdio.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/string.h /usr/include/bits/string2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/bits/wchar.h:
|
||||
|
||||
bitshuffle/bitshuffle_internals.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
.././include/lz4.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h:
|
||||
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/bits/stdio.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/bits/string.h:
|
||||
|
||||
/usr/include/bits/string2.h:
|
||||
|
||||
@@ -1 +1,123 @@
|
||||
# dummy
|
||||
bitshuffle/bitshuffle_core.lo: bitshuffle/bitshuffle_core.c \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
|
||||
/usr/include/stdlib.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_internals.h \
|
||||
bitshuffle/iochain.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/bits/stdio.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/emmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/xmmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mm_malloc.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/bits/wchar.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_internals.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h:
|
||||
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/bits/stdio.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/bits/string.h:
|
||||
|
||||
/usr/include/bits/string2.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/emmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/xmmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mm_malloc.h:
|
||||
|
||||
@@ -1 +1,68 @@
|
||||
# dummy
|
||||
bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdc-predef.h \
|
||||
/usr/include/stdlib.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/iochain.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
0
src/bitshuffle/.dirstamp
Normal file
0
src/bitshuffle/.dirstamp
Normal file
BIN
src/bitshuffle/.libs/bitshuffle.o
Normal file
BIN
src/bitshuffle/.libs/bitshuffle.o
Normal file
Binary file not shown.
BIN
src/bitshuffle/.libs/bitshuffle_core.o
Normal file
BIN
src/bitshuffle/.libs/bitshuffle_core.o
Normal file
Binary file not shown.
BIN
src/bitshuffle/.libs/iochain.o
Normal file
BIN
src/bitshuffle/.libs/iochain.o
Normal file
Binary file not shown.
12
src/bitshuffle/bitshuffle.lo
Normal file
12
src/bitshuffle/bitshuffle.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/bitshuffle.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/bitshuffle.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='bitshuffle.o'
|
||||
|
||||
BIN
src/bitshuffle/bitshuffle.o
Normal file
BIN
src/bitshuffle/bitshuffle.o
Normal file
Binary file not shown.
12
src/bitshuffle/bitshuffle_core.lo
Normal file
12
src/bitshuffle/bitshuffle_core.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/bitshuffle_core.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/bitshuffle_core.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='bitshuffle_core.o'
|
||||
|
||||
BIN
src/bitshuffle/bitshuffle_core.o
Normal file
BIN
src/bitshuffle/bitshuffle_core.o
Normal file
Binary file not shown.
12
src/bitshuffle/iochain.lo
Normal file
12
src/bitshuffle/iochain.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/iochain.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/iochain.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='iochain.o'
|
||||
|
||||
BIN
src/bitshuffle/iochain.o
Normal file
BIN
src/bitshuffle/iochain.o
Normal file
Binary file not shown.
@@ -20,7 +20,6 @@
|
||||
///
|
||||
|
||||
|
||||
|
||||
#include <cafe.h>
|
||||
#include <conduitGroup.h>
|
||||
#include <cafeEnum.h>
|
||||
@@ -34,7 +33,6 @@ using namespace std;
|
||||
bool MUTEX=true;
|
||||
bool CHECK_CONSISTENCY_CA_STATE=true;
|
||||
bool SF_WITH_PULSE_ID = false;
|
||||
epicsMutex cafeMutex;
|
||||
|
||||
vector<PVGroup> PVGroupV;
|
||||
vector<PVGroup> PVGroupPseudo;
|
||||
@@ -46,7 +44,6 @@ cafeGroup_set gs;
|
||||
cafeConduit_set cs;
|
||||
|
||||
|
||||
|
||||
//5+ long long
|
||||
/**
|
||||
* \brief Set an array of handles with long long(s)
|
||||
|
||||
@@ -650,6 +650,27 @@ int CAFE::getCache(const unsigned int handle, PVDataHolder & pvd)
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
|
||||
//Reset any possible put error that preceded call to getCache
|
||||
if ( (*it_handle).getStatus() == ECAFE_NOWTACCESS ||
|
||||
(*it_handle).getStatus() == ECA_PUTFAIL ||
|
||||
(*it_handle).getStatus() == ECA_PUTCBINPROG) {
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
}; //lock
|
||||
//std::cout << "getStatus - before:" << (*it_handle).getStatus() << std::endl;
|
||||
handle_index.modify(it_handle, change_status(ICAFE_NORMAL));
|
||||
pvd.status = ICAFE_NORMAL;
|
||||
//std::cout << "getStatus - after:" << (*it_handle).getStatus() << std::endl;
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}; //unlock
|
||||
}
|
||||
|
||||
|
||||
|
||||
//meant for use in callbacks in monitors!
|
||||
if ( (*it_handle).getChannelGetCacheWaitPolicy().getWaitKind() == CAFENUM::GET_CACHE_NO_CHECK)
|
||||
{
|
||||
|
||||
@@ -25,8 +25,9 @@ using namespace std;
|
||||
/**
|
||||
* \brief Callback function for ca_create_channel.
|
||||
* Modifies Conduit object accordingly
|
||||
* Function is not invoked on closechannel by user
|
||||
* \param args returns connection handler parameters \n
|
||||
* i.e. args.chid, args.op{CA_OP_CONN_UP, CA_OP_CONN_DOWN}
|
||||
* i.e. args.chid, args.op{CA_OP_CONN_UP, CA_OP_CONN_DOWN}
|
||||
*/
|
||||
void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args args)
|
||||
{
|
||||
@@ -315,6 +316,8 @@ void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args a
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
//std::cout << "DISCONNECT - has pycafe " << (*it_handle).getPyCafe() << std::endl;
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
// monitors
|
||||
if ((*it_handle).getPyCafe() )
|
||||
@@ -339,7 +342,8 @@ void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args a
|
||||
//std::cout << __METHOD__ << __LINE__ << " (*it_handle).CyDataeventHandler(); at DISCCONNECT " << (*it_handle).pv << std::endl;
|
||||
//cout << "(*it_handle).PyEventHandler(); " << (*itmp).getMonitorID() << endl;
|
||||
//(*it_handle).PyEventHandler((*itmp).getMonitorID());
|
||||
(*it_handle).CyDataEventHandler();
|
||||
//(*it_handle).CyDataEventHandler();
|
||||
(*it_handle).CyMonitorHandler();
|
||||
}
|
||||
//Disconnect signal
|
||||
if ( (*it_handle).getPyOpenCallbackFlag() )
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include <methodCallbacks.h>
|
||||
#include <granules.h>
|
||||
|
||||
#define RETURN_ON_ERROR false
|
||||
|
||||
using namespace std;
|
||||
using namespace boost::posix_time;
|
||||
@@ -31,7 +32,7 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
//return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
@@ -80,7 +81,6 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
#if HAVE_ZEROMQ
|
||||
if (SF_WITH_PULSE_ID)
|
||||
{
|
||||
|
||||
cafeConduit_set::iterator itcs;
|
||||
unsigned long long pulseID=0;
|
||||
PVDataHolder pvd;
|
||||
@@ -136,6 +136,91 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "MonitorPolicy::PyCallbackHandlerMonitor"
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
it_handle = handle_index.find((unsigned int)_handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
}
|
||||
|
||||
handle_index.modify(it_handle, change_eventHandlerArgs (args));
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(monid);
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
|
||||
//Get time of last update as recorded in cache
|
||||
ptime timePrevious = mp.getLastUpdate(); //(*it_handle).getCallback_ptime();
|
||||
|
||||
//Compare times and if delta is greater than requested - fire event
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds();
|
||||
|
||||
//if ( (*it_handle).pv == "SIN-TIMAST-EVG0:TX-PULSEID " ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID// " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
if (timeElapsedMilliseconds < (updateDeltaMillioseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
mp.setLastUpdate(timeNow);
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
}
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//(*it_handle).PyEventHandler();
|
||||
//(*it_handle).CyEventHandler(); //pushes handle, pvname
|
||||
(*it_handle).CyMonitorHandler();
|
||||
#endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
return;
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
@@ -152,7 +237,7 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
// return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
@@ -181,7 +266,7 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
//For monitors args.usr is the id of the monitorpolicy class
|
||||
//std::cout << "usrArgs == " << args.usr << std::endl;
|
||||
//std::cout << "HAS PYTHON usrArgs == " << args.usr << std::endl;
|
||||
//Place timecheck here
|
||||
//Get present timestamp
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
@@ -190,7 +275,6 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
//std::cout << "monitorID " << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//mp.setNotifyDeltaMilliSeconds(1000);
|
||||
|
||||
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
|
||||
//Get time of last update as recorded in cache
|
||||
@@ -199,31 +283,31 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
//Compare times and if delta is greater than requested - fire event
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds(); //1000; //1Hz
|
||||
|
||||
double updateDeltaMilliseconds = mp.getNotifyDeltaMilliSeconds(); //1000; //1Hz
|
||||
|
||||
//if ( (*it_handle).pv == "SINSB03-DSCR110:ENERGY-OP" ) {
|
||||
|
||||
//if ( (*it_handle).pv == "S10BC01-DBPM050:Q1" ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
|
||||
if (timeElapsedMilliseconds < updateDeltaMillioseconds*0.998) {
|
||||
if (timeElapsedMilliseconds < (updateDeltaMilliseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
//update cache with timeNow
|
||||
// handle_index.modify(it_handle, change_callback_ptime(timeNow));
|
||||
mp.setLastUpdate(timeNow);
|
||||
if(MUTEX) { cafeMutex.lock();}
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
if(MUTEX) { cafeMutex.unlock();}
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
}
|
||||
|
||||
if (args.type < DBR_GR_STRING)
|
||||
{
|
||||
//(*it_handle).PyDataEventHandler();
|
||||
(*it_handle).CyDataEventHandler();
|
||||
//(*it_handle).PyDataEventHandler();
|
||||
//(*it_handle).CyDataEventHandler();
|
||||
(*it_handle).CyMonitorHandler();
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
}
|
||||
else if (args.type < DBR_PUT_ACKT)
|
||||
@@ -244,12 +328,14 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
/*
|
||||
void MonitorPolicy::PyCallbackHandlerHandle (struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "MonitorPolicy::PyCallbackHandlerMonitor"
|
||||
|
||||
@@ -284,7 +370,6 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
}
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(monid);
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
@@ -296,11 +381,13 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds();
|
||||
|
||||
|
||||
//if ( (*it_handle).pv == "SIN-TIMAST-EVG0:TX-PULSEID " ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID// " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
|
||||
|
||||
if (timeElapsedMilliseconds < updateDeltaMillioseconds*0.998) {
|
||||
if (timeElapsedMilliseconds < (updateDeltaMillioseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
@@ -309,7 +396,7 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
}
|
||||
|
||||
//(*it_handle).PyEventHandler();
|
||||
(*it_handle).CyEventHandler();
|
||||
(*it_handle).CyHandleHandler(); //pushes handle only
|
||||
#endif
|
||||
|
||||
}
|
||||
@@ -318,11 +405,8 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
*/
|
||||
|
||||
146
src/conduit.cpp
146
src/conduit.cpp
@@ -277,19 +277,29 @@ void * Conduit::PyConnectHandler() const
|
||||
|
||||
void * Conduit::PyGetHandler() const
|
||||
{
|
||||
//PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
//getPVDataHolder(pvd);
|
||||
//std::cout << "PyGetHandler" << pvd.getAsString(0) << std::endl;
|
||||
py_cb_handle_get_wrapper(handle);
|
||||
void * cythonCallback=channelRequestPolicyGet.getCyCallback();
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::PyGetHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
cy_cb_handle_get_wrapper(cythonCallback, handle);
|
||||
//py_cb_handle_get_wrapper(handle);
|
||||
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
void * Conduit::PyPutHandler() const
|
||||
{
|
||||
|
||||
void * cythonCallback=channelRequestPolicyPut.getCyCallback();
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::PyPutHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
py_cb_handle_put_wrapper(handle);
|
||||
cy_cb_handle_put_wrapper(cythonCallback, handle);
|
||||
//py_cb_handle_put_wrapper(handle);
|
||||
|
||||
return (void *) 0;
|
||||
}
|
||||
@@ -302,7 +312,8 @@ void * Conduit::PyPutHandler() const
|
||||
py_cb_handle_monid_wrapper(handle, (unsigned long) usrArgs);
|
||||
|
||||
return (void *) 0;
|
||||
}*/
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
/*void * Conduit::PyEventHandler(unsigned int monid) const
|
||||
@@ -312,7 +323,30 @@ void * Conduit::PyPutHandler() const
|
||||
py_cb_handle_monid_wrapper(handle, monid);
|
||||
|
||||
return (void *) 0;
|
||||
}*/
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
|
||||
void * Conduit::CyHandleHandler() const
|
||||
{
|
||||
void * cythonCallback = NULL;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
break;
|
||||
}
|
||||
}
|
||||
//std::cout << " cythonCallback " << cythonCallback << std:: endl;
|
||||
if (cythonCallback == NULL) {
|
||||
//std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::CyEventHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
cy_handle_handler_wrapper(cythonCallback, handle);
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void * Conduit::CyEventHandler() const
|
||||
@@ -335,6 +369,41 @@ void * Conduit::CyEventHandler() const
|
||||
}
|
||||
|
||||
|
||||
void * Conduit::CyDataEventHandler() const
|
||||
{
|
||||
|
||||
//std::cout << " void * Conduit::CyDataEventHandler() " << std::endl;
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
void * cythonCallback = NULL;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
//std::cout << i << " " << mpV[i].getCyCallback()
|
||||
// << " " << mpV[i].getID() << " " << pv << " " << handle
|
||||
// << std::endl;
|
||||
//std::cout << "user args " << (unsigned long) usrArgs << std::endl;
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
getPVDataHolder(pvd);
|
||||
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
//std::cout << " CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
/*void * Conduit::PyDataEventHandler() const
|
||||
{
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
@@ -344,38 +413,64 @@ void * Conduit::CyEventHandler() const
|
||||
return (void *) 0;
|
||||
}*/
|
||||
|
||||
void * Conduit::CyDataEventHandler() const
|
||||
void * Conduit::CyMonitorHandler() const
|
||||
{
|
||||
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
#define __METHOD__ "Conduit::CyMonitorHandler( "
|
||||
|
||||
void * cythonCallback = NULL;
|
||||
unsigned int ncbparameters = 1;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
//std::cout << i << " " << mpV[i].getCyCallback()
|
||||
// << " " << mpV[i].getID()
|
||||
// << std::endl;
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
ncbparameters = mpV[i].getNoCyCallbackParameters();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (cythonCallback == NULL) {
|
||||
//std::cout << " NO CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND " << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
getPVDataHolder(pvd);
|
||||
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
//std::cout << " CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
//ptime timeStart(microsec_clock::local_time());
|
||||
//double timeElapsed=0;
|
||||
|
||||
if (ncbparameters == 0) {
|
||||
cy_monitor_handler_wrapper(cythonCallback);
|
||||
}
|
||||
|
||||
else if (ncbparameters == 1) {
|
||||
cy_handle_handler_wrapper(cythonCallback, handle);
|
||||
}
|
||||
else if (ncbparameters == 2) {
|
||||
cy_event_handler_wrapper(cythonCallback, handle, pv);
|
||||
}
|
||||
else if (ncbparameters == 3) {
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
getPVDataHolder(pvd);
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
}
|
||||
else {
|
||||
std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
std::cout << " Wrong no. cb parameters " << ncbparameters << std::endl;
|
||||
std::cout << " Allowed are 1 (handle) 2 (+pv) 3 (+pvdata) " << std::endl;
|
||||
}
|
||||
|
||||
//ptime timeEnd(microsec_clock::local_time());
|
||||
//time_duration duration(timeEnd-timeStart);
|
||||
//timeElapsed= (double) duration.total_microseconds()/1000000.0;
|
||||
//std::cout << "timeElapsed " << timeElapsed << std::endl;
|
||||
|
||||
return (void *) 0;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*void * Conduit::PyCtrlEventHandler() const
|
||||
{
|
||||
|
||||
@@ -1163,7 +1258,8 @@ int Conduit::monitorStart(MonitorPolicy &mp) const
|
||||
}
|
||||
|
||||
evid eventID;
|
||||
int status = ca_create_subscription(mp.getDbrDataType(), mp.getNelem(), channelRegalia.channelID, mp.getMask(),
|
||||
int status = ca_create_subscription(mp.getDbrDataType(), mp.getNelem(),
|
||||
channelRegalia.channelID, mp.getMask(),
|
||||
mp.getHandler(), (void *) mp.getUserArgs(), &eventID);
|
||||
|
||||
mp.setEventID(eventID);
|
||||
|
||||
104
src/connect.cpp
104
src/connect.cpp
@@ -5,6 +5,8 @@
|
||||
/// \version CAFE 1.6.0
|
||||
///
|
||||
|
||||
#include <epicsMutex.h>
|
||||
|
||||
#include <connect.h>
|
||||
#include <conduitFriends.h>
|
||||
#include <conduitConnectionHandlerArgs.h>
|
||||
@@ -24,7 +26,9 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
using namespace std;
|
||||
epicsMutex cafeMutex;
|
||||
|
||||
/**
|
||||
* \brief Return epics Version as an unsigned short \n
|
||||
@@ -61,7 +65,8 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
|
||||
cafeConduit_set_by_handle & handle_index= cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
int _status = ICAFE_NORMAL;
|
||||
|
||||
it_handle =handle_index.find(handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
@@ -73,7 +78,7 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
//
|
||||
Moved to create Handle
|
||||
*/
|
||||
status = ca_create_channel(pv, channelCreatePolicy.getHandler(), (void *) (unsigned long) handle,
|
||||
_status = ca_create_channel(pv, channelCreatePolicy.getHandler(), (void *) (unsigned long) handle,
|
||||
channelCreatePolicy.getPriority(), &pCh);
|
||||
|
||||
if (pCh!=NULL)
|
||||
@@ -119,25 +124,25 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
ca_replace_access_rights_event(pCh, callbackHandlerAccessRights);
|
||||
}
|
||||
|
||||
if (status != ECA_NORMAL)
|
||||
if (_status != ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << ":" << __LINE__ << endl;
|
||||
cout << __METHOD__ << " ca_create_channel failed: " << endl;
|
||||
if (status == ECA_EVDISALLOW)
|
||||
if (_status == ECA_EVDISALLOW)
|
||||
{
|
||||
cout << " due to inappropriate function " << endl;
|
||||
}
|
||||
cafeStatus.report(status);
|
||||
cafeStatus.report(_status);
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock(); //lock
|
||||
}
|
||||
handle_index.modify(it_handle, change_status (status) );
|
||||
handle_index.modify(it_handle, change_status (_status) );
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock(); //unlock
|
||||
}
|
||||
return (int) status;
|
||||
return (int) _status;
|
||||
}
|
||||
|
||||
//To Flush Send Buffer or not? Examine channelOpenPolicy.
|
||||
@@ -218,7 +223,8 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
{
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return (int) status;
|
||||
|
||||
return (int) _status;
|
||||
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -238,6 +244,7 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
|
||||
chid pCh = NULL;
|
||||
std::pair<cafeConduit_set::iterator, bool> p;
|
||||
int _status = ICAFE_NORMAL;
|
||||
|
||||
// CAFEConduit object initialized and placed into hash map
|
||||
|
||||
@@ -346,8 +353,9 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
#endif
|
||||
|
||||
// Normal return is ECA_TIMEOUT if pend_io/pend_event is instigated!!
|
||||
status=createChannel(handle, pv, pCh);
|
||||
_status=createChannel(handle, pv, pCh);
|
||||
|
||||
|
||||
// Channel Access will spit out an Invalid String Error if pv not a string!
|
||||
// Possible Errors from ca_create_channel: ECA_NORMAL, ECA_BADTYPE, ECA_STRTOBIG, ECA_ALLOCMEM
|
||||
// Possible Error from ca_pend_event: ECA_EVDISALLOW
|
||||
@@ -355,27 +363,28 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
|
||||
// IF FAILED THROW EXCEPTION
|
||||
|
||||
if (status == ECA_BADSTR)
|
||||
if (_status == ECA_BADSTR)
|
||||
{
|
||||
//Cannot Connect::close(handle) in this event else segmentation fault
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv("empty", "empty", (*(p.first)).getHandle(), pCh, status,
|
||||
__METHOD__, __LINE__);
|
||||
e = exceptionsHelper.prepareCAFEException_pv("empty", "empty", (*(p.first)).getHandle(),
|
||||
pCh, _status, __METHOD__, __LINE__);
|
||||
throw (e);
|
||||
return status;
|
||||
return _status;
|
||||
}
|
||||
else if (status != ECA_NORMAL && status != ECA_TIMEOUT)
|
||||
else if (_status != ECA_NORMAL && _status != ECA_TIMEOUT)
|
||||
{
|
||||
//Connect::close(handle);
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv((*(p.first)).pv.c_str(), (*(p.first)).pvAlias.c_str(),
|
||||
(*(p.first)).getHandle(), pCh, status,
|
||||
(*(p.first)).getHandle(), pCh, _status,
|
||||
__METHOD__, __LINE__);
|
||||
throw (e);
|
||||
return status;
|
||||
return _status;
|
||||
}
|
||||
else if (pCh == NULL)
|
||||
{
|
||||
|
||||
//Connect::close(handle); Close channel in createHandle
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv( (*(p.first)).pv.c_str(), (*(p.first)).pvAlias.c_str(),
|
||||
@@ -387,7 +396,7 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
return ECAFE_NULLCHID;
|
||||
}
|
||||
|
||||
return status;
|
||||
return _status;
|
||||
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -407,6 +416,8 @@ int Connect::init() //throw (CAFEException_init)
|
||||
{
|
||||
#define __METHOD__ "Connect::init()"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
try
|
||||
{
|
||||
status=init(ca_enable_preemptive_callback);
|
||||
@@ -441,8 +452,8 @@ int Connect::init() //throw (CAFEException_init)
|
||||
int Connect::init(ca_preemptive_callback_select select) //throw (CAFEException_init)
|
||||
{
|
||||
#define __METHOD__ "Connect::init(ca_preemptive_callback_select)"
|
||||
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
#if HAVE_PYCAFE_EXT
|
||||
int pyStatus = PyImport_AppendInittab("PyCafe", PyInit_PyCafe); //Python 3
|
||||
@@ -456,7 +467,8 @@ int Connect::init(ca_preemptive_callback_select select) //throw (CAFEException_
|
||||
std::cout << "PyCafe import failed!!" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
PyInit_PyCafe();
|
||||
PyInit_PyCafe;
|
||||
//PyInit_PyCafe_sf();
|
||||
//Py_Finalize();
|
||||
//Python 2
|
||||
//Py_Initialize();
|
||||
@@ -516,6 +528,8 @@ bool Connect::initCallbackComplete(unsigned int * hArray, unsigned int nHandles)
|
||||
{
|
||||
#define __METHOD__ "Connect:initCallbackComplete(unsigned int * hArray, unsigned int nHandle) "
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
ChannelRequestStatus cre, crc, crs, crn;
|
||||
for (unsigned int i=0; i < nHandles; ++i)
|
||||
{
|
||||
@@ -573,7 +587,7 @@ int Connect::open(const char ** pvArray, unsigned int * handleArray, const unsig
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char **, unsigned int *, const unsigned int)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
bool flushAtEndFlag=false;
|
||||
|
||||
if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
|
||||
@@ -630,7 +644,7 @@ int Connect::open(const std::string *pvArrayS, unsigned int *handleArray, const
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const std::string *, unsigned int *, unsigned int)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
bool flushAtEndFlag=false;
|
||||
if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
|
||||
{
|
||||
@@ -687,7 +701,7 @@ int Connect::open(std::vector<std::string> pvV, std::vector<unsigned int> &hand
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(vector<string>, vector<unsigned int> &)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
unsigned int _h=0;
|
||||
bool flushAtEndFlag=false;
|
||||
handleV.clear();
|
||||
@@ -746,7 +760,7 @@ int Connect::open(std::vector<const char *> pvV, std::vector<unsigned int> &hand
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(vector<char *>, vector<unsigned int> &)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
unsigned int _h=0;
|
||||
bool flushAtEndFlag=false;
|
||||
handleV.clear();
|
||||
@@ -806,7 +820,7 @@ int Connect::open(const char * _pv, const char * _pvAlias, unsigned int & handl
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char * pv, const char * _pvAlias, unsigned int & _handle)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
try
|
||||
{
|
||||
status = open (_pv, handle);
|
||||
@@ -850,14 +864,13 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char * _pv, unsigned int &handle)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
char pv[PVNAME_SIZE];
|
||||
helper.removeLeadingAndTrailingSpaces(_pv, pv);
|
||||
|
||||
// Determine ca-client context
|
||||
ca_client_context * ccc = ca_current_context();
|
||||
|
||||
|
||||
if (ccc == NULL)
|
||||
{
|
||||
try
|
||||
@@ -885,7 +898,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
// Handles for pvs that are members of a group are treated separately!
|
||||
|
||||
handle = handleHelper.getHandleFromPV(pv,ccc);
|
||||
|
||||
|
||||
if (handle != 0)
|
||||
{
|
||||
return ICAFE_NORMAL;
|
||||
@@ -899,7 +912,8 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
}
|
||||
catch (CAFEException_pv & e)
|
||||
{
|
||||
|
||||
std::cout << __METHOD__ << " EXCEPTION " << std::endl;
|
||||
|
||||
if (e.statusCode != ECA_BADSTR)
|
||||
{
|
||||
//ca_flush_io(); // Better Flush or not. Seems that there is not a need.
|
||||
@@ -916,7 +930,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
|
||||
std::string ewhat ="CAFEException_open," + std::string(e.pv) + "," + std::to_string(e.handle) + "," \
|
||||
+ std::to_string(e.statusCode) + "," + e.statusCodeText + "," + e.statusMessage;
|
||||
|
||||
|
||||
CAFEException_open badpv(ewhat);
|
||||
badpv.pvEx=e;
|
||||
|
||||
@@ -940,7 +954,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
int Connect::setPVAlias(unsigned int handle, const char * _pvAlias) //throw(CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::setPVAlias(unsigned int * _handle, const char * _pv)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
Helper helper;
|
||||
char pvAlias[PVNAME_SIZE];
|
||||
helper.removeLeadingAndTrailingSpaces(_pvAlias, pvAlias);
|
||||
@@ -1033,7 +1047,7 @@ int Connect::setPVAlias(unsigned int handle, const char * _pvAlias) //throw(CAFE
|
||||
int Connect::closeChannels(unsigned int * handleArray, unsigned int nHandles)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeChannels(unsigned int * handleArray, unsigned int nHandles)"
|
||||
|
||||
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
if (cctLocal == NULL )
|
||||
{
|
||||
@@ -1137,7 +1151,7 @@ int Connect::close(unsigned int handle)
|
||||
// We do not know if this channel belongs to this context!
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
status=ICAFE_NORMAL;
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -1271,7 +1285,7 @@ int Connect::closeChannels(ca_client_context * cctLocal)
|
||||
{
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ICAFE_NORMAL;
|
||||
bool isClearChannel=false;
|
||||
|
||||
@@ -1361,7 +1375,7 @@ int Connect::closeChannels(ca_client_context * cctLocal)
|
||||
int Connect::closeHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeHandle(unsigned int handle)"
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
//We can close handle irrespective of ca_current_context!
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
status=ICAFE_NORMAL;
|
||||
@@ -1574,7 +1588,7 @@ int Connect::closeHandles(unsigned int * handleArray, unsigned int nHandles)
|
||||
int Connect::closeHandles()
|
||||
{
|
||||
#define __METHOD__ "Connect::closeHandles()"
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ECA_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
bool isCS =false;
|
||||
@@ -1649,7 +1663,7 @@ int Connect::closeChannelKeepHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeChannelKeepHandle(unsigned int handle)"
|
||||
|
||||
status=ICAFE_NORMAL;
|
||||
int status=ICAFE_NORMAL;
|
||||
//We can close handle irrespective of ca_current_context!
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
ChannelRegalia channelRegalia;
|
||||
@@ -2437,7 +2451,7 @@ int Connect::monitorStart(unsigned int handle, MonitorPolicy &mp)
|
||||
{
|
||||
#define __METHOD__ "monitorStart(unsigned int handle, MonitorPolicy &mp)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -2602,7 +2616,7 @@ int Connect::monitorStart(unsigned int handle, unsigned int & monitorID)
|
||||
{
|
||||
#define __METHOD__ "monitorStart(unsigned int handle, unsigned int & monitorID)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
evid eventID = NULL;
|
||||
monitorID = (unsigned int) 0;
|
||||
|
||||
@@ -2711,7 +2725,7 @@ int Connect::monitorPulseID()
|
||||
throw(e);
|
||||
}
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
MonitorPolicy mp;
|
||||
|
||||
mp.setUserArgs((void *) (long long) (hPulseID));
|
||||
@@ -2738,7 +2752,7 @@ int Connect::monitorStopPulseID()
|
||||
#define __METHOD__ "monitorStopPulseID()"
|
||||
|
||||
std::string pulseID=SF_PULSE_ID_PV;
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
status = monitorStop(handleHelper.getHandleFromPV(pulseID.c_str()));
|
||||
return status;
|
||||
|
||||
@@ -2755,7 +2769,7 @@ int Connect::monitorStop()
|
||||
#define __METHOD__ "monitorStop()"
|
||||
|
||||
int statusGroup = ECA_NORMAL;
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
|
||||
if (ca_current_context() != NULL)
|
||||
@@ -2804,7 +2818,7 @@ int Connect::monitorStop(ca_client_context * cctLocal)
|
||||
{
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ECA_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
|
||||
@@ -2913,7 +2927,7 @@ int Connect::monitorStop(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "monitorStop(unsigned int _handle)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -3035,7 +3049,7 @@ int Connect::monitorStop (unsigned int handle, unsigned int monitorID)
|
||||
{
|
||||
#define __METHOD__ "monitorStop(unsigned int handle, unsigned int monitorID)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
@@ -8,9 +8,9 @@
|
||||
#include <connect.h>
|
||||
#include <conduitFriends.h>
|
||||
|
||||
extern cafeConduit_set cs;
|
||||
extern bool MUTEX;
|
||||
extern epicsMutex cafeMutex;
|
||||
//extern cafeConduit_set cs;
|
||||
//extern bool MUTEX;
|
||||
//extern epicsMutex cafeMutex;
|
||||
|
||||
/**
|
||||
* Callback function for callbackHandlerAccessRights \n
|
||||
|
||||
@@ -1077,6 +1077,8 @@ int HandleHelper::getUnits(unsigned int _handle, std::string & units)
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
units = (*it_handle).getUnits();
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
//cout << "units" << units << endl;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1657,6 +1659,123 @@ const char * HandleHelper::getPVAlias(unsigned int handle, ca_client_context * c
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
cafeConduit_set_by_handle::iterator HandleHelper::getIterFromHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::getIterFromHandle(unsigned int handle)"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
//std::cout << __METHOD__ << " pv " << (*it_handle).getPV() << " // " << (*it_handle).handle << std::endl;
|
||||
return it_handle;
|
||||
}
|
||||
else {return it_handle;}
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & HandleHelper::getcsHandleIndex()
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::getcsHandleIndex()"
|
||||
|
||||
return cs.get<by_handle>();
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyHandleIndexStatus(unsigned int handle, long status)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyHandleIndexStatus()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle, change_status(status));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelTimeoutPolicyGet(unsigned int handle,
|
||||
ChannelTimeoutPolicy channelTimeoutPolicyGet)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelTimeoutPolicyGet()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelTimeoutPolicyGet(channelTimeoutPolicyGet));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelRequestStatusGet(unsigned int handle,
|
||||
ChannelRequestStatus channelRequestStatusGet)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelRequestStatusGet()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelRequestStatusGet(channelRequestStatusGet));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelRequestMetaDataClient(unsigned int handle,
|
||||
ChannelRequestMetaDataClient channelRequestMetaDataClient)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelRequestMetaDataClient()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelRequestMetaDataClient(channelRequestMetaDataClient));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Retrieves the process variable from a given handle
|
||||
@@ -1689,9 +1808,14 @@ const char * HandleHelper::getPVFromHandle(unsigned int handle, ca_client_contex
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
|
||||
//std::cout << __METHOD__ << "handle_index ==> " << &handle_index << std::endl;
|
||||
//std::cout << __METHOD__ << "handle_index ==> " << &handle_index << std::endl;
|
||||
//std::cout << __METHOD__ << "cs " << &cs << std::endl;
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
//std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
//std::cout << "Client context: " << ccc << std::endl;
|
||||
return (*it_handle).getPV();
|
||||
}
|
||||
else
|
||||
@@ -1706,9 +1830,9 @@ const char * HandleHelper::getPVFromHandle(unsigned int handle, ca_client_contex
|
||||
|
||||
if ( (*itcs).getHandle()==handle && (*itcs).getClientContext() == ccc)
|
||||
{
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//cout << " INFORMATION to author: MATCHed Handle= " << handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
//cout << " by looping through tcs::iterator, while the by_handle::iterator was NOT found! " << endl;
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " INFORMATION to author: MATCHed Handle= " << handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
cout << " by looping through tcs::iterator, while the by_handle::iterator was NOT found! " << endl;
|
||||
return (*itcs).getPV();
|
||||
}
|
||||
}
|
||||
@@ -2253,10 +2377,11 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
|
||||
//Only these have alarm/severity
|
||||
std::vector<std::string>alarmSeverityRecordTypes;
|
||||
alarmSeverityRecordTypes.reserve(10);
|
||||
alarmSeverityRecordTypes.reserve(12);
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "ai"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "ao"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "calc"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "calcout"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "dfanout"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "longin"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "longout"));
|
||||
@@ -2266,6 +2391,8 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "steppermotor"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "sub"));
|
||||
|
||||
//else use RTYP to get true type
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "Not Supported by Gateway"));
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
@@ -2320,8 +2447,8 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
|
||||
|
||||
// if never connected getStatus is 600 ICAFE_CS_NEVER_CONN
|
||||
// std::cout << (*it_handle).getPV() << " is Connected " << (*it_handle).isConnected() << std::endl;
|
||||
// std::cout << "getStatus " << (*it_handle).getStatus() << std::endl;
|
||||
//std::cout << (*it_handle).getPV() << " is Connected " << (*it_handle).isConnected() << std::endl;
|
||||
//std::cout << "getStatus " << (*it_handle).getStatus() << std::endl;
|
||||
|
||||
// Check if handle has already been supplemented
|
||||
if ((*it_handle).hasAlarmSeverityStruct())
|
||||
@@ -2336,6 +2463,7 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
return false;
|
||||
}
|
||||
|
||||
//std::cout << "------ " << std::endl;
|
||||
|
||||
PVCtrlHolder _pvc;
|
||||
|
||||
@@ -2357,8 +2485,7 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
}
|
||||
|
||||
// if Never connected getStatus is 600 ICAFE_CS_NEVER_CONN
|
||||
// std::cout << "status from getPVCtrlHolder // " << _stat << std::endl;
|
||||
// std::cout << "status from getPVCtrlHolder // " << _pvc.getStatus() << std::endl;
|
||||
|
||||
//_pvc.print();
|
||||
|
||||
//return to previous
|
||||
@@ -2368,8 +2495,6 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (_stat==ICAFE_NORMAL)
|
||||
{
|
||||
//Special test for ENUM value - should never reach here as is mbbi/o record
|
||||
@@ -2379,32 +2504,34 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
//}
|
||||
//enums can have alarms states!!!
|
||||
|
||||
|
||||
if (!((boost::math::isnan)(_pvc.getLowerAlarmLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getLowerAlarmLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getLowerWarningLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getLowerWarningLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getLowerWarningLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getUpperWarningLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getUpperWarningLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getUpperWarningLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getUpperAlarmLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getUpperAlarmLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getUpperAlarmLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
else
|
||||
@@ -2491,7 +2618,6 @@ int HandleHelper::getAlarmStatusSeverityAsString(unsigned int _handle, std::stri
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Rerieves vector of handles for given vector of PVs
|
||||
* \param pvV input: vector of PVS
|
||||
@@ -3891,7 +4017,35 @@ int HandleHelper::getMonitorHandlesAndActions(std::vector<unsigned int> & handle
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::updateMonitorPolicyDeltaMS(unsigned int _handle, unsigned int _monid,
|
||||
unsigned short _deltaMS)
|
||||
{
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(_monid);
|
||||
mp.setNotifyDeltaMilliSeconds(_deltaMS);
|
||||
if(MUTEX) { cafeMutex.lock();}
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
if(MUTEX) { cafeMutex.unlock();}
|
||||
}
|
||||
else
|
||||
{
|
||||
status=ECAFE_INVALID_HANDLE;
|
||||
if (printErrorPolicy.getInvalidHandle())
|
||||
{
|
||||
cafeStatus.report(status);
|
||||
cout << "Handle=" << _handle << " either never existed or no longer exists " << endl;
|
||||
}
|
||||
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Gets vector of MonitorIDs in waiting (value=0), i.e., waiting for channel connection
|
||||
|
||||
410
src/makefile
410
src/makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# src/makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -34,17 +78,13 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = x86_64-unknown-linux-gnu
|
||||
host_triplet = x86_64-unknown-linux-gnu
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#am__append_1 = zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
am__append_1 = PyCafe.cpp
|
||||
#am__append_2 = zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
# bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
#am__append_2 = pycafe/PyCafe_sf.cpp
|
||||
am__append_3 = pycafe/PyCafe.cpp
|
||||
subdir = src
|
||||
DIST_COMMON = $(srcdir)/makefile.am $(srcdir)/makefile.in
|
||||
DIST_COMMON = $(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(top_srcdir)/./depcomp
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -77,6 +117,12 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(libdir)"
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||
libcafe_la_LIBADD =
|
||||
@@ -87,19 +133,16 @@ am__libcafe_la_SOURCES_DIST = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
handleHelper.cpp loadCollectionXMLParser.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp \
|
||||
policyHelper.cpp conduitGroup.cpp connectGroup.cpp \
|
||||
transpose.cpp restorePVGroupXMLParser.cpp zbsCafeService.cpp \
|
||||
zbsDataHolders.cpp bitshuffle/bitshuffle_core.c \
|
||||
bitshuffle/bitshuffle.c bitshuffle/iochain.c \
|
||||
pycafe/PyCafe_sf.cpp pycafe/PyCafe.cpp
|
||||
transpose.cpp restorePVGroupXMLParser.cpp PyCafe.cpp \
|
||||
zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c \
|
||||
bitshuffle/iochain.c
|
||||
am__objects_1 = PyCafe.lo
|
||||
am__dirstamp = $(am__leading_dot)dirstamp
|
||||
#am__objects_1 = zbsCafeService.lo zbsDataHolders.lo \
|
||||
#am__objects_2 = zbsCafeService.lo zbsDataHolders.lo \
|
||||
# bitshuffle/bitshuffle_core.lo \
|
||||
# bitshuffle/bitshuffle.lo \
|
||||
# bitshuffle/iochain.lo
|
||||
#am__objects_2 = \
|
||||
# pycafe/PyCafe_sf.lo
|
||||
am__objects_3 = \
|
||||
pycafe/PyCafe.lo
|
||||
am_libcafe_la_OBJECTS = cafe.lo cafeCache.lo cafeGroup.lo \
|
||||
cafeVectors.lo cafeXML.lo callbackHandlerCreate.lo \
|
||||
callbackHandlerMonitor.lo conduit.lo connect.lo \
|
||||
@@ -107,54 +150,118 @@ am_libcafe_la_OBJECTS = cafe.lo cafeCache.lo cafeGroup.lo \
|
||||
handleHelper.lo loadCollectionXMLParser.lo \
|
||||
loadGroupXMLParser.lo methodCallbacks.lo helper.lo \
|
||||
policyHelper.lo conduitGroup.lo connectGroup.lo transpose.lo \
|
||||
restorePVGroupXMLParser.lo $(am__objects_1) $(am__objects_2) \
|
||||
$(am__objects_3)
|
||||
restorePVGroupXMLParser.lo $(am__objects_1) $(am__objects_2)
|
||||
libcafe_la_OBJECTS = $(am_libcafe_la_OBJECTS)
|
||||
libcafe_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
AM_V_lt = $(am__v_lt_$(V))
|
||||
am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_lt_0 = --silent
|
||||
am__v_lt_1 =
|
||||
libcafe_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(libcafe_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
DEFAULT_INCLUDES = -I. -I$(top_builddir)/./include
|
||||
depcomp = $(SHELL) $(top_srcdir)/./depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_$(V))
|
||||
am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
am__v_CC_1 =
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CCLD = $(am__v_CCLD_$(V))
|
||||
am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||
am__v_CCLD_1 =
|
||||
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
AM_V_CXX = $(am__v_CXX_$(V))
|
||||
am__v_CXX_ = $(am__v_CXX_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CXX_0 = @echo " CXX " $@;
|
||||
am__v_CXX_1 =
|
||||
CXXLD = $(CXX)
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CXXLD = $(am__v_CXXLD_$(V))
|
||||
am__v_CXXLD_ = $(am__v_CXXLD_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CXXLD_0 = @echo " CXXLD " $@;
|
||||
am__v_CXXLD_1 =
|
||||
SOURCES = $(libcafe_la_SOURCES)
|
||||
DIST_SOURCES = $(am__libcafe_la_SOURCES_DIST)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml -I$(top_srcdir)/include
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#else
|
||||
#if HAVE_PYTHON_
|
||||
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
#endif
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml -I$(top_srcdir)/include
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/7.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/7.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base-7.0.6/include/ -I/usr/local/epics/base-7.0.6/include/os/Linux -I/usr/local/epics/base-7.0.6/include/compiler/gcc -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/opt/gfa/python-3.5/latest/include/python3.5m -I/opt/gfa/python-3.5/latest/lib/python3.5/site-packages/numpy/core/include -I/opt/gfa/python-3.5/latest/include -I/opt/gfa/python-3.5/latest/include/QtCore -I/opt/gfa/python-3.5/latest/include/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
@@ -168,27 +275,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
LDFLAGS = -L/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.6/lib/RHEL7-x86_64 -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib -L/opt/gfa/python-3.5/latest/lib -Wl,-rpath,/opt/gfa/python-3.5/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS = -lQt5Xml -lpython3.7m
|
||||
LIBS = -lQtXml -lQtCore -lpython3.5m
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -198,16 +305,17 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.13.0
|
||||
PACKAGE_STRING = CAFE 1.15.0
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.15.0
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.13.0
|
||||
VERSION = 1.15.0
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/src
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/src
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
@@ -219,8 +327,8 @@ ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -242,15 +350,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.13.0/lib/SL6-x86_64
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.13.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.15.0-py35-gcc-7.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -270,7 +378,7 @@ lib_LTLIBRARIES = libcafe.la
|
||||
#2nd: age
|
||||
#3rd: revision
|
||||
#1.9.1 1.10.2 1.11.0 1.11.1 1.12.0 1.12.1 1.12.2 1.12.4
|
||||
libcafe_la_LDFLAGS = -version-info 14:0:13
|
||||
libcafe_la_LDFLAGS = -version-info 16:0:15
|
||||
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
cafeVectors.cpp cafeXML.cpp callbackHandlerCreate.cpp \
|
||||
callbackHandlerMonitor.cpp conduit.cpp connect.cpp \
|
||||
@@ -279,7 +387,7 @@ libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp \
|
||||
policyHelper.cpp conduitGroup.cpp connectGroup.cpp \
|
||||
transpose.cpp restorePVGroupXMLParser.cpp $(am__append_1) \
|
||||
$(am__append_2) $(am__append_3)
|
||||
$(am__append_2)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
@@ -314,9 +422,9 @@ $(top_srcdir)/configure: $(am__configure_deps)
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
||||
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
|
||||
list2=; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
@@ -324,6 +432,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
else :; fi; \
|
||||
done; \
|
||||
test -z "$$list2" || { \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
|
||||
}
|
||||
@@ -339,12 +449,14 @@ uninstall-libLTLIBRARIES:
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
@list='$(lib_LTLIBRARIES)'; \
|
||||
locs=`for p in $$list; do echo $$p; done | \
|
||||
sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
|
||||
sort -u`; \
|
||||
test -z "$$locs" || { \
|
||||
echo rm -f $${locs}; \
|
||||
rm -f $${locs}; \
|
||||
}
|
||||
bitshuffle/$(am__dirstamp):
|
||||
@$(MKDIR_P) bitshuffle
|
||||
@: > bitshuffle/$(am__dirstamp)
|
||||
@@ -357,35 +469,19 @@ bitshuffle/bitshuffle.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
bitshuffle/iochain.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/$(am__dirstamp):
|
||||
@$(MKDIR_P) pycafe
|
||||
@: > pycafe/$(am__dirstamp)
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) pycafe/$(DEPDIR)
|
||||
@: > pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/PyCafe_sf.lo: pycafe/$(am__dirstamp) \
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/PyCafe.lo: pycafe/$(am__dirstamp) \
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
libcafe.la: $(libcafe_la_OBJECTS) $(libcafe_la_DEPENDENCIES)
|
||||
$(libcafe_la_LINK) -rpath $(libdir) $(libcafe_la_OBJECTS) $(libcafe_la_LIBADD) $(LIBS)
|
||||
|
||||
libcafe.la: $(libcafe_la_OBJECTS) $(libcafe_la_DEPENDENCIES) $(EXTRA_libcafe_la_DEPENDENCIES)
|
||||
$(AM_V_CXXLD)$(libcafe_la_LINK) -rpath $(libdir) $(libcafe_la_OBJECTS) $(libcafe_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
-rm -f bitshuffle/bitshuffle.$(OBJEXT)
|
||||
-rm -f bitshuffle/bitshuffle.lo
|
||||
-rm -f bitshuffle/bitshuffle_core.$(OBJEXT)
|
||||
-rm -f bitshuffle/bitshuffle_core.lo
|
||||
-rm -f bitshuffle/iochain.$(OBJEXT)
|
||||
-rm -f bitshuffle/iochain.lo
|
||||
-rm -f pycafe/PyCafe.$(OBJEXT)
|
||||
-rm -f pycafe/PyCafe.lo
|
||||
-rm -f pycafe/PyCafe_sf.$(OBJEXT)
|
||||
-rm -f pycafe/PyCafe_sf.lo
|
||||
-rm -f bitshuffle/*.$(OBJEXT)
|
||||
-rm -f bitshuffle/*.lo
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
include ./$(DEPDIR)/PyCafe.Plo
|
||||
include ./$(DEPDIR)/cafe.Plo
|
||||
include ./$(DEPDIR)/cafeCache.Plo
|
||||
include ./$(DEPDIR)/cafeGroup.Plo
|
||||
@@ -413,56 +509,54 @@ include ./$(DEPDIR)/zbsDataHolders.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle_core.Plo
|
||||
include bitshuffle/$(DEPDIR)/iochain.Plo
|
||||
include pycafe/$(DEPDIR)/PyCafe.Plo
|
||||
include pycafe/$(DEPDIR)/PyCafe_sf.Plo
|
||||
|
||||
.c.o:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c -o $@ $<
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Plo
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LTCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CC_no)$(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.o:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CXX_no)$(CXXCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.obj:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
# $(AM_V_CXX_no)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.cpp.lo:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Plo
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(LTCXXCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CXX_no)$(LTCXXCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
@@ -470,28 +564,16 @@ mostlyclean-libtool:
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
-rm -rf bitshuffle/.libs bitshuffle/_libs
|
||||
-rm -rf pycafe/.libs pycafe/_libs
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -503,15 +585,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -520,6 +598,21 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-am
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
@@ -571,10 +664,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -584,8 +682,6 @@ distclean-generic:
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
-rm -f bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f bitshuffle/$(am__dirstamp)
|
||||
-rm -f pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f pycafe/$(am__dirstamp)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@@ -596,7 +692,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR) pycafe/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
@@ -642,7 +738,7 @@ install-ps-am:
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR) pycafe/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
@@ -663,19 +759,19 @@ uninstall-am: uninstall-libLTLIBRARIES
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am \
|
||||
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
|
||||
ctags-am distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-libLTLIBRARIES
|
||||
tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -12,30 +12,31 @@ lib_LTLIBRARIES = libcafe.la
|
||||
#2nd: age
|
||||
#3rd: revision
|
||||
#1.9.1 1.10.2 1.11.0 1.11.1 1.12.0 1.12.1 1.12.2 1.12.4
|
||||
libcafe_la_LDFLAGS = -version-info 14:0:13
|
||||
libcafe_la_LDFLAGS = -version-info 16:0:15
|
||||
|
||||
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp cafeVectors.cpp cafeXML.cpp \
|
||||
callbackHandlerCreate.cpp callbackHandlerMonitor.cpp conduit.cpp connect.cpp connectCallbacks.cpp \
|
||||
exceptionsHelper.cpp granules.cpp handleHelper.cpp loadCollectionXMLParser.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp policyHelper.cpp \
|
||||
conduitGroup.cpp connectGroup.cpp transpose.cpp restorePVGroupXMLParser.cpp
|
||||
conduitGroup.cpp connectGroup.cpp transpose.cpp restorePVGroupXMLParser.cpp
|
||||
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
if HAVE_PYCAFE_EXT_
|
||||
libcafe_la_SOURCES += PyCafe.cpp
|
||||
endif
|
||||
|
||||
if HAVE_ZEROMQ_
|
||||
libcafe_la_SOURCES += zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
if HAVE_PYCAFE_EXT_
|
||||
libcafe_la_SOURCES += pycafe/PyCafe_sf.cpp
|
||||
endif
|
||||
else
|
||||
if HAVE_PYTHON_
|
||||
libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
endif
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#else
|
||||
#if HAVE_PYTHON_
|
||||
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
#endif
|
||||
|
||||
endif
|
||||
|
||||
AM_CPPFLAGS = @AM_CPPFLAGS@ @CAFE_CPPFLAGS@
|
||||
|
||||
@@ -17,6 +17,7 @@ using namespace std;
|
||||
//#include <PyCafe_api.h>
|
||||
//#endif
|
||||
|
||||
#define RETURN_ON_ERROR true
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
@@ -32,7 +33,7 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,26 +48,13 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)cafeMutex.lock();
|
||||
|
||||
//Change Channel Policy to NO_WAIT(?)
|
||||
|
||||
ChannelRequestStatus channelRequestStatusPut=(*it_handle).getChannelRequestStatusPut();
|
||||
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
|
||||
handle_index.modify(it_handle, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
(*it_handle).PyPutHandler();
|
||||
|
||||
//endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -76,7 +64,6 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -87,12 +74,8 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
ChannelRequestStatus channelRequestStatusPut=(*itcs).getChannelRequestStatusPut();
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
handle_index.modify(itcs, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
(*it_handle).PyPutHandler();
|
||||
//endif
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -125,12 +108,11 @@ void CALLBACK_CAFE::PyHandlerGet( struct event_handler_args args)
|
||||
|
||||
#define __METHOD__ "CALLBACK_CAFE::PyHandlerGet"
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -156,22 +138,15 @@ void CALLBACK_CAFE::PyHandlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
(*it_handle).PyGetHandler();
|
||||
//endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -231,17 +206,15 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr;
|
||||
unsigned long long pulse_id=0;
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
it_handle = handle_index.find((unsigned int) _handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
@@ -262,7 +235,6 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -271,28 +243,6 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
PVDataHolder pvd;
|
||||
(*it_handle).getPVDataHolder(pvd);
|
||||
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
cafeConduit_set::iterator itcs;
|
||||
|
||||
// Loop through all elements
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs) {
|
||||
if ((*itcs).getChannelID() != NULL) {
|
||||
if(MUTEX){cafeMutex.lock();}
|
||||
handle_index.modify(itcs, change_beamEventNo(pulse_id));
|
||||
if(MUTEX){cafeMutex.unlock();}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -310,7 +260,7 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr;
|
||||
@@ -318,7 +268,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << " handle " << _handle << endl;
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
@@ -326,30 +275,20 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)cafeMutex.lock();
|
||||
|
||||
//Change Channel Policy to NO_WAIT(?)
|
||||
|
||||
ChannelRequestStatus channelRequestStatusPut=(*it_handle).getChannelRequestStatusPut();
|
||||
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
|
||||
handle_index.modify(it_handle, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -361,8 +300,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
handle_index.modify(itcs, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -373,7 +310,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return;
|
||||
@@ -395,8 +331,7 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -408,10 +343,8 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGet=(*it_handle).getChannelRequestStatusGet();
|
||||
channelRequestStatusGet.setCallbackKind(false, true);
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -423,23 +356,19 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " INFORMATION to author: MATCHed Handle= " << _handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
cout << " by looping through tcs::iterator, since the by_handle::iterator was NOT found! " << endl;
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGet=(*itcs).getChannelRequestStatusGet();
|
||||
channelRequestStatusGet.setCallbackKind(false, true);
|
||||
if(MUTEX)
|
||||
@@ -452,7 +381,6 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -487,7 +415,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
//JC May 2021 Still want to update multi-index container even if status has error
|
||||
/*
|
||||
#if HAVE_PYTHON_H
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
|
||||
@@ -506,8 +435,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return;
|
||||
*/
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -517,10 +446,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -569,7 +496,6 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -634,8 +560,7 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -645,10 +570,8 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -673,13 +596,11 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -738,8 +659,7 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
|
||||
@@ -752,7 +672,6 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -774,17 +693,14 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -822,8 +738,6 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -839,13 +753,11 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetClassName "
|
||||
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -853,12 +765,10 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -870,7 +780,6 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
}
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGetClassName=(*it_handle).getChannelRequestStatusGetClassName();
|
||||
|
||||
channelRequestStatusGetClassName.setCallbackKind(false, true);
|
||||
|
||||
if(MUTEX)
|
||||
@@ -882,17 +791,14 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -919,7 +825,6 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -939,19 +844,19 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
|
||||
|
||||
/**
|
||||
* Callback function for handlerClassName method is invoked
|
||||
* Callback function for handlerGetDescription method is invoked
|
||||
* with a pointer to the retrieved value
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetDesscription "
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetDescription "
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -963,7 +868,6 @@ void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -973,17 +877,14 @@ void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
4244
src/pycafe/.deps/PyCafe_sf.Tpo
Normal file
4244
src/pycafe/.deps/PyCafe_sf.Tpo
Normal file
File diff suppressed because it is too large
Load Diff
96985
src/pycafe/PyCafe.cpp
96985
src/pycafe/PyCafe.cpp
File diff suppressed because it is too large
Load Diff
166161
src/pycafe/PyCafe_35_sf.cpp
Normal file
166161
src/pycafe/PyCafe_35_sf.cpp
Normal file
File diff suppressed because it is too large
Load Diff
85098
src/pycafe/PyCafe_sf.cpp
85098
src/pycafe/PyCafe_sf.cpp
File diff suppressed because it is too large
Load Diff
171099
src/pycafe/PyCafe_sf.cpp-
Normal file
171099
src/pycafe/PyCafe_sf.cpp-
Normal file
File diff suppressed because it is too large
Load Diff
166161
src/pycafe/PyCafe_sf.cpp--
Normal file
166161
src/pycafe/PyCafe_sf.cpp--
Normal file
File diff suppressed because it is too large
Load Diff
@@ -670,21 +670,18 @@ int Transpose<dbr_string_t>::get(
|
||||
{
|
||||
#define __METHOD__ "Transpose<dbr_string_t>::get()"
|
||||
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
PVDataL = (*it_handle).getDataBuffer ();
|
||||
offset = (*it_handle).getChannelRequestMetaDataClient().getOffset();
|
||||
|
||||
|
||||
|
||||
if(isCacheRequest)
|
||||
{
|
||||
offset = (*it_handle).getChannelRequestMetaData().getOffset( );
|
||||
@@ -697,8 +694,6 @@ int Transpose<dbr_string_t>::get(
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Something wrong, just read last element
|
||||
if (nelem <=0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user