1 From 1ef6bdaeb0463a208a14e5d90646ce337df738fc Mon Sep 17 00:00:00 2001
2 From: Romain Naour <romain.naour@smile.fr>
3 Date: Sun, 1 Apr 2018 15:38:55 +0200
4 Subject: [PATCH] configure.in: convert AC_RUN_IFELSE to AC_CHECK_MEMBERS
6 With AC_CHECK_MEMBERS, we don't need to compile and run a test program
7 to check if a daq structure element is defined.
9 Also check DAQ_Data_Channel_Params_t with params.flags
11 typedef struct _DAQ_Data_Channel_Params_t
13 unsigned flags; /* DAQ_DATA_CHANNEL_* flags*/
14 unsigned timeout_ms;/* timeout of the data channel in milliseconds */
15 unsigned length; /* [Future] length of the data associated with the data channel */
16 uint8_t* data; /* [Future] opaque data blob to return with the data channel */
17 } DAQ_Data_Channel_Params_t;
19 https://github.com/Xiche/libdaq/blob/master/api/daq_common.h
21 Signed-off-by: Romain Naour <romain.naour@smile.fr>
22 Cc: Sergio Prado <sergio.prado@e-labworks.com>
24 configure.in | 143 +++++++++++++++++------------------------------------------
25 1 file changed, 41 insertions(+), 102 deletions(-)
27 diff --git a/configure.in b/configure.in
28 index 938409f..571322b 100644
31 @@ -718,17 +718,11 @@ fi
32 AC_CHECK_FUNCS([daq_hup_apply] [daq_acquire_with_meta] [daq_dp_add_dc])
34 AC_MSG_CHECKING([for daq real addresses])
42 - hdr.n_real_dPort = 0;
44 -[have_daq_real_addresses="yes"],
45 -[have_daq_real_addresses="no"])
47 +AC_CHECK_MEMBERS([DAQ_PktHdr_t hdr.n_real_dPort],
48 + [have_daq_real_addresses="yes"],
49 + [have_daq_real_addresses="no"],
50 + [[#include <daq.h>]])
51 AC_MSG_RESULT($have_daq_real_addresses)
52 if test "x$have_daq_real_addresses" = "xyes"; then
53 AC_DEFINE([HAVE_DAQ_REAL_ADDRESSES],[1],
54 @@ -756,17 +750,11 @@ if test "x$ac_cv_func_daq_dp_add_dc" = "xyes"; then
57 AC_MSG_CHECKING([for daq address space ID])
65 - hdr.address_space_id = 0;
67 -[have_daq_address_space_id="yes"],
68 -[have_daq_address_space_id="no"])
70 +AC_CHECK_MEMBERS([DAQ_PktHdr_t hdr.address_space_id],
71 + [have_daq_address_space_id="yes"],
72 + [have_daq_address_space_id="no"],
73 + [[#include <daq.h>]])
74 AC_MSG_RESULT($have_daq_address_space_id)
75 if test "x$have_daq_address_space_id" = "xyes"; then
76 AC_DEFINE([HAVE_DAQ_ADDRESS_SPACE_ID],[1],
77 @@ -774,17 +762,10 @@ if test "x$have_daq_address_space_id" = "xyes"; then
80 AC_MSG_CHECKING([for daq flow ID])
90 -[have_daq_flow_id="yes"],
91 -[have_daq_flow_id="no"])
92 +AC_CHECK_MEMBERS([DAQ_PktHdr_t hdr.flow_id],
93 + [have_daq_flow_id="yes"],
94 + [have_daq_flow_id="no"],
95 + [[#include <daq.h>]])
96 AC_MSG_RESULT($have_daq_flow_id)
97 if test "x$have_daq_flow_id" = "xyes"; then
98 AC_DEFINE([HAVE_DAQ_FLOW_ID],[1],
99 @@ -792,19 +773,10 @@ if test "x$have_daq_flow_id" = "xyes"; then
102 AC_MSG_CHECKING([for daq extended flow modifiers])
114 -[have_daq_ext_modflow="yes"],
115 -[have_daq_ext_modflow="no"])
116 +AC_CHECK_MEMBERS([DAQ_ModFlow_t mod.type, DAQ_ModFlow_t mod.length, DAQ_ModFlow_t mod.value],
117 + [have_daq_ext_modflow="yes"],
118 + [have_daq_ext_modflow="no"],
119 + [[#include <daq.h>]])
120 AC_MSG_RESULT($have_daq_ext_modflow)
121 if test "x$have_daq_ext_modflow" = "xyes"; then
122 CCONFIGFLAGS="${CCONFIGFLAGS} -DHAVE_DAQ_EXT_MODFLOW"
123 @@ -813,19 +785,11 @@ if test "x$have_daq_ext_modflow" = "xyes"; then
126 AC_MSG_CHECKING([for daq query flow])
133 - DAQ_QueryFlow_t mod;
138 -[have_daq_queryflow="yes"],
139 -[have_daq_queryflow="no"])
141 +AC_CHECK_MEMBERS([DAQ_QueryFlow_t mod.type, DAQ_QueryFlow_t mod.length, DAQ_QueryFlow_t mod.value],
142 + [have_daq_queryflow="yes"],
143 + [have_daq_queryflow="no"],
144 + [[#include <daq.h>]])
145 AC_MSG_RESULT($have_daq_queryflow)
146 if test "x$have_daq_queryflow" = "xyes"; then
147 CCONFIGFLAGS="${CCONFIGFLAGS} -DHAVE_DAQ_QUERYFLOW"
148 @@ -834,16 +798,11 @@ if test "x$have_daq_queryflow" = "xyes"; then
151 AC_MSG_CHECKING([for daq data channel flags])
158 - DAQ_Data_Channel_Params_t params;
160 -[have_daq_data_channel_flags="yes"],
161 -[have_daq_data_channel_flags="no"])
163 +AC_CHECK_MEMBERS([DAQ_Data_Channel_Params_t params.flags],
164 + [have_daq_data_channel_flags="yes"],
165 + [have_daq_data_channel_flags="no"],
166 + [[#include <daq.h>]])
167 AC_MSG_RESULT($have_daq_data_channel_flags)
168 if test "x$have_daq_data_channel_flags" = "xyes"; then
169 CCONFIGFLAGS="${CCONFIGFLAGS} -DHAVE_DAQ_DATA_CHANNEL_PARAMS"
170 @@ -852,17 +811,10 @@ if test "x$have_daq_data_channel_flags" = "xyes"; then
173 AC_MSG_CHECKING([for separate IP versions on pinhole endpoints])
180 - DAQ_DP_key_t dpKey;
183 -[have_daq_data_channel_separate_ip_versions="yes"],
184 -[have_daq_data_channel_separate_ip_versions="no"])
185 +AC_CHECK_MEMBERS([DAQ_DP_key_t dpKey.src_af],
186 + [have_daq_data_channel_separate_ip_versions="yes"],
187 + [have_daq_data_channel_separate_ip_versions="no"],
188 + [[#include <daq.h>]])
189 AC_MSG_RESULT($have_daq_data_channel_separate_ip_versions)
190 if test "x$have_daq_data_channel_separate_ip_versions" = "xyes"; then
191 CCONFIGFLAGS="${CCONFIGFLAGS} -DHAVE_DAQ_DATA_CHANNEL_SEPARATE_IP_VERSIONS"
192 @@ -889,17 +841,10 @@ if test "x$have_daq_verdict_retry" = "xyes"; then
195 AC_MSG_CHECKING([for daq packet trace])
203 - hdr.flags = DAQ_PKT_FLAG_TRACE_ENABLED;
205 -[have_daq_packet_trace="yes"],
206 -[have_daq_packet_trace="no"])
207 +AC_CHECK_MEMBERS([DAQ_PktHdr_t hdr.flags],
208 + [have_daq_packet_trace="yes"],
209 + [have_daq_packet_trace="no"],
210 + [[#include <daq.h>]])
211 AC_MSG_RESULT($have_daq_packet_trace)
212 if test "x$have_daq_packet_trace" = "xyes"; then
213 AC_DEFINE([HAVE_DAQ_PKT_TRACE],[1],
214 @@ -909,17 +854,11 @@ else
217 AC_MSG_CHECKING([for daq verdict reason])
225 - fl.type = DAQ_MODFLOW_TYPE_VER_REASON;
227 -[have_daq_verdict_reason="yes"],
228 -[have_daq_verdict_reason="no"])
230 +AC_CHECK_MEMBERS([DAQ_ModFlow_t fl.type],
231 + [have_daq_verdict_reason="yes"],
232 + [have_daq_verdict_reason="no"],
233 + [[#include <daq.h>]])
234 AC_MSG_RESULT($have_daq_verdict_reason)
235 if test "x$have_daq_verdict_reason" = "xyes"; then
236 AC_DEFINE([HAVE_DAQ_VERDICT_REASON],[1],