RHEL9 compliant

This commit is contained in:
Jan Chrin
2026-09-15 09:04:43 +02:00
parent 7f84e06fc2
commit 01f60b2f7f
29 changed files with 721214 additions and 530 deletions
+188647
View File
File diff suppressed because one or more lines are too long
+362
View File
@@ -0,0 +1,362 @@
### 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/10.4.0 ##rhel8 - default
#Above overwritten for python in the below
#module load gcc/7.3.0 for py35 py37
#module load gcc/7.5.0 for py38 py310
### 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
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.22.0"
EPICS_BASE='base-7.0.10' #
#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}) #$(readlink ${EPICS}/base)
_EPICS_HOST_ARCH=${RHREL}-x86_64
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
echo $EPICS_BASE
#if [ -z "$EPICS_BASE_VERSION" ]
#then
# EPICS_BASE='base-7.0.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_DEFAULT="sls2"
CACLIENT_DEFAULT="py37"
FACILITY_TEMP=""
CACLIENT_TEMP=""
echo 'input arg. facility/target' $FACILITY $CACLIENT
if [ -n "$FACILITY" ]
then
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
[ "$FACILITY" = "py312" ] || [ "$FACILITY" = "py310" ] || \
[ "$FACILITY" = "py39" ] || [ "$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=$FACILITY_DEFAULT
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" = "py312" ] || [ "$CACLIENT" = "py310" ] || \
[ "$CACLIENT" = "py39" ] || [ "$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" = "py312" ] || [ "$CACLIENT_TEMP" = "py310" ] || \
[ "$CACLIENT_TEMP" = "py39" ] || [ "$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-epics7"
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
then
CAFE_V+="-sf"
elif [ "$FACILITY" = "hipa" ] && [ "$CACLIENT" != "matlab" ]
then
CAFE_V+="-hipa"
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"
##module unload
##module load gcc/7.3.0
elif [ "$CACLIENT" = "py35" ]
then
ENABLE_OPTIONS+=" --enable-python35"
ENABLE_OPTIONS+=" --enable-qt4"
CAFE_V+="-py35"
##module unload
##module load gcc/7.3.0
elif [ "$CACLIENT" = "py37" ]
then
ENABLE_OPTIONS+=" --enable-python37"
ENABLE_OPTIONS+=" --enable-qt5"
CAFE_V+="-py37"
##module unload
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py38" ]
then
ENABLE_OPTIONS+=" --enable-python38"
ENABLE_OPTIONS+=" --enable-qt5py38"
CAFE_V+="-py38"
##module unload
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py39" ]
then
ENABLE_OPTIONS+=" --enable-python39"
#ENABLE_OPTIONS+=" --enable-qt5py39"
CAFE_V+="-py39"
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py310" ]
then
ENABLE_OPTIONS+=" --enable-python310"
ENABLE_OPTIONS+=" --enable-qt5py310"
CAFE_V+="-py310"
##module unload
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py312" ]
then
ENABLE_OPTIONS+=" --enable-python312"
#ENABLE_OPTIONS+=" --enable-qt5py310"
CAFE_V+="-py312"
elif [ "$CACLIENT" = "cpp" ]
then
if [ "$FACILITY" != "hipa" ]
then
ENABLE_OPTIONS+=" --enable-qt5py310"
fi
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"
##module unload
##module load gcc/7.3.0
#else
#rm -f src/PyCafe.cpp
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
fi
GCC_VERSION=$(gcc -dumpfullversion)
echo "GCC VERSION = $GCC_VERSION"
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
#--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0 \
#--with-boost-inc=/psi.ch/group/8121/jan/gitea/CAFE/boost/boost_1_91_0 \
./configure \
--prefix=/psi.ch/project/cafe/bin/cpp/${CAFE_V} \
--libdir=/psi.ch/project/cafe/bin/cpp/${CAFE_V}/lib/${_EPICS_HOST_ARCH} \
${ENABLE_OPTIONS} \
--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0 \
--with-epics3=${EPICS}/base \
--with-python312=/psi.ch/group/8121/jan/pixi/pixi-py/.pixi/envs/test \
--with-python39=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work \
--with-python310=/opt/gfa/python-3.10/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=/opt/gfa/python-3.10/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=/opt/gfa/cafe/deps/zmq/json/jsoncpp-src-0.6.0-rc2 \
--with-zeromq=/opt/gfa/cafe/deps/zmq/zeromq-4.2.3-gcc-6.3.0 \
--with-curl=/opt/gfa/cafe/deps/zmq/curl-7.55.1 \
--with-lz4=/opt/gfa/cafe/deps/zmq/lz4/lib \
--with-epics7=/usr/local/epics/${EPICS_BASE}
unset CAFE_EPICS_V_PATCH
unset CAFE_EPICS_V_MINOR
unset CAFE_EPICS_V_MAJOR
unset CAFE_HOST_FLAG_DARWIN
+16 -8
View File
@@ -27,7 +27,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.22.0"
CAFE_V="cafe-1.22.1"
EPICS_BASE='base-7.0.10' #
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
@@ -69,8 +69,8 @@ echo 'input arg. facility/target' $FACILITY $CACLIENT
if [ -n "$FACILITY" ]
then
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
[ "$FACILITY" = "py310" ] || [ "$FACILITY" = "py39" ] || \
[ "$FACILITY" = "py38" ] || \
[ "$FACILITY" = "py312" ] || [ "$FACILITY" = "py310" ] || \
[ "$FACILITY" = "py39" ] || [ "$FACILITY" = "py38" ] ||\
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
[ "$FACILITY" = "cc" ] || [ "$FACILITY" = "py34" ]
@@ -139,8 +139,8 @@ fi
if [ -n "$CACLIENT" ]
then
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
[ "$CACLIENT" = "py310" ] || [ "$CACLIENT" = "py39" ] || \
[ "$CACLIENT" = "py38" ] || \
[ "$CACLIENT" = "py312" ] || [ "$CACLIENT" = "py310" ] || \
[ "$CACLIENT" = "py39" ] || [ "$CACLIENT" = "py38" ] || \
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
[ "$CACLIENT" = "cc" ] || [ "$CACLIENT" = "py34" ]
@@ -150,8 +150,8 @@ then
if [ -n "$CACLIENT_TEMP" ]
then
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
[ "$CACLIENT_TEMP" = "py310" ] || [ "$CACLIENT_TEMP" = "py39" ] || \
[ "$CACLIENT_TEMP" = "py38" ] || \
[ "$CACLIENT_TEMP" = "py312" ] || [ "$CACLIENT_TEMP" = "py310" ] || \
[ "$CACLIENT_TEMP" = "py39" ] || [ "$CACLIENT_TEMP" = "py38" ] || \
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
[ "$CACLIENT_TEMP" = "cc" ] || [ "$CACLIENT_TEMP" = "py34" ]
@@ -252,7 +252,7 @@ then
elif [ "$CACLIENT" = "py39" ]
then
ENABLE_OPTIONS+=" --enable-python39"
ENABLE_OPTIONS+=" --enable-qt5py39"
#ENABLE_OPTIONS+=" --enable-qt5py39"
CAFE_V+="-py39"
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py310" ]
@@ -262,6 +262,12 @@ then
CAFE_V+="-py310"
##module unload
##module load gcc/7.5.0
elif [ "$CACLIENT" = "py312" ]
then
ENABLE_OPTIONS+=" --enable-python312"
#ENABLE_OPTIONS+=" --enable-qt5py310"
CAFE_V+="-py312"
elif [ "$CACLIENT" = "cpp" ]
then
@@ -331,6 +337,8 @@ echo 'ENABLE_OPTIONS============> '$ENABLE_OPTIONS
${ENABLE_OPTIONS} \
--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0 \
--with-epics3=${EPICS}/base \
--with-python312=/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work \
--with-python39=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work \
--with-python310=/opt/gfa/python-3.10/latest \
--with-python38=/opt/gfa/python-3.8/latest \
--with-python37=/opt/gfa/python-3.7/latest \
+424 -400
View File
File diff suppressed because it is too large Load Diff
+32 -22
View File
@@ -380,7 +380,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by CAFE $as_me 1.22.0, which was
This file was extended by CAFE $as_me 1.22.1, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -427,9 +427,9 @@ $config_commands
Report bugs to <Bug reports to: jan.chrin@psi.ch>."
ac_cs_config="'--prefix=/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0' '--libdir=/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64' '--enable-boost-inc' '--enable-epics7' '--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0' '--with-epics3=/usr/local/epics/base' '--with-python310=/opt/gfa/python-3.10/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=/opt/gfa/python-3.10/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=/opt/gfa/cafe/deps/zmq/json/jsoncpp-src-0.6.0-rc2' '--with-zeromq=/opt/gfa/cafe/deps/zmq/zeromq-4.2.3-gcc-6.3.0' '--with-curl=/opt/gfa/cafe/deps/zmq/curl-7.55.1' '--with-lz4=/opt/gfa/cafe/deps/zmq/lz4/lib' '--with-epics7=/usr/local/epics/base-7.0.10'"
ac_cs_config="'--prefix=/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0' '--libdir=/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64' '--enable-boost-inc' '--enable-epics7' '--enable-python312' '--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0' '--with-epics3=/usr/local/epics/base' '--with-python312=/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work' '--with-python39=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work' '--with-python310=/opt/gfa/python-3.10/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=/opt/gfa/python-3.10/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=/opt/gfa/cafe/deps/zmq/json/jsoncpp-src-0.6.0-rc2' '--with-zeromq=/opt/gfa/cafe/deps/zmq/zeromq-4.2.3-gcc-6.3.0' '--with-curl=/opt/gfa/cafe/deps/zmq/curl-7.55.1' '--with-lz4=/opt/gfa/cafe/deps/zmq/lz4/lib' '--with-epics7=/usr/local/epics/base-7.0.10'"
ac_cs_version="\
CAFE config.status 1.22.0
CAFE config.status 1.22.1
configured by ./configure, generated by GNU Autoconf 2.69,
with options \"$ac_cs_config\"
@@ -519,7 +519,7 @@ if $ac_cs_silent; then
fi
if $ac_cs_recheck; then
set X /bin/sh './configure' '--prefix=/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0' '--libdir=/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64' '--enable-boost-inc' '--enable-epics7' '--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0' '--with-epics3=/usr/local/epics/base' '--with-python310=/opt/gfa/python-3.10/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=/opt/gfa/python-3.10/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=/opt/gfa/cafe/deps/zmq/json/jsoncpp-src-0.6.0-rc2' '--with-zeromq=/opt/gfa/cafe/deps/zmq/zeromq-4.2.3-gcc-6.3.0' '--with-curl=/opt/gfa/cafe/deps/zmq/curl-7.55.1' '--with-lz4=/opt/gfa/cafe/deps/zmq/lz4/lib' '--with-epics7=/usr/local/epics/base-7.0.10' $ac_configure_extra_args --no-create --no-recursion
set X /bin/sh './configure' '--prefix=/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0' '--libdir=/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64' '--enable-boost-inc' '--enable-epics7' '--enable-python312' '--with-boost-inc=/psi.ch/project/cafe/bin/boost/boost_1_91_0' '--with-epics3=/usr/local/epics/base' '--with-python312=/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work' '--with-python39=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work' '--with-python310=/opt/gfa/python-3.10/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=/opt/gfa/python-3.10/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=/opt/gfa/cafe/deps/zmq/json/jsoncpp-src-0.6.0-rc2' '--with-zeromq=/opt/gfa/cafe/deps/zmq/zeromq-4.2.3-gcc-6.3.0' '--with-curl=/opt/gfa/cafe/deps/zmq/curl-7.55.1' '--with-lz4=/opt/gfa/cafe/deps/zmq/lz4/lib' '--with-epics7=/usr/local/epics/base-7.0.10' $ac_configure_extra_args --no-create --no-recursion
shift
$as_echo "running CONFIG_SHELL=/bin/sh $*" >&6
CONFIG_SHELL='/bin/sh'
@@ -788,7 +788,7 @@ fi
PACKAGE='cafe'
VERSION='1.22.0'
VERSION='1.22.1'
RM='rm -f'
ofile='libtool'
@@ -879,13 +879,16 @@ S["LTLIBOBJS"]=""
S["LIBOBJS"]=""
S["HAVE_ZEROMQ__FALSE"]=""
S["HAVE_ZEROMQ__TRUE"]="#"
S["HAVE_PYCAFE_EXT__FALSE"]=""
S["HAVE_PYCAFE_EXT__TRUE"]="#"
S["HAVE_PYTHON__FALSE"]=""
S["HAVE_PYTHON__TRUE"]="#"
S["AM_LDFLAGS"]=" -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64"
S["HAVE_PYCAFE_EXT__FALSE"]="#"
S["HAVE_PYCAFE_EXT__TRUE"]=""
S["HAVE_PYTHON__FALSE"]="#"
S["HAVE_PYTHON__TRUE"]=""
S["AM_LDFLAGS"]=" -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312"\
"/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib"
S["AM_CPPFLAGS"]=" -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/"\
"base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0"
"base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8"\
"121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages"\
"/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy"
S["CAFE_CPPFLAGS"]="-I$(top_srcdir)/include "
S["CXXCPP"]="g++ -E"
S["CPP"]="gcc -E"
@@ -938,8 +941,11 @@ S["OBJEXT"]="o"
S["EXEEXT"]=""
S["ac_ct_CXX"]="g++"
S["CPPFLAGS"]=" -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/"\
"base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0"
S["LDFLAGS"]=" -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64"
"base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8"\
"121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages"\
"/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy"
S["LDFLAGS"]=" -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312"\
"/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib"
S["CXXFLAGS"]="-g -O2"
S["CXX"]="g++"
S["AM_BACKSLASH"]="\\"
@@ -962,7 +968,7 @@ S["AUTOHEADER"]="${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autohead
S["AUTOMAKE"]="${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing automake-1.16"
S["AUTOCONF"]="${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoconf"
S["ACLOCAL"]="${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing aclocal-1.16"
S["VERSION"]="1.22.0"
S["VERSION"]="1.22.1"
S["PACKAGE"]="cafe"
S["CYGPATH_W"]="echo"
S["am__isrc"]=""
@@ -972,14 +978,14 @@ S["INSTALL_PROGRAM"]="${INSTALL}"
S["target_alias"]=""
S["host_alias"]=""
S["build_alias"]=""
S["LIBS"]=""
S["LIBS"]="-lpython3.12 "
S["ECHO_T"]=""
S["ECHO_N"]="-n"
S["ECHO_C"]=""
S["DEFS"]="-DHAVE_CONFIG_H"
S["mandir"]="${datarootdir}/man"
S["localedir"]="${datarootdir}/locale"
S["libdir"]="/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64"
S["libdir"]="/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64"
S["psdir"]="${docdir}"
S["pdfdir"]="${docdir}"
S["dvidir"]="${docdir}"
@@ -998,12 +1004,12 @@ S["libexecdir"]="${exec_prefix}/libexec"
S["sbindir"]="${exec_prefix}/sbin"
S["bindir"]="${exec_prefix}/bin"
S["program_transform_name"]="s,x,x,"
S["prefix"]="/psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0"
S["prefix"]="/psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0"
S["exec_prefix"]="${prefix}"
S["PACKAGE_URL"]=""
S["PACKAGE_BUGREPORT"]="Bug reports to: jan.chrin@psi.ch"
S["PACKAGE_STRING"]="CAFE 1.22.0"
S["PACKAGE_VERSION"]="1.22.0"
S["PACKAGE_STRING"]="CAFE 1.22.1"
S["PACKAGE_VERSION"]="1.22.1"
S["PACKAGE_TARNAME"]="cafe"
S["PACKAGE_NAME"]="CAFE"
S["PATH_SEPARATOR"]=":"
@@ -1052,12 +1058,12 @@ cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
BEGIN {
D["PACKAGE_NAME"]=" \"CAFE\""
D["PACKAGE_TARNAME"]=" \"cafe\""
D["PACKAGE_VERSION"]=" \"1.22.0\""
D["PACKAGE_STRING"]=" \"CAFE 1.22.0\""
D["PACKAGE_VERSION"]=" \"1.22.1\""
D["PACKAGE_STRING"]=" \"CAFE 1.22.1\""
D["PACKAGE_BUGREPORT"]=" \"Bug reports to: jan.chrin@psi.ch\""
D["PACKAGE_URL"]=" \"\""
D["PACKAGE"]=" \"cafe\""
D["VERSION"]=" \"1.22.0\""
D["VERSION"]=" \"1.22.1\""
D["STDC_HEADERS"]=" 1"
D["HAVE_SYS_TYPES_H"]=" 1"
D["HAVE_SYS_STAT_H"]=" 1"
@@ -1079,6 +1085,10 @@ D["EPICS_MINOR"]=" 0"
D["EPICS_PATCH"]=" 9"
D["HAVE_MULTI_INDEX_CONTAINER_HPP"]=" 1"
D["HAVE_BOOST"]=" 1"
D["HAVE_PYTHON_H"]=" 1"
D["HAVE_LIBPYTHON3_12"]=" 1"
D["HAVE_PYTHON"]=" 1"
D["HAVE_PYCAFE_EXT"]=" 1"
for (key in D) D_is_set[key] = 1
FS = ""
}
+94 -2
View File
@@ -9,7 +9,7 @@
# Standard macros
AC_PREREQ(2.63)
AC_COPYRIGHT([CAFE, Jan Chrin, PSI, 2010-2023])
AC_INIT([CAFE], [1.22.0], [Bug reports to: jan.chrin@psi.ch])
AC_INIT([CAFE], [1.22.1], [Bug reports to: jan.chrin@psi.ch])
AC_CONFIG_AUX_DIR(./)
@@ -421,7 +421,11 @@ AC_ARG_ENABLE(
AC_HELP_STRING([--enable-python37],
[enable python use [default=no]]),
[HAVE_PYTHON_=true
HAVE_PY37_=true
HAVE_PY37_=true
HAVE_PY310_=false
HAVE_PY312_=false
HAVE_PY39_=false
HAVE_PY38_=false
HAVE_PY35_=false
HAVE_PY34_=false]
)
@@ -449,6 +453,9 @@ AC_ARG_ENABLE(
[enable python use [default=no]]),
[HAVE_PYTHON_=true
HAVE_PY38_=true
HAVE_PY310_=false
HAVE_PY312_=false
HAVE_PY39_=false
HAVE_PY37_=false
HAVE_PY35_=false
HAVE_PY34_=false]
@@ -477,6 +484,8 @@ AC_ARG_ENABLE(
[enable python use [default=no]]),
[HAVE_PYTHON_=true
HAVE_PY310_=true
HAVE_PY312_=false
HAVE_PY39_=false
HAVE_PY38_=false
HAVE_PY37_=false
HAVE_PY35_=false
@@ -500,6 +509,71 @@ if test x$HAVE_PY310_ == xtrue ; then
fi
AC_ARG_ENABLE(
[python312],
AC_HELP_STRING([--enable-python312],
[enable python use [default=no]]),
[HAVE_PYTHON_=true
HAVE_PY312_=true
HAVE_PY310_=false
HAVE_PY38_=false
HAVE_PY37_=false
HAVE_PY35_=false
HAVE_PY34_=false]
)
if test x$HAVE_PY312_ == xtrue ; then
AC_ARG_WITH(
python312,
AC_HELP_STRING(
[--with-python312 = location of python],
[prefix giving the python base directory]),
[#HAVE_PYTHON_=true
PYTHON_PREFIX=$withval
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.12
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
"/lib/python3.12/site-packages/numpy/_core/include -I"${PYTHON_PREFIX}\
"/lib/python3.12/site-packages/numpy"
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
]
)
fi
AC_ARG_ENABLE(
[python39],
AC_HELP_STRING([--enable-python39],
[enable python use [default=no]]),
[HAVE_PYTHON_=true
HAVE_PY39_=true
HAVE_PY312_=false
HAVE_PY310_=false
HAVE_PY38_=false
HAVE_PY37_=false
HAVE_PY35_=false
HAVE_PY34_=false]
)
if test x$HAVE_PY39_ == xtrue ; then
AC_ARG_WITH(
python39,
AC_HELP_STRING(
[--with-python39 = location of python],
[prefix giving the python base directory]),
[#HAVE_PYTHON_=true
PYTHON_PREFIX=$withval
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.9
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
"/lib/python3.9/site-packages/numpy/core/include"
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
]
)
fi
##
##---------------------------------------------------------------------------
@@ -538,6 +612,13 @@ if test x$HAVE_PYTHON_ == xtrue ; then
[])
#fi
if test x$HAVE_PY312_ == xtrue ; then
AC_CHECK_LIB(python3.12,[main], [],
[HAVE_PYTHON_=false
AC_MSG_WARN(libpython3.12 not found!)]
)
fi
if test x$HAVE_PY310_ == xtrue ; then
@@ -547,6 +628,17 @@ if test x$HAVE_PYTHON_ == xtrue ; then
)
fi
if test x$HAVE_PY39_ == xtrue ; then
AC_CHECK_LIB(python3.9,[main], [],
[HAVE_PYTHON_=false
AC_MSG_WARN(libpython3.9 not found!)]
)
fi
if test x$HAVE_PY38_ == xtrue ; then
AC_CHECK_LIB(python3.8,[main], [],
File diff suppressed because it is too large Load Diff
Binary file not shown.
+9 -1
View File
@@ -101,6 +101,8 @@ int main( int argc, char *argv[] )
try
{
cout << "Open channels" << endl;
cafe->open(pvArray[0].c_str(), handle);
cafe->open(PV_WF, handle_wf);
cafe->open(pvArray[3].c_str(), h);
@@ -108,9 +110,15 @@ int main( int argc, char *argv[] )
}
catch(CAFEException_open & e)
{
cout << e.what() << endl;
cout << e.what() << endl;
exit(1);
}
catch(...)
{
cout << "Exception" << endl;
exit(1);
}
cout << "---------------------------------------------------------------------" << endl;
cout << "START: (1) Establishing connections to EPICS Process Variables (PVs) " << endl;
+13 -10
View File
@@ -9,10 +9,12 @@
#CAFE version to link to
#CAFE_VERSION=cafe-1.14.4-sls2-gcc-7.3.0
CAFE_VERSION=cafe-1.22.0-hipa-gcc-11.5.0
#CAFE_VERSION=cafe-1.15.0-gcc-10.3.0
#CAFE_VERSION=cafe-1.22.0-py39-gcc-11.5.0
PYTHON_INCLUDE=/opt/gfa/python-3.7/latest/include/python3.7m
PYTHON_LIB=/opt/gfa/python-3.7/latest/lib
#PYTHON_INCLUDE=/opt/gfa/python-3.7/latest/include/python3.7m
#PYTHON_LIB=/opt/gfa/python-3.7/latest/lib
PYTHON_INCLUDE=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work/include/python3.9
PYTHON_LIB=/psi.ch/group/8121/jan/pixi/pycafe-py39/.pixi/envs/work
EPICS_BASE=${EPICS}/base-7.0.10
@@ -21,22 +23,23 @@ CAFE_BASE=/psi.ch/project/cafe
CAFE_CPP_BASE=${CAFE_BASE}/bin/cpp
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
#BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
BOOST_BASE=${CAFE_BASE}/boost/boost_1_91_0/boost
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
-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)
# -L$(PYTHON_LIB) -Wl,-rpath,$(PYTHON_LIB)
#-L/opt/psi/Programming/gcc/10.3.0/lib64 -Wl,-rpath,/opt/psi/Programming/gcc/10.3.0/lib64 \
LIBS += -lcafe -lca -lCom
#-lQt5Core -lpython3.7m
+27 -18
View File
@@ -1,17 +1,23 @@
/* Generated by Cython 0.29.2 */
/* Generated by Cython 3.2.9 */
#ifndef __PYX_HAVE__PyCafe
#define __PYX_HAVE__PyCafe
#include "Python.h"
#ifndef __PYX_HAVE_API__PyCafe
#ifndef __PYX_EXTERN_C
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
#else
#define __PYX_EXTERN_C extern
#endif
#ifdef CYTHON_EXTERN_C
#undef __PYX_EXTERN_C
#define __PYX_EXTERN_C CYTHON_EXTERN_C
#elif defined(__PYX_EXTERN_C)
#ifdef _MSC_VER
#pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
#else
#warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
#endif
#else
#define __PYX_EXTERN_C extern "C++"
#endif
#ifndef DL_IMPORT
@@ -24,26 +30,29 @@ __PYX_EXTERN_C void cy_ctrl_event_handler_wrapper(void *, unsigned int, std::str
__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);
#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
/* WARNING: Use PyImport_AppendInittab("PyCafe", PyInit_PyCafe) instead of calling PyInit_PyCafe directly from Python 3.5 */
PyMODINIT_FUNC PyInit_PyCafe(void);
#if PY_VERSION_HEX >= 0x03050000 && (defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER) || (defined(__cplusplus) && __cplusplus >= 201402L))
#if defined(__cplusplus) && __cplusplus >= 201402L
[[deprecated("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly.")]] inline
#elif defined(__GNUC__) || defined(__clang__)
__attribute__ ((__deprecated__("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly."), __unused__)) __inline__
#elif defined(_MSC_VER)
__declspec(deprecated("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly.")) __inline
#endif
static PyObject* __PYX_WARN_IF_PyInit_PyCafe_INIT_CALLED(PyObject* res) {
return res;
}
#define PyInit_PyCafe() __PYX_WARN_IF_PyInit_PyCafe_INIT_CALLED(PyInit_PyCafe())
#endif
#endif /* !__PYX_HAVE__PyCafe */
+58
View File
@@ -0,0 +1,58 @@
/* Generated by Cython 3.2.9 */
#ifndef __PYX_HAVE__PyCafe
#define __PYX_HAVE__PyCafe
#include "Python.h"
#ifndef __PYX_HAVE_API__PyCafe
#ifdef CYTHON_EXTERN_C
#undef __PYX_EXTERN_C
#define __PYX_EXTERN_C CYTHON_EXTERN_C
#elif defined(__PYX_EXTERN_C)
#ifdef _MSC_VER
#pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
#else
#warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
#endif
#else
#define __PYX_EXTERN_C extern "C++"
#endif
#ifndef DL_IMPORT
#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 cy_cb_handle_get_wrapper(void *, unsigned int);
__PYX_EXTERN_C void cy_cb_handle_put_wrapper(void *, unsigned 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. */
/* WARNING: Use PyImport_AppendInittab("PyCafe", PyInit_PyCafe) instead of calling PyInit_PyCafe directly from Python 3.5 */
PyMODINIT_FUNC PyInit_PyCafe(void);
#if PY_VERSION_HEX >= 0x03050000 && (defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER) || (defined(__cplusplus) && __cplusplus >= 201402L))
#if defined(__cplusplus) && __cplusplus >= 201402L
[[deprecated("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly.")]] inline
#elif defined(__GNUC__) || defined(__clang__)
__attribute__ ((__deprecated__("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly."), __unused__)) __inline__
#elif defined(_MSC_VER)
__declspec(deprecated("Use PyImport_AppendInittab(\"PyCafe\", PyInit_PyCafe) instead of calling PyInit_PyCafe directly.")) __inline
#endif
static PyObject* __PYX_WARN_IF_PyInit_PyCafe_INIT_CALLED(PyObject* res) {
return res;
}
#define PyInit_PyCafe() __PYX_WARN_IF_PyInit_PyCafe_INIT_CALLED(PyInit_PyCafe())
#endif
#endif /* !__PYX_HAVE__PyCafe */
+1
View File
@@ -0,0 +1 @@
PyCafe39_api.h
+42
View File
@@ -0,0 +1,42 @@
/* Generated by Cython 0.29.37 */
#ifndef __PYX_HAVE__PyCafe
#define __PYX_HAVE__PyCafe
#include "Python.h"
#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_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 cy_cb_handle_get_wrapper(void *, unsigned int);
__PYX_EXTERN_C void cy_cb_handle_put_wrapper(void *, unsigned 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 */
+49
View File
@@ -0,0 +1,49 @@
/* 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_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);
#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 */
+1 -1
View File
@@ -1 +1 @@
PyCafe3_api.h
PyCafe312_api.h
+12 -6
View File
@@ -59,6 +59,9 @@
/* Define to 1 if you have the `python3.10' library (-lpython3.10). */
/* #undef HAVE_LIBPYTHON3_10 */
/* Define to 1 if you have the `python3.12' library (-lpython3.12). */
#define HAVE_LIBPYTHON3_12 1
/* Define to 1 if you have the `python3.4m' library (-lpython3.4m). */
/* #undef HAVE_LIBPYTHON3_4M */
@@ -71,6 +74,9 @@
/* Define to 1 if you have the `python3.8' library (-lpython3.8). */
/* #undef HAVE_LIBPYTHON3_8 */
/* Define to 1 if you have the `python3.9' library (-lpython3.9). */
/* #undef HAVE_LIBPYTHON3_9 */
/* Define to 1 if you have the `Qt5Core' library (-lQt5Core). */
/* #undef HAVE_LIBQT5CORE */
@@ -102,13 +108,13 @@
#define HAVE_MULTI_INDEX_CONTAINER_HPP 1
/* pycafe extern C */
/* #undef HAVE_PYCAFE_EXT */
#define HAVE_PYCAFE_EXT 1
/* Availability of python */
/* #undef HAVE_PYTHON */
#define HAVE_PYTHON 1
/* Define to 1 if you have the <Python.h> header file. */
/* #undef HAVE_PYTHON_H */
#define HAVE_PYTHON_H 1
/* Availability of Qt version 5 confirmed */
/* #undef HAVE_QT */
@@ -156,7 +162,7 @@
#define PACKAGE_NAME "CAFE"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "CAFE 1.22.0"
#define PACKAGE_STRING "CAFE 1.22.1"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "cafe"
@@ -165,7 +171,7 @@
#define PACKAGE_URL ""
/* Define to the version of this package. */
#define PACKAGE_VERSION "1.22.0"
#define PACKAGE_VERSION "1.22.1"
/* Availability of Qt version 5 confirmed */
/* #undef QT_NO_VERSION_TAGGING */
@@ -174,4 +180,4 @@
#define STDC_HEADERS 1
/* Version number of package */
#define VERSION "1.22.0"
#define VERSION "1.22.1"
+12 -12
View File
@@ -96,8 +96,8 @@ host_triplet = x86_64-pc-linux-gnu
#if HAVE_PYTHON_
#include_HEADERS += PyCafe_api.h
#endif
#am__append_2 = PyCafe.h
am__append_3 = PyCafe_api.h
am__append_2 = PyCafe.h
#am__append_3 = PyCafe_api.h
subdir = include
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -199,9 +199,9 @@ am__DIST_COMMON = $(srcdir)/makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing aclocal-1.16
AMTAR = $${TAR-tar}
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy
AM_DEFAULT_VERBOSITY = 1
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib
AR = ar
AUTOCONF = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoconf
AUTOHEADER = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoheader
@@ -212,7 +212,7 @@ CC = gcc
CCDEPMODE = depmode=gcc3
CFLAGS = -g -O2
CPP = gcc -E
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy
CXX = g++
CXXCPP = g++ -E
CXXDEPMODE = depmode=gcc3
@@ -236,9 +236,9 @@ 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-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64
LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib
LIBOBJS =
LIBS =
LIBS = -lpython3.12
LIBTOOL = $(SHELL) $(top_builddir)/libtool
LIPO =
LN_S = ln -s
@@ -256,17 +256,17 @@ OTOOL64 =
PACKAGE = cafe
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
PACKAGE_NAME = CAFE
PACKAGE_STRING = CAFE 1.22.0
PACKAGE_STRING = CAFE 1.22.1
PACKAGE_TARNAME = cafe
PACKAGE_URL =
PACKAGE_VERSION = 1.22.0
PACKAGE_VERSION = 1.22.1
PATH_SEPARATOR = :
RANLIB = ranlib
SED = /usr/bin/sed
SET_MAKE =
SHELL = /bin/sh
STRIP = strip
VERSION = 1.22.0
VERSION = 1.22.1
abs_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp/include
abs_srcdir = /psi.ch/group/8121/jan/gitea/CAFE/cpp/include
abs_top_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp
@@ -301,7 +301,7 @@ htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
install_sh = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/install-sh
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
localstatedir = ${prefix}/var
@@ -309,7 +309,7 @@ mandir = ${datarootdir}/man
mkdir_p = $(MKDIR_P)
oldincludedir = /usr/include
pdfdir = ${docdir}
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0
program_transform_name = s,x,x,
psdir = ${docdir}
runstatedir = ${localstatedir}/run
+1 -1
View File
@@ -1,5 +1,5 @@
#! /bin/sh
# Generated automatically by config.status (cafe) 1.22.0
# Generated automatically by config.status (cafe) 1.22.1
# Libtool was configured on host hipa-lc9.psi.ch:
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+10 -10
View File
@@ -242,9 +242,9 @@ am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
distcleancheck_listfiles = find . -type f -print
ACLOCAL = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing aclocal-1.16
AMTAR = $${TAR-tar}
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I$(top_srcdir)/include
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy -I$(top_srcdir)/include
AM_DEFAULT_VERBOSITY = 1
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 @CAFE_LIBS@
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib @CAFE_LIBS@
AR = ar
AUTOCONF = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoconf
AUTOHEADER = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoheader
@@ -255,7 +255,7 @@ CC = gcc
CCDEPMODE = depmode=gcc3
CFLAGS = -g -O2
CPP = gcc -E
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy
CXX = g++
CXXCPP = g++ -E
CXXDEPMODE = depmode=gcc3
@@ -279,9 +279,9 @@ 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-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64
LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib
LIBOBJS =
LIBS =
LIBS = -lpython3.12
LIBTOOL = $(SHELL) $(top_builddir)/libtool
LIPO =
LN_S = ln -s
@@ -299,17 +299,17 @@ OTOOL64 =
PACKAGE = cafe
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
PACKAGE_NAME = CAFE
PACKAGE_STRING = CAFE 1.22.0
PACKAGE_STRING = CAFE 1.22.1
PACKAGE_TARNAME = cafe
PACKAGE_URL =
PACKAGE_VERSION = 1.22.0
PACKAGE_VERSION = 1.22.1
PATH_SEPARATOR = :
RANLIB = ranlib
SED = /usr/bin/sed
SET_MAKE =
SHELL = /bin/sh
STRIP = strip
VERSION = 1.22.0
VERSION = 1.22.1
abs_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp
abs_srcdir = /psi.ch/group/8121/jan/gitea/CAFE/cpp
abs_top_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp
@@ -344,7 +344,7 @@ htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
install_sh = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/install-sh
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
localstatedir = ${prefix}/var
@@ -352,7 +352,7 @@ mandir = ${datarootdir}/man
mkdir_p = $(MKDIR_P)
oldincludedir = /usr/include
pdfdir = ${docdir}
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0
program_transform_name = s,x,x,
psdir = ${docdir}
runstatedir = ${localstatedir}/run
+1 -1
View File
@@ -1 +1 @@
PyCafe_sls_py38.cpp
PyCafe_sls_py312.cpp_RHEL9
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+1
View File
@@ -5476,6 +5476,7 @@ void CAFE::loadSFGroups(std::string suff)
if (! Py_IsInitialized () )
{
std::cout << "INITIALIZING PY IN CAFE" << std::endl;
Py_Initialize();
}
+1 -1
View File
@@ -202,7 +202,7 @@ Conduit::Conduit(const char * _pv, ca_client_context *_ccc,
#if HAVE_PYCAFE_EXT
//Do nothing as PyCafe_ext is compiled
//Py_Initialize();
//dlopen("libpython2.6.so", RTLD_GLOBAL|RTLD_LAZY);
//dlopen("/opt/gfa/python-3.5/latest/lib/libpython3.5m.so", RTLD_GLOBAL|RTLD_LAZY);
+89 -23
View File
@@ -93,26 +93,30 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
// Check pyCallbackFlag in ChannelOpenFolicy and set pyCallbackFlag in conduit object accordingly
//
Moved to create Handle
*/
*/
_status = ca_create_channel(pv, channelCreatePolicy.getHandler(), (void *) (unsigned long) handle,
channelCreatePolicy.getPriority(), &pCh);
if (pCh!=NULL)
{
if(MUTEX)
{
cafeMutex.lock(); //lock
}
handle_index.modify(it_handle, change_channelID (pCh));
if(MUTEX)
{
cafeMutex.unlock(); //unlock
}
channelRegalia = (*it_handle).getChannelRegalia();
//std::cout << " OLD VALUE " << channelRegalia.cafeConnectionState << " " << (*it_handle).pv << std::endl;
//std::cout << " OLD VALUE " << channelRegalia.cafeConnectionState << " " << (*it_handle).pv << std::flush << std::endl;
if ( channelRegalia.cafeConnectionState == ICAFE_CS_CLOSED) {
//This is to overwrite the last values arising from a user supplied closechannelkeephandle method
@@ -130,7 +134,7 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
}
}
channelRegalia = (*it_handle).getChannelRegalia();
//std::cout << " NEW VALUE " << channelRegalia.cafeConnectionState << " " << (*it_handle).pv << std::endl;
//std::cout << " NEW VALUE " << channelRegalia.cafeConnectionState << " " << (*it_handle).pv << std::flush << std::endl;
//Install the access rights state change callback handler
if (ADD_EXCEPTION_EVENT==true)
@@ -139,7 +143,8 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
}
ca_replace_access_rights_event(pCh, callbackHandlerAccessRights);
}
if (_status != ECA_NORMAL)
{
cout << __FILE__ << ":" << __LINE__ << endl;
@@ -161,24 +166,35 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
return (int) _status;
}
//To Flush Send Buffer or not? Examine channelOpenPolicy.
if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
{
using namespace boost::posix_time;
ptime timeStart(microsec_clock::local_time());
double timeElapsed=0;
unsigned int nPoll=0;
channelOpenPolicy.flushSendBufferNow();
ptime timeEnd(microsec_clock::local_time());
time_duration duration(timeEnd-timeStart);
timeElapsed= (double) duration.total_microseconds()/1000000.0;
// std::cout << __METHOD__ << channelOpenPolicy.getTimeout() << std::flush << std::endl;
// std::cout << __METHOD__ << (*it_handle).isConnected() << std::flush << std::endl;
while ( !(*it_handle).isConnected() && timeElapsed <= channelOpenPolicy.getTimeout())
{
#if HAVE_BOOST_THREAD
boost::this_thread::sleep_for(boost::chrono::microseconds(1000));
#else
#if HAVE_LINUX
@@ -223,7 +239,7 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
handleHelper.getChannelRequestStatusGet (handle, cre);
}
//std::cout << __FILE__ << ":" << __LINE__ << " nPoll=" << nPoll << std::endl;
//std::cout << __FILE__ << ":" << __LINE__ << " nPoll=" << nPoll << std::flush<< std::endl;
if ((*it_handle).isConnected() && cre.getCallbackProgressKind()==(CAFENUM::CallbackProgressKind) CAFENUM::PENDING)
{
std::cout << "==================================" << std::endl;
@@ -244,13 +260,13 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
}
}//if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
}
else
{
return ECAFE_INVALID_HANDLE;
}
return (int) _status;
#undef __METHOD__
@@ -279,10 +295,13 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
{
cafeMutex.lock(); //lock
}
p = cs.insert(Conduit(pv, ccc,
channelRequestPolicyMasterPut, channelRequestPolicyMasterGet,
channelGetActionWhenMonitorPolicyMaster, pyCafeFlag));
if(MUTEX)
{
@@ -328,7 +347,8 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
}
handle=(*(p.first)).getHandle();
cafeConduit_set_by_handle & handle_index= cs.get<by_handle>();
//cafeConduit_set_by_handle::iterator it_handle;
@@ -341,9 +361,9 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
#if HAVE_PYTHON_H
bool _pyCallbackFlag=channelCreatePolicy.getPyCallbackFlag();
void * _pyConnectCallbackFn=channelCreatePolicy.getPyConnectHandler();
//cout << "========================================================== " << endl;
//cout << "pycafeflag " << pyCafeFlag << " handle = " << handle << " " << (*(p.first)).pv << endl;
//cout << " _pyCallbackFlag " << _pyCallbackFlag << " " << _pyConnectCallbackFn << endl;
//cout << "========================================================== " << flush << endl;
//cout << "pycafeflag " << pyCafeFlag << " handle = " << handle << " " << (*(p.first)).pv << flush << endl;
//cout << " _pyCallbackFlag " << _pyCallbackFlag << " " << _pyConnectCallbackFn << flush << endl;
//cout << "========================================================== " << endl;
if(MUTEX)
@@ -378,10 +398,11 @@ 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);
// 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
@@ -469,6 +490,33 @@ int Connect::init() //throw (CAFEException_init)
#undef __METHOD__
};
/**
AI generated - check Python version
*/
bool isVersionLessThan3_12(const std::string& versionStr) {
int major = 0;
int minor = 0;
// Clean up the string in case it contains "Python 3.10.2" instead of just "3.10.2"
size_t spacePos = versionStr.find_last_of(' ');
std::string cleanStr = (spacePos == std::string::npos) ? versionStr : versionStr.substr(spacePos + 1);
// Extract the major and minor integers (e.g., from "3.11.2", major=3, minor=11)
if (std::sscanf(cleanStr.c_str(), "%d.%d", &major, &minor) < 2) {
std::cerr << "Error: Could not parse version string format." << std::endl;
return false;
}
// Compare numerically
if (major < 3) return true;
if (major == 3 && minor < 12) return true;
return false;
}
/**
* \brief Called once prior to making any channel access calls \n
* \param select input: enum ca_preemptive_callback_select \n
@@ -480,21 +528,33 @@ int Connect::init(ca_preemptive_callback_select select) //throw (CAFEException_
{
#define __METHOD__ "Connect::init(ca_preemptive_callback_select)"
int status=ICAFE_NORMAL;
#if HAVE_PYTHON_H
#if HAVE_PYCAFE_EXT
std::string pyversion = PY_VERSION;
if (isVersionLessThan3_12(pyversion) == true) {
int pyStatus = PyImport_AppendInittab("PyCafe", PyInit_PyCafe); //Python 3
//std::cout << "PyImport_AppendInittab(PyCafe, PyInit_PyCafe); " << pyStatus << std::flush << std::endl;
if (pyStatus == -1) {
std::cout << "PyCafe Init failed!!" << std::endl;
exit(1);
}
Py_Initialize();
std::cout << "Py Initialized - " << pyversion << std::endl;
}
PyObject *module = PyImport_ImportModule("PyCafe");
if(module==NULL){
std::cout << "PyCafe import failed!!" << std::endl;
exit(1);
}
PyInit_PyCafe;
//PyInit_PyCafe;
//PyInit_PyCafe_sf();
//Py_Finalize();
//Python 2
@@ -898,6 +958,8 @@ int Connect::open(const char * _pv, unsigned int &handle)
// Determine ca-client context
ca_client_context * ccc = ca_current_context();
if (ccc == NULL)
{
try
@@ -923,9 +985,12 @@ int Connect::open(const char * _pv, unsigned int &handle)
// Check if handle already exists for this pv
// Handles for pvs that are members of a group are treated separately!
//std::cout << __METHOD__ << "pvv " << pv << std::flush << std::endl;
handle = handleHelper.getHandleFromPV(pv,ccc);
//std::cout << __METHOD__ << " handle " << handle << std::flush << std::endl;
if (handle != 0)
{
return ICAFE_NORMAL;
@@ -934,12 +999,12 @@ int Connect::open(const char * _pv, unsigned int &handle)
try
{
status = createHandle(pv, ccc, handle);
status = createHandle(pv, ccc, handle);
}
catch (CAFEException_pv & e)
{
std::cout << __METHOD__ << " EXCEPTION " << std::endl;
std::cout << __METHOD__ << " EXCEPTION " << std::flush << std::endl;
if (e.statusCode != ECA_BADSTR)
{
@@ -965,6 +1030,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
return status;
}
return ICAFE_NORMAL;
#undef __METHOD__
+13 -13
View File
@@ -88,7 +88,7 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = x86_64-pc-linux-gnu
host_triplet = x86_64-pc-linux-gnu
#am__append_1 = PyCafe.cpp
am__append_1 = PyCafe.cpp
#am__append_2 = zbsCafeService.cpp zbsDataHolders.cpp \
# bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
@@ -146,7 +146,7 @@ am__libcafe_la_SOURCES_DIST = cafe.cpp cafeCache.cpp cafeGroup.cpp \
zbsCafeService.cpp zbsDataHolders.cpp \
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c \
bitshuffle/iochain.c
#am__objects_1 = PyCafe.lo
am__objects_1 = PyCafe.lo
am__dirstamp = $(am__leading_dot)dirstamp
#am__objects_2 = zbsCafeService.lo zbsDataHolders.lo \
# bitshuffle/bitshuffle_core.lo \
@@ -276,9 +276,9 @@ AMTAR = $${TAR-tar}
#if HAVE_PYTHON_
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
#endif
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I$(top_srcdir)/include
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy -I$(top_srcdir)/include
AM_DEFAULT_VERBOSITY = 1
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64
AM_LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib
AR = ar
AUTOCONF = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoconf
AUTOHEADER = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/missing autoheader
@@ -289,7 +289,7 @@ CC = gcc
CCDEPMODE = depmode=gcc3
CFLAGS = -g -O2
CPP = gcc -E
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0
CPPFLAGS = -fexceptions -fPIC -std=c++1z -z nodefs -I/usr/local/epics/base-7.0.10/include/ -I/usr/local/epics/base-7.0.10/include/os/Linux -I/usr/local/epics/base-7.0.10/include/compiler/gcc -I/psi.ch/project/cafe/bin/boost/boost_1_91_0/boost -I/psi.ch/project/cafe/bin/boost/boost_1_91_0 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/include/python3.12 -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy/_core/include -I/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib/python3.12/site-packages/numpy
CXX = g++
CXXCPP = g++ -E
CXXDEPMODE = depmode=gcc3
@@ -313,9 +313,9 @@ 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-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64
LDFLAGS = -L/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -Wl,-rpath,/usr/local/epics/base-7.0.10/lib/RHEL9-x86_64 -L/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib -Wl,-rpath,/psi.ch/group/8121/jan/pixi/pycafe-py312/.pixi/envs/work/lib
LIBOBJS =
LIBS =
LIBS = -lpython3.12
LIBTOOL = $(SHELL) $(top_builddir)/libtool
LIPO =
LN_S = ln -s
@@ -333,17 +333,17 @@ OTOOL64 =
PACKAGE = cafe
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
PACKAGE_NAME = CAFE
PACKAGE_STRING = CAFE 1.22.0
PACKAGE_STRING = CAFE 1.22.1
PACKAGE_TARNAME = cafe
PACKAGE_URL =
PACKAGE_VERSION = 1.22.0
PACKAGE_VERSION = 1.22.1
PATH_SEPARATOR = :
RANLIB = ranlib
SED = /usr/bin/sed
SET_MAKE =
SHELL = /bin/sh
STRIP = strip
VERSION = 1.22.0
VERSION = 1.22.1
abs_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp/src
abs_srcdir = /psi.ch/group/8121/jan/gitea/CAFE/cpp/src
abs_top_builddir = /psi.ch/group/8121/jan/gitea/CAFE/cpp
@@ -378,7 +378,7 @@ htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
install_sh = ${SHELL} /psi.ch/group/8121/jan/gitea/CAFE/cpp/install-sh
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0/lib/RHEL9-x86_64
libdir = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0/lib/RHEL9-x86_64
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
localstatedir = ${prefix}/var
@@ -386,7 +386,7 @@ mandir = ${datarootdir}/man
mkdir_p = $(MKDIR_P)
oldincludedir = /usr/include
pdfdir = ${docdir}
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.0-hipa-gcc-11.5.0
prefix = /psi.ch/project/cafe/bin/cpp/cafe-1.22.1-py312-gcc-11.5.0
program_transform_name = s,x,x,
psdir = ${docdir}
runstatedir = ${localstatedir}/run
@@ -407,7 +407,7 @@ lib_LTLIBRARIES = libcafe.la
#2nd: age
#3rd: revision
#1.9.2 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 23:0:22
libcafe_la_LDFLAGS = -version-info 23:1:22
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp \
cafeVectors.cpp cafeXML.cpp callbackHandlerCreate.cpp \
callbackHandlerMonitor.cpp conduit.cpp connect.cpp \
+1 -1
View File
@@ -12,7 +12,7 @@ lib_LTLIBRARIES = libcafe.la
#2nd: age
#3rd: revision
#1.9.2 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 23:0:22
libcafe_la_LDFLAGS = -version-info 23:1:22
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp cafeVectors.cpp cafeXML.cpp \
callbackHandlerCreate.cpp callbackHandlerMonitor.cpp conduit.cpp connect.cpp connectCallbacks.cpp \