cafe-1.19.3

This commit is contained in:
2024-02-08 14:26:03 +01:00
parent fdd124905b
commit e50115776d
20 changed files with 1021 additions and 632 deletions

1232
PyCafe.cpp

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
/* Generated by Cython 0.29.24 */
/* Generated by Cython 0.29.30 */
#ifndef __PYX_HAVE__PyCafe
#define __PYX_HAVE__PyCafe

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by Cython 0.29.24 -->
<!-- Generated by Cython 0.29.30 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -293,22 +293,22 @@ td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.cython .hll { background-color: #ffffcc }
.cython { background: #f8f8f8; }
.cython .c { color: #408080; font-style: italic } /* Comment */
.cython .c { color: #3D7B7B; font-style: italic } /* Comment */
.cython .err { border: 1px solid #FF0000 } /* Error */
.cython .k { color: #008000; font-weight: bold } /* Keyword */
.cython .o { color: #666666 } /* Operator */
.cython .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #BC7A00 } /* Comment.Preproc */
.cython .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #408080; font-style: italic } /* Comment.Single */
.cython .cs { color: #408080; font-style: italic } /* Comment.Special */
.cython .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #9C6500 } /* Comment.Preproc */
.cython .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.cython .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.cython .gd { color: #A00000 } /* Generic.Deleted */
.cython .ge { font-style: italic } /* Generic.Emph */
.cython .gr { color: #FF0000 } /* Generic.Error */
.cython .gr { color: #E40000 } /* Generic.Error */
.cython .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.cython .gi { color: #00A000 } /* Generic.Inserted */
.cython .go { color: #888888 } /* Generic.Output */
.cython .gi { color: #008400 } /* Generic.Inserted */
.cython .go { color: #717171 } /* Generic.Output */
.cython .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.cython .gs { font-weight: bold } /* Generic.Strong */
.cython .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
@@ -321,15 +321,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .kt { color: #B00040 } /* Keyword.Type */
.cython .m { color: #666666 } /* Literal.Number */
.cython .s { color: #BA2121 } /* Literal.String */
.cython .na { color: #7D9029 } /* Name.Attribute */
.cython .na { color: #687822 } /* Name.Attribute */
.cython .nb { color: #008000 } /* Name.Builtin */
.cython .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.cython .no { color: #880000 } /* Name.Constant */
.cython .nd { color: #AA22FF } /* Name.Decorator */
.cython .ni { color: #999999; font-weight: bold } /* Name.Entity */
.cython .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.cython .ni { color: #717171; font-weight: bold } /* Name.Entity */
.cython .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.cython .nf { color: #0000FF } /* Name.Function */
.cython .nl { color: #A0A000 } /* Name.Label */
.cython .nl { color: #767600 } /* Name.Label */
.cython .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.cython .nt { color: #008000; font-weight: bold } /* Name.Tag */
.cython .nv { color: #19177C } /* Name.Variable */
@@ -346,11 +346,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .dl { color: #BA2121 } /* Literal.String.Delimiter */
.cython .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.cython .s2 { color: #BA2121 } /* Literal.String.Double */
.cython .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.cython .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.cython .sh { color: #BA2121 } /* Literal.String.Heredoc */
.cython .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.cython .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.cython .sx { color: #008000 } /* Literal.String.Other */
.cython .sr { color: #BB6688 } /* Literal.String.Regex */
.cython .sr { color: #A45A77 } /* Literal.String.Regex */
.cython .s1 { color: #BA2121 } /* Literal.String.Single */
.cython .ss { color: #19177C } /* Literal.String.Symbol */
.cython .bp { color: #008000 } /* Name.Builtin.Pseudo */
@@ -363,7 +363,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
</style>
</head>
<body class="cython">
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.24</span></p>
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.30</span></p>
<p>
<span style="background-color: #FFFF00">Yellow lines</span> hint at Python interaction.<br />
Click on a line that starts with a "<code>+</code>" to see the C code that Cython generated for it.
@@ -493,15 +493,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyObject_GetAttrStr</span>(__pyx_t_1, __pyx_n_s_split);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 48, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_2, __pyx_tuple__159, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L1_error)</span>
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_2, __pyx_tuple__161, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
if (<span class='py_c_api'>PyDict_SetItem</span>(__pyx_d, __pyx_n_s_pymodule_parts, __pyx_t_1) &lt; 0) <span class='error_goto'>__PYX_ERR(0, 48, __pyx_L1_error)</span>
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
/* … */
__pyx_tuple__159 = <span class='py_c_api'>PyTuple_Pack</span>(1, __pyx_kp_u__158);<span class='error_goto'> if (unlikely(!__pyx_tuple__159)) __PYX_ERR(0, 48, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_tuple__159);
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_tuple__159);
__pyx_tuple__161 = <span class='py_c_api'>PyTuple_Pack</span>(1, __pyx_kp_u__160);<span class='error_goto'> if (unlikely(!__pyx_tuple__161)) __PYX_ERR(0, 48, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_tuple__161);
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_tuple__161);
</pre><pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">0049</span>: <span class="n">_appname</span> <span class="o">=</span> <span class="n">_pymodule_parts</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span></pre>
<pre class='cython code score-11 '> <span class='pyx_c_api'>__Pyx_GetModuleGlobalName</span>(__pyx_t_1, __pyx_n_s_pymodule_parts);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 49, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
@@ -740,15 +740,15 @@ static PyObject *__pyx_pf_6PyCafe_verify_handlepv(CYTHON_UNUSED PyObject *__pyx_
return __pyx_r;
}
/* … */
__pyx_tuple__160 = <span class='py_c_api'>PyTuple_Pack</span>(3, __pyx_n_s_func, __pyx_n_s_wrapper, __pyx_n_s_wrapper);<span class='error_goto'> if (unlikely(!__pyx_tuple__160)) __PYX_ERR(0, 88, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_tuple__160);
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_tuple__160);
__pyx_tuple__162 = <span class='py_c_api'>PyTuple_Pack</span>(3, __pyx_n_s_func, __pyx_n_s_wrapper, __pyx_n_s_wrapper);<span class='error_goto'> if (unlikely(!__pyx_tuple__162)) __PYX_ERR(0, 88, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_tuple__162);
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_tuple__162);
/* … */
__pyx_t_1 = PyCFunction_NewEx(&amp;__pyx_mdef_6PyCafe_1verify_handlepv, NULL, __pyx_n_s_PyCafe);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 88, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
if (<span class='py_c_api'>PyDict_SetItem</span>(__pyx_d, __pyx_n_s_verify_handlepv, __pyx_t_1) &lt; 0) <span class='error_goto'>__PYX_ERR(0, 88, __pyx_L1_error)</span>
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
__pyx_codeobj__161 = (PyObject*)<span class='pyx_c_api'>__Pyx_PyCode_New</span>(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__160, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PyCafe_pyx, __pyx_n_s_verify_handlepv, 88, __pyx_empty_bytes);<span class='error_goto'> if (unlikely(!__pyx_codeobj__161)) __PYX_ERR(0, 88, __pyx_L1_error)</span>
__pyx_codeobj__163 = (PyObject*)<span class='pyx_c_api'>__Pyx_PyCode_New</span>(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__162, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PyCafe_pyx, __pyx_n_s_verify_handlepv, 88, __pyx_empty_bytes);<span class='error_goto'> if (unlikely(!__pyx_codeobj__163)) __PYX_ERR(0, 88, __pyx_L1_error)</span>
/* … */
struct __pyx_obj_6PyCafe___pyx_scope_struct__verify_handlepv {
PyObject_HEAD
@@ -1601,7 +1601,7 @@ static int __pyx_pf_6PyCafe_6CyCafe___cinit__(struct __pyx_obj_6PyCafe_CyCafe *_
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
/* … */
__pyx_tuple__37 = <span class='py_c_api'>PyTuple_Pack</span>(1, __pyx_int_50858992);<span class='error_goto'> if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 241, __pyx_L1_error)</span>
__pyx_tuple__37 = <span class='py_c_api'>PyTuple_Pack</span>(1, __pyx_int_50988272);<span class='error_goto'> if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 241, __pyx_L1_error)</span>
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_tuple__37);
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_tuple__37);
</pre><pre class="cython line score-0">&#xA0;<span class="">0242</span>: </pre>
@@ -1994,8 +1994,8 @@ static PyObject *__pyx_pf_6PyCafe_6CyCafe_10CAFE_version(CYTHON_UNUSED struct __
}
</pre><pre class="cython line score-2" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">0281</span>: <span class="k">return</span> <span class="n">CAFE_VERSION</span></pre>
<pre class='cython code score-2 '> <span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_r);
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_kp_u_1_19_0_py38_gcc_7_5_0);
__pyx_r = __pyx_kp_u_1_19_0_py38_gcc_7_5_0;
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_kp_u_1_19_3_py38_gcc_7_5_0);
__pyx_r = __pyx_kp_u_1_19_3_py38_gcc_7_5_0;
goto __pyx_L0;
</pre><pre class="cython line score-0">&#xA0;<span class="">0282</span>: </pre>
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">0283</span>: <span class="k">def</span> <span class="nf">EPICS_version</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></pre>
@@ -2026,8 +2026,8 @@ static PyObject *__pyx_pf_6PyCafe_6CyCafe_12EPICS_version(CYTHON_UNUSED struct _
}
</pre><pre class="cython line score-2" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">0284</span>: <span class="k">return</span> <span class="n">EPICS_VERSION</span></pre>
<pre class='cython code score-2 '> <span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_r);
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_kp_u_7_0_6);
__pyx_r = __pyx_kp_u_7_0_6;
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_kp_u_7_0_7);
__pyx_r = __pyx_kp_u_7_0_7;
goto __pyx_L0;
</pre><pre class="cython line score-0">&#xA0;<span class="">0285</span>: </pre>
<pre class="cython line score-2" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">0286</span>: <span class="nd">@verify_handlepv</span></pre>

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by Cython 0.29.24 -->
<!-- Generated by Cython 0.29.30 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -293,22 +293,22 @@ td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.cython .hll { background-color: #ffffcc }
.cython { background: #f8f8f8; }
.cython .c { color: #408080; font-style: italic } /* Comment */
.cython .c { color: #3D7B7B; font-style: italic } /* Comment */
.cython .err { border: 1px solid #FF0000 } /* Error */
.cython .k { color: #008000; font-weight: bold } /* Keyword */
.cython .o { color: #666666 } /* Operator */
.cython .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #BC7A00 } /* Comment.Preproc */
.cython .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #408080; font-style: italic } /* Comment.Single */
.cython .cs { color: #408080; font-style: italic } /* Comment.Special */
.cython .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #9C6500 } /* Comment.Preproc */
.cython .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.cython .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.cython .gd { color: #A00000 } /* Generic.Deleted */
.cython .ge { font-style: italic } /* Generic.Emph */
.cython .gr { color: #FF0000 } /* Generic.Error */
.cython .gr { color: #E40000 } /* Generic.Error */
.cython .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.cython .gi { color: #00A000 } /* Generic.Inserted */
.cython .go { color: #888888 } /* Generic.Output */
.cython .gi { color: #008400 } /* Generic.Inserted */
.cython .go { color: #717171 } /* Generic.Output */
.cython .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.cython .gs { font-weight: bold } /* Generic.Strong */
.cython .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
@@ -321,15 +321,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .kt { color: #B00040 } /* Keyword.Type */
.cython .m { color: #666666 } /* Literal.Number */
.cython .s { color: #BA2121 } /* Literal.String */
.cython .na { color: #7D9029 } /* Name.Attribute */
.cython .na { color: #687822 } /* Name.Attribute */
.cython .nb { color: #008000 } /* Name.Builtin */
.cython .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.cython .no { color: #880000 } /* Name.Constant */
.cython .nd { color: #AA22FF } /* Name.Decorator */
.cython .ni { color: #999999; font-weight: bold } /* Name.Entity */
.cython .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.cython .ni { color: #717171; font-weight: bold } /* Name.Entity */
.cython .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.cython .nf { color: #0000FF } /* Name.Function */
.cython .nl { color: #A0A000 } /* Name.Label */
.cython .nl { color: #767600 } /* Name.Label */
.cython .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.cython .nt { color: #008000; font-weight: bold } /* Name.Tag */
.cython .nv { color: #19177C } /* Name.Variable */
@@ -346,11 +346,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .dl { color: #BA2121 } /* Literal.String.Delimiter */
.cython .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.cython .s2 { color: #BA2121 } /* Literal.String.Double */
.cython .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.cython .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.cython .sh { color: #BA2121 } /* Literal.String.Heredoc */
.cython .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.cython .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.cython .sx { color: #008000 } /* Literal.String.Other */
.cython .sr { color: #BB6688 } /* Literal.String.Regex */
.cython .sr { color: #A45A77 } /* Literal.String.Regex */
.cython .s1 { color: #BA2121 } /* Literal.String.Single */
.cython .ss { color: #19177C } /* Literal.String.Symbol */
.cython .bp { color: #008000 } /* Name.Builtin.Pseudo */
@@ -363,7 +363,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
</style>
</head>
<body class="cython">
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.24</span></p>
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.30</span></p>
<p>
<span style="background-color: #FFFF00">Yellow lines</span> hint at Python interaction.<br />
Click on a line that starts with a "<code>+</code>" to see the C code that Cython generated for it.

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by Cython 0.29.24 -->
<!-- Generated by Cython 0.29.30 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -293,22 +293,22 @@ td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.cython .hll { background-color: #ffffcc }
.cython { background: #f8f8f8; }
.cython .c { color: #408080; font-style: italic } /* Comment */
.cython .c { color: #3D7B7B; font-style: italic } /* Comment */
.cython .err { border: 1px solid #FF0000 } /* Error */
.cython .k { color: #008000; font-weight: bold } /* Keyword */
.cython .o { color: #666666 } /* Operator */
.cython .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #BC7A00 } /* Comment.Preproc */
.cython .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #408080; font-style: italic } /* Comment.Single */
.cython .cs { color: #408080; font-style: italic } /* Comment.Special */
.cython .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.cython .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.cython .cp { color: #9C6500 } /* Comment.Preproc */
.cython .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.cython .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.cython .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.cython .gd { color: #A00000 } /* Generic.Deleted */
.cython .ge { font-style: italic } /* Generic.Emph */
.cython .gr { color: #FF0000 } /* Generic.Error */
.cython .gr { color: #E40000 } /* Generic.Error */
.cython .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.cython .gi { color: #00A000 } /* Generic.Inserted */
.cython .go { color: #888888 } /* Generic.Output */
.cython .gi { color: #008400 } /* Generic.Inserted */
.cython .go { color: #717171 } /* Generic.Output */
.cython .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.cython .gs { font-weight: bold } /* Generic.Strong */
.cython .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
@@ -321,15 +321,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .kt { color: #B00040 } /* Keyword.Type */
.cython .m { color: #666666 } /* Literal.Number */
.cython .s { color: #BA2121 } /* Literal.String */
.cython .na { color: #7D9029 } /* Name.Attribute */
.cython .na { color: #687822 } /* Name.Attribute */
.cython .nb { color: #008000 } /* Name.Builtin */
.cython .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.cython .no { color: #880000 } /* Name.Constant */
.cython .nd { color: #AA22FF } /* Name.Decorator */
.cython .ni { color: #999999; font-weight: bold } /* Name.Entity */
.cython .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.cython .ni { color: #717171; font-weight: bold } /* Name.Entity */
.cython .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.cython .nf { color: #0000FF } /* Name.Function */
.cython .nl { color: #A0A000 } /* Name.Label */
.cython .nl { color: #767600 } /* Name.Label */
.cython .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.cython .nt { color: #008000; font-weight: bold } /* Name.Tag */
.cython .nv { color: #19177C } /* Name.Variable */
@@ -346,11 +346,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.cython .dl { color: #BA2121 } /* Literal.String.Delimiter */
.cython .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.cython .s2 { color: #BA2121 } /* Literal.String.Double */
.cython .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.cython .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.cython .sh { color: #BA2121 } /* Literal.String.Heredoc */
.cython .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.cython .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.cython .sx { color: #008000 } /* Literal.String.Other */
.cython .sr { color: #BB6688 } /* Literal.String.Regex */
.cython .sr { color: #A45A77 } /* Literal.String.Regex */
.cython .s1 { color: #BA2121 } /* Literal.String.Single */
.cython .ss { color: #19177C } /* Literal.String.Symbol */
.cython .bp { color: #008000 } /* Name.Builtin.Pseudo */
@@ -363,7 +363,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
</style>
</head>
<body class="cython">
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.24</span></p>
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.30</span></p>
<p>
<span style="background-color: #FFFF00">Yellow lines</span> hint at Python interaction.<br />
Click on a line that starts with a "<code>+</code>" to see the C code that Cython generated for it.

View File

@@ -48,6 +48,10 @@ cdef extern from "epicsMutex.h":
pass
cdef extern from "epicsTime.h":
ctypedef void throwError
cdef extern from "cadef.h":
ctypedef long chtype

14
build_py310_sls2.sh Normal file
View File

@@ -0,0 +1,14 @@
module unload gcc
module load gcc/7.5.0
rm -f PyCafeDefs.pxi
ln -s PyCafeDefs_py37.pxi PyCafeDefs.pxi
rm -f PyCafe.cpp
rm -f PyCafe.h
rm -f PyCafe.pxd
ln -s PyCafe_sls.pxd PyCafe.pxd
rm -f PyCafe.pyx
ln -s PyCafe_sls.pyx PyCafe.pyx
_EPICS_HOST_ARCH=${RHREL}-x86_64
source /opt/gfa/python 3.10
python setup_py38_sls2.py build_ext -b ./python3.10-sls2/lib/${_EPICS_HOST_ARCH}
cp examples.py ./python3.10-sls2/lib/${_EPICS_HOST_ARCH}

View File

@@ -1,5 +1,5 @@
module unload gcc
module load gcc/7.3.0
module load gcc/6.3.0
#rm -f PyCafe.cpp
#rm -f PyCafe.h
#rm -f PyCafe.pxd

View File

@@ -1,11 +1,15 @@
module unload gcc
module load gcc/7.3.0
#rm -f PyCafeDefs.pxi
#ln -s PyCafeDefs_py35.pxi PyCafeDefs.pxi
#rm -f PyCafe.cpp
#rm -f PyCafe.h
#rm -f PyCafe.pxd
#ln -s PyCafe_sls.pxd PyCafe.pxd
#rm -f PyCafe.pyx
#ln -s PyCafe_sls.pyx PyCafe.pyx
#ln -s PyCafe_sls_py35.pyx PyCafe.pyx
_EPICS_HOST_ARCH=${RHREL}-x86_64
source /opt/gfa/python 3.5
python setup_py35_sls2.py build_ext -b ./python3.5-sls2/lib/${EPICS_HOST_ARCH}
cp examples.py ./python3.5-sls2/lib/${EPICS_HOST_ARCH}
python setup_py35_sls2.py build_ext -b ./python3.5-sls2/lib/${_EPICS_HOST_ARCH}
cp examples.py ./python3.5-sls2/lib/${_EPICS_HOST_ARCH}

View File

@@ -6,6 +6,7 @@ rm -f PyCafe.pxd
ln -s PyCafe_sf.pxd PyCafe.pxd
rm -f PyCafe.pyx
ln -s PyCafe_sf.pyx PyCafe.pyx
_EPICS_HOST_ARCH=${RHREL}-x86_64
source /opt/gfa/python 3.7
python setup_py37_sf.py build_ext -b ./python3.7-sf/lib/${EPICS_HOST_ARCH}
cp examples.py ./python3.7-sf/lib/${EPICS_HOST_ARCH}
python setup_py37_sf.py build_ext -b ./python3.7-sf/lib/${_EPICS_HOST_ARCH}
cp examples.py ./python3.7-sf/lib/${_EPICS_HOST_ARCH}

View File

@@ -1,11 +1,14 @@
module unload gcc
module load gcc/7.3.0
rm -f PyCafeDefs.pxi
ln -s PyCafeDefs_py37.pxi PyCafeDefs.pxi
rm -f PyCafe.cpp
rm -f PyCafe.h
rm -f PyCafe.pxd
ln -s PyCafe_sls.pxd PyCafe.pxd
rm -f PyCafe.pyx
ln -s PyCafe_sls.pyx PyCafe.pyx
_EPICS_HOST_ARCH=${RHREL}-x86_64 #os.environ['EPICS_HOST_ARCH']
source /opt/gfa/python 3.7
python setup_py37_sls2.py build_ext -b ./python3.7-sls2/lib/${EPICS_HOST_ARCH}
cp examples.py ./python3.7-sls2/lib/${EPICS_HOST_ARCH}
python setup_py37_sls2.py build_ext -b ./python3.7-sls2/lib/${_EPICS_HOST_ARCH}
cp examples.py ./python3.7-sls2/lib/${_EPICS_HOST_ARCH}

View File

@@ -1,11 +1,14 @@
module unload gcc
module load gcc/7.5.0
rm -f PyCafeDefs.pxi
ln -s PyCafeDefs_py37.pxi PyCafeDefs.pxi
rm -f PyCafe.cpp
rm -f PyCafe.h
rm -f PyCafe.pxd
ln -s PyCafe_sls.pxd PyCafe.pxd
rm -f PyCafe.pyx
ln -s PyCafe_sls.pyx PyCafe.pyx
_EPICS_HOST_ARCH=${RHREL}-x86_64
source /opt/gfa/python 3.8
python setup_py38_sls2.py build_ext -b ./python3.8-sls2/lib/${EPICS_HOST_ARCH}
cp examples.py ./python3.8-sls2/lib/${EPICS_HOST_ARCH}
python setup_py38_sls2.py build_ext -b ./python3.8-sls2/lib/${_EPICS_HOST_ARCH}
cp examples.py ./python3.8-sls2/lib/${_EPICS_HOST_ARCH}

View File

@@ -5,11 +5,13 @@
##### CHANGE AS APPROPRIATE #################
#
_EPICS_HOST_ARCH=${RHREL}-x86_64
CAFE_CYCAFE_BASE=/opt/gfa/cafe/python/pycafe
INSTALL_PATH_PY= $(CAFE_CYCAFE_BASE)/cafe-1.18.0-gcc-7.3.0/lib/${EPICS_HOST_ARCH}
INSTALL_PATH_SF= $(CAFE_CYCAFE_BASE)/cafe-1.18.0-sf-gcc-7.3.0/lib/${EPICS_HOST_ARCH}
INSTALL_PATH_SLS2= $(CAFE_CYCAFE_BASE)/cafe-1.18.0-gcc-7.3.0/lib/${EPICS_HOST_ARCH}
INSTALL_PATH_PY= $(CAFE_CYCAFE_BASE)/cafe-1.19.3-gcc-7.3.0/lib/${_EPICS_HOST_ARCH}
INSTALL_PATH_SF= $(CAFE_CYCAFE_BASE)/cafe-1.19.3-sf-gcc-7.3.0/lib/${_EPICS_HOST_ARCH}
INSTALL_PATH_SLS2= $(CAFE_CYCAFE_BASE)/cafe-1.19.3-gcc-7.3.0/lib/${_EPICS_HOST_ARCH}
INSTALL_PATH_SLS2_PY38= $(CAFE_CYCAFE_BASE)/cafe-1.19.3-gcc-7.5.0/lib/${_EPICS_HOST_ARCH}
INSTALL_PATH_SLS2_PY310= $(CAFE_CYCAFE_BASE)/cafe-1.19.3-gcc-7.5.0/lib/${_EPICS_HOST_ARCH}
#############################################
.DEFAULT_GOAL := help
@@ -18,33 +20,44 @@ INSTALL_PATH_SLS2= $(CAFE_CYCAFE_BASE)/cafe-1.18.0-gcc-7.3.0/lib/${EPICS_HOST_AR
help:
@echo "Options for make: install_py37 install_py37_sf install_py37_sls2 install_py35 install_py35_sf"
install_py37: python3.7/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
install_py37: python3.7/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_PY)
cp python3.7/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_PY)
cp python3.7/lib/${EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_PY)
cp python3.7/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_PY)
cp python3.7/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_PY)
install_py35: python3.5/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
install_py35: python3.5/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_PY)
cp python3.5/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_PY)
cp python3.5/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_PY)
install_py37_sf: python3.7-sf/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
install_py37_sf: python3.7-sf/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SF)
cp python3.7-sf/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_SF)
cp python3.7-sf/lib/${EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SF)
cp python3.7-sf/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_SF)
cp python3.7-sf/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SF)
install_py35_sf: python3.5-sf/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
install_py35_sf: python3.5-sf/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SF)
cp python3.5-sf/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_SF)
cp python3.5-sf/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_SF)
install_py37_sls2: python3.7-sls2/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SLS2)
cp python3.7-sls2/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2)
cp python3.7-sls2/lib/${EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2)
install_py35_sls2: python3.5-sls2/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
install_py310_sls2: python3.10-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-310-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SLS2_PY310)
cp python3.10-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-310-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2_PY310)
cp python3.10-sls2/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2_PY310)
install_py38_sls2: python3.8-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-38-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SLS2_PY38)
cp python3.8-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-38-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2_PY38)
cp python3.8-sls2/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2_PY38)
install_py37_sls2: python3.7-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SLS2)
cp python3.5-sls2/lib/${EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2)
cp python3.5-sls2/lib/${EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2)
cp python3.7-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-37m-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2)
cp python3.7-sls2/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2)
install_py35_sls2: python3.5-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so
mkdir -p $(INSTALL_PATH_SLS2)
cp python3.5-sls2/lib/${_EPICS_HOST_ARCH}/PyCafe.cpython-35m-x86_64-linux-gnu.so $(INSTALL_PATH_SLS2)
cp python3.5-sls2/lib/${_EPICS_HOST_ARCH}/examples.py $(INSTALL_PATH_SLS2)
clean:
rm -f *.o

53
setup_py310_sls2.py Normal file
View File

@@ -0,0 +1,53 @@
import os
import sys
from distutils.core import setup
from distutils.extension import Extension
from Cython.Compiler.Main import default_options
default_options['emit_linenums'] = True
from Cython.Build import cythonize
from numpy import get_include
_GCC_VERSION='7.5.0'
_CAFE_VERSION='1.19.3-py310-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.7'
_EPICS_HOST_ARCH =os.environ['RHREL'] + '-x86_64'
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],
language="c++",
include_dirs=[ '/opt/gfa/python-3.10/latest/include/python3.10',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include/os/Linux',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include/compiler/gcc',
'/opt/gfa/cafe/boost/boost_1_61_0/include',
'/opt/gfa/cafe/boost/boost_1_61_0/include/boost',
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'/include',
'.', get_include()],
library_dirs=[ os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/lib/' +
_EPICS_HOST_ARCH,
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'/lib/' + _EPICS_HOST_ARCH,
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib',
'/opt/gfa/python-3.10/latest/lib'
],
runtime_library_dirs=[
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/lib/' +
_EPICS_HOST_ARCH,
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'/lib/' + _EPICS_HOST_ARCH,
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib'
],
libraries=['ca','Com','dl','cafe', 'Qt5Xml', 'Qt5Core'])
], annotate=True,
compiler_directives={'embedsignature': False, 'language_level': 3,
'c_string_type': 'str', 'c_string_encoding' : 'ascii',
'py2_import': False, 'warn.unreachable': False,
'remove_unreachable': False},
compile_time_env={'PY_VERSION_HEX':sys.hexversion,
'PY_EXT_C': True, 'BS_CAFE': False,
'CAFE_VERSION': _CAFE_VERSION, 'EPICS_VERSION': _EPICS_VERSION }
)
)

View File

@@ -10,7 +10,7 @@ from numpy import get_include
_GCC_VERSION='7.3.0'
_CAFE_VERSION='1.16.0-epics3-py35-gcc-' + _GCC_VERSION
_EPICS_VERSION='3.14.12'
_EPICS_HOST_ARCH = os.environ['EPICS_HOST_ARCH'] #'SL6-x86_64' #os.environ['EPICS_HOST_ARCH']
_EPICS_HOST_ARCH=os.environ['RHREL'] +'-x86_64' #os.environ['EPICS_HOST_ARCH'] #'SL6-x86_64'
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],

View File

@@ -8,9 +8,9 @@ from Cython.Build import cythonize
from numpy import get_include
_GCC_VERSION='7.3.0'
_CAFE_VERSION='1.16.0-py35-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.6'
_EPICS_HOST_ARCH ='RHEL7-x86_64' #os.environ['EPICS_HOST_ARCH']
_CAFE_VERSION='1.19.3-py35-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.7'
_EPICS_HOST_ARCH=os.environ['RHREL'] +'-x86_64' #os.environ['EPICS_HOST_ARCH']
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],
@@ -29,8 +29,7 @@ setup(
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'/lib/' + _EPICS_HOST_ARCH,
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib',
'/opt/gfa/python-3.5/latest/lib'
os.environ['PSI_PREFIX'] + '/Programming/gcc/' + _GCC_VERSION + '/lib'
],
runtime_library_dirs=[
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/lib/'

View File

@@ -7,44 +7,49 @@ default_options['emit_linenums'] = True
from Cython.Build import cythonize
from numpy import get_include
_CAFE_VERSION='1.14.5'
_EPICS_VERSION='3.14.12'
_GCC_VERSION='7.3.0'
_CAFE_VERSION='1.19.3-sf-py37-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.6'
_EPICS_HOST_ARCH =os.environ['RHREL'] + '-x86_64'
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],
language="c++",
include_dirs=[ '/opt/gfa/python-3.7/latest/include/python3.7m',
os.environ['EPICS'] + '/base/include',
os.environ['EPICS'] + '/base/include/os/Linux',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include/os/Linux',
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/include/compiler/gcc',
'/opt/gfa/cafe/boost/boost_1_61_0/include',
'/opt/gfa/cafe/boost/boost_1_61_0/include/boost',
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/include',
'/include',
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/include',
'/opt/gfa/zmq/curl-7.54.1/include',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/include',
'.', get_include()],
library_dirs=[ os.environ['EPICS'] + '/base/lib/' + os.environ['EPICS_HOST_ARCH'],
library_dirs=[ os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/lib/' +
_EPICS_HOST_ARCH,
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/lib/' + os.environ['EPICS_HOST_ARCH'],
'/lib/' + _EPICS_HOST_ARCH,
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0',
'/opt/gfa/zmq/curl-7.54.1/lib',
'/opt/gfa/python-3.7/latest/lib',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib'
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib',
'/opt/gfa/python-3.7/latest/lib'
],
runtime_library_dirs=[
os.environ['EPICS'] + '/base/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0',
'/opt/gfa/zmq/curl-7.54.1/lib',
'/opt/gfa/python-3.7/latest/lib',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib'
os.environ['EPICS'] + '/base-' + _EPICS_VERSION + '/lib/' +
_EPICS_HOST_ARCH,
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'/lib/' + _EPICS_HOST_ARCH,
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0',
'/opt/gfa/zmq/curl-7.54.1/lib',
'/opt/gfa/python-3.7/latest/lib',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib'
],
libraries=['ca','Com','dl','cafe'])
], annotate=True,

60
setup_py37_sf_epics3.py Normal file
View File

@@ -0,0 +1,60 @@
import os
import sys
from distutils.core import setup
from distutils.extension import Extension
from Cython.Compiler.Main import default_options
default_options['emit_linenums'] = True
from Cython.Build import cythonize
from numpy import get_include
_CAFE_VERSION='1.14.5'
_EPICS_VERSION='3.14.12'
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],
language="c++",
include_dirs=[ '/opt/gfa/python-3.7/latest/include/python3.7m',
os.environ['EPICS'] + '/base/include',
os.environ['EPICS'] + '/base/include/os/Linux',
'/opt/gfa/cafe/boost/boost_1_61_0/include',
'/opt/gfa/cafe/boost/boost_1_61_0/include/boost',
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/include',
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/include',
'/opt/gfa/zmq/curl-7.54.1/include',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/include',
'.', get_include()],
library_dirs=[ os.environ['EPICS'] + '/base/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0',
'/opt/gfa/zmq/curl-7.54.1/lib',
'/opt/gfa/python-3.7/latest/lib',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib'
],
runtime_library_dirs=[
os.environ['EPICS'] + '/base/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/cafe/cpp/cafe-' + _CAFE_VERSION +
'-sf-py37-gcc-7.3.0/lib/' + os.environ['EPICS_HOST_ARCH'],
'/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib',
'/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0',
'/opt/gfa/zmq/curl-7.54.1/lib',
'/opt/gfa/python-3.7/latest/lib',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib64',
os.environ['PSI_PREFIX'] + '/Programming/gcc/7.3.0/lib'
],
libraries=['ca','Com','dl','cafe'])
], annotate=True,
compiler_directives={'embedsignature': False, 'language_level': 3,
'c_string_type': 'str', 'c_string_encoding' : 'ascii',
'py2_import': False, 'warn.unreachable': False,
'remove_unreachable': False},
compile_time_env={'PY_VERSION_HEX':sys.hexversion,
'PY_EXT_C': True, 'BS_CAFE': True,
'CAFE_VERSION': _CAFE_VERSION,
'EPICS_VERSION': _EPICS_VERSION}
)
)

View File

@@ -8,9 +8,9 @@ from Cython.Build import cythonize
from numpy import get_include
_GCC_VERSION='7.3.0'
_CAFE_VERSION='1.18.0-py37-gcc-' + _GCC_VERSION
_CAFE_VERSION='1.19.3-py37-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.6'
_EPICS_HOST_ARCH ='RHEL7-x86_64' #os.environ['EPICS_HOST_ARCH']
_EPICS_HOST_ARCH =os.environ['RHREL'] + '-x86_64' #os.environ['EPICS_HOST_ARCH']
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],

View File

@@ -8,9 +8,9 @@ from Cython.Build import cythonize
from numpy import get_include
_GCC_VERSION='7.5.0'
_CAFE_VERSION='1.19.0-py38-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.6'
_EPICS_HOST_ARCH ='RHEL7-x86_64'
_CAFE_VERSION='1.19.3-py38-gcc-' + _GCC_VERSION
_EPICS_VERSION='7.0.7'
_EPICS_HOST_ARCH =os.environ['RHREL'] + '-x86_64'
setup(
ext_modules = cythonize([Extension('PyCafe',['PyCafe.pyx'],