Skip to content

Commit 35fe25c

Browse files
author
Erlend E. Aasland
committed
Make PY_CHECK_CC_WARNING more efficient
1 parent 6e0fa90 commit 35fe25c

File tree

2 files changed

+71
-61
lines changed

2 files changed

+71
-61
lines changed

configure

Lines changed: 63 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -7084,15 +7084,16 @@ yes)
70847084
CFLAGS_NODIST="$CFLAGS_NODIST -std=c99"
70857085

70867086

7087+
70877088
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can add -Wextra" >&5
70887089
$as_echo_n "checking if we can add -Wextra... " >&6; }
7089-
7090-
py_cflags=$CFLAGS
7091-
CFLAGS="$CFLAGS -Wextra -Werror"
7092-
if ${ac_cv_enable_extra_warning+:} false; then :
7090+
if ${ac_cv_enable_extra_warning+:} false; then :
70937091
$as_echo_n "(cached) " >&6
70947092
else
7095-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7093+
7094+
py_cflags=$CFLAGS
7095+
CFLAGS="$CFLAGS -Wextra -Werror"
7096+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
70967097
/* end confdefs.h. */
70977098

70987099
int
@@ -7109,10 +7110,11 @@ else
71097110
ac_cv_enable_extra_warning=no
71107111
fi
71117112
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7113+
CFLAGS=$py_cflags
71127114

71137115
fi
7114-
7115-
CFLAGS=$py_cflags
7116+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_extra_warning" >&5
7117+
$as_echo "$ac_cv_enable_extra_warning" >&6; }
71167118
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_extra_warning" >&5
71177119
$as_echo "$ac_cv_enable_extra_warning" >&6; }
71187120

@@ -7196,15 +7198,16 @@ fi
71967198
*icc*) :
71977199
ac_cv_disable_unused_result_warning=no
71987200

7201+
71997202
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can disable $CC unused-result warning" >&5
72007203
$as_echo_n "checking if we can disable $CC unused-result warning... " >&6; }
7201-
7202-
py_cflags=$CFLAGS
7203-
CFLAGS="$CFLAGS -Wunused-result -Werror"
7204-
if ${ac_cv_disable_unused_result_warning+:} false; then :
7204+
if ${ac_cv_disable_unused_result_warning+:} false; then :
72057205
$as_echo_n "(cached) " >&6
72067206
else
7207-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7207+
7208+
py_cflags=$CFLAGS
7209+
CFLAGS="$CFLAGS -Wunused-result -Werror"
7210+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
72087211
/* end confdefs.h. */
72097212

72107213
int
@@ -7221,10 +7224,11 @@ else
72217224
ac_cv_disable_unused_result_warning=no
72227225
fi
72237226
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7227+
CFLAGS=$py_cflags
72247228

72257229
fi
7226-
7227-
CFLAGS=$py_cflags
7230+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_unused_result_warning" >&5
7231+
$as_echo "$ac_cv_disable_unused_result_warning" >&6; }
72287232
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_unused_result_warning" >&5
72297233
$as_echo "$ac_cv_disable_unused_result_warning" >&6; }
72307234

@@ -7238,15 +7242,16 @@ esac
72387242
fi
72397243

72407244

7245+
72417246
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can disable $CC unused-parameter warning" >&5
72427247
$as_echo_n "checking if we can disable $CC unused-parameter warning... " >&6; }
7243-
7244-
py_cflags=$CFLAGS
7245-
CFLAGS="$CFLAGS -Wunused-parameter -Werror"
7246-
if ${ac_cv_disable_unused_parameter_warning+:} false; then :
7248+
if ${ac_cv_disable_unused_parameter_warning+:} false; then :
72477249
$as_echo_n "(cached) " >&6
72487250
else
7249-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7251+
7252+
py_cflags=$CFLAGS
7253+
CFLAGS="$CFLAGS -Wunused-parameter -Werror"
7254+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
72507255
/* end confdefs.h. */
72517256

72527257
int
@@ -7263,10 +7268,11 @@ else
72637268
ac_cv_disable_unused_parameter_warning=no
72647269
fi
72657270
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7271+
CFLAGS=$py_cflags
72667272

72677273
fi
7268-
7269-
CFLAGS=$py_cflags
7274+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_unused_parameter_warning" >&5
7275+
$as_echo "$ac_cv_disable_unused_parameter_warning" >&6; }
72707276
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_unused_parameter_warning" >&5
72717277
$as_echo "$ac_cv_disable_unused_parameter_warning" >&6; }
72727278

@@ -7276,15 +7282,16 @@ $as_echo "$ac_cv_disable_unused_parameter_warning" >&6; }
72767282
fi
72777283

72787284

7285+
72797286
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can disable $CC missing-field-initializers warning" >&5
72807287
$as_echo_n "checking if we can disable $CC missing-field-initializers warning... " >&6; }
7281-
7282-
py_cflags=$CFLAGS
7283-
CFLAGS="$CFLAGS -Wmissing-field-initializers -Werror"
7284-
if ${ac_cv_disable_missing_field_initializers_warning+:} false; then :
7288+
if ${ac_cv_disable_missing_field_initializers_warning+:} false; then :
72857289
$as_echo_n "(cached) " >&6
72867290
else
7287-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7291+
7292+
py_cflags=$CFLAGS
7293+
CFLAGS="$CFLAGS -Wmissing-field-initializers -Werror"
7294+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
72887295
/* end confdefs.h. */
72897296

72907297
int
@@ -7301,10 +7308,11 @@ else
73017308
ac_cv_disable_missing_field_initializers_warning=no
73027309
fi
73037310
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7311+
CFLAGS=$py_cflags
73047312

73057313
fi
7306-
7307-
CFLAGS=$py_cflags
7314+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_missing_field_initializers_warning" >&5
7315+
$as_echo "$ac_cv_disable_missing_field_initializers_warning" >&6; }
73087316
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_disable_missing_field_initializers_warning" >&5
73097317
$as_echo "$ac_cv_disable_missing_field_initializers_warning" >&6; }
73107318

@@ -7314,15 +7322,16 @@ $as_echo "$ac_cv_disable_missing_field_initializers_warning" >&6; }
73147322
fi
73157323

73167324

7325+
73177326
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can enable $CC sign-compare warning" >&5
73187327
$as_echo_n "checking if we can enable $CC sign-compare warning... " >&6; }
7319-
7320-
py_cflags=$CFLAGS
7321-
CFLAGS="$CFLAGS -Wsign-compare -Werror"
7322-
if ${ac_cv_enable_sign_compare_warning+:} false; then :
7328+
if ${ac_cv_enable_sign_compare_warning+:} false; then :
73237329
$as_echo_n "(cached) " >&6
73247330
else
7325-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7331+
7332+
py_cflags=$CFLAGS
7333+
CFLAGS="$CFLAGS -Wsign-compare -Werror"
7334+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
73267335
/* end confdefs.h. */
73277336

73287337
int
@@ -7339,10 +7348,11 @@ else
73397348
ac_cv_enable_sign_compare_warning=no
73407349
fi
73417350
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7351+
CFLAGS=$py_cflags
73427352

73437353
fi
7344-
7345-
CFLAGS=$py_cflags
7354+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_sign_compare_warning" >&5
7355+
$as_echo "$ac_cv_enable_sign_compare_warning" >&6; }
73467356
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_sign_compare_warning" >&5
73477357
$as_echo "$ac_cv_enable_sign_compare_warning" >&6; }
73487358

@@ -7352,15 +7362,16 @@ $as_echo "$ac_cv_enable_sign_compare_warning" >&6; }
73527362
fi
73537363

73547364

7365+
73557366
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can enable $CC unreachable-code warning" >&5
73567367
$as_echo_n "checking if we can enable $CC unreachable-code warning... " >&6; }
7357-
7358-
py_cflags=$CFLAGS
7359-
CFLAGS="$CFLAGS -Wunreachable-code -Werror"
7360-
if ${ac_cv_enable_unreachable_code_warning+:} false; then :
7368+
if ${ac_cv_enable_unreachable_code_warning+:} false; then :
73617369
$as_echo_n "(cached) " >&6
73627370
else
7363-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7371+
7372+
py_cflags=$CFLAGS
7373+
CFLAGS="$CFLAGS -Wunreachable-code -Werror"
7374+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
73647375
/* end confdefs.h. */
73657376

73667377
int
@@ -7377,10 +7388,11 @@ else
73777388
ac_cv_enable_unreachable_code_warning=no
73787389
fi
73797390
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7391+
CFLAGS=$py_cflags
73807392

73817393
fi
7382-
7383-
CFLAGS=$py_cflags
7394+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_unreachable_code_warning" >&5
7395+
$as_echo "$ac_cv_enable_unreachable_code_warning" >&6; }
73847396
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_unreachable_code_warning" >&5
73857397
$as_echo "$ac_cv_enable_unreachable_code_warning" >&6; }
73867398

@@ -7402,15 +7414,16 @@ $as_echo "$ac_cv_enable_unreachable_code_warning" >&6; }
74027414
fi
74037415

74047416

7417+
74057418
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can enable $CC strict-prototypes warning" >&5
74067419
$as_echo_n "checking if we can enable $CC strict-prototypes warning... " >&6; }
7407-
7408-
py_cflags=$CFLAGS
7409-
CFLAGS="$CFLAGS -Wstrict-prototypes -Werror"
7410-
if ${ac_cv_enable_strict_prototypes_warning+:} false; then :
7420+
if ${ac_cv_enable_strict_prototypes_warning+:} false; then :
74117421
$as_echo_n "(cached) " >&6
74127422
else
7413-
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7423+
7424+
py_cflags=$CFLAGS
7425+
CFLAGS="$CFLAGS -Wstrict-prototypes -Werror"
7426+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
74147427
/* end confdefs.h. */
74157428

74167429
int
@@ -7427,10 +7440,11 @@ else
74277440
ac_cv_enable_strict_prototypes_warning=no
74287441
fi
74297442
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7443+
CFLAGS=$py_cflags
74307444

74317445
fi
7432-
7433-
CFLAGS=$py_cflags
7446+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_strict_prototypes_warning" >&5
7447+
$as_echo "$ac_cv_enable_strict_prototypes_warning" >&6; }
74347448
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_strict_prototypes_warning" >&5
74357449
$as_echo "$ac_cv_enable_strict_prototypes_warning" >&6; }
74367450

configure.ac

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1643,19 +1643,15 @@ AC_SUBST(UNIVERSAL_ARCH_FLAGS)
16431643

16441644
dnl PY_CHECK_CC_WARNING(ENABLE, WARNING, [MSG])
16451645
AC_DEFUN([PY_CHECK_CC_WARNING], [
1646-
AC_MSG_CHECKING(m4_ifblank([$3], [if we can $1 $CC $2 warning], [$3]))
16471646
AS_VAR_PUSHDEF([py_var], [ac_cv_$1_]m4_normalize($2)[_warning])
1648-
AS_VAR_COPY([py_cflags], [CFLAGS])
1649-
AS_VAR_SET([CFLAGS], ["$CFLAGS -W$2 -Werror"])
1650-
AC_CACHE_VAL(
1651-
[py_var],
1652-
[AC_COMPILE_IFELSE(
1653-
[AC_LANG_PROGRAM([[]], [[]])],
1654-
[AS_VAR_SET([py_var], [yes])],
1655-
[AS_VAR_SET([py_var], [no])],
1656-
)]
1657-
)
1658-
AS_VAR_COPY([CFLAGS], [py_cflags])
1647+
AC_CACHE_CHECK(m4_ifblank([$3], [if we can $1 $CC $2 warning], [$3]), [py_var], [
1648+
AS_VAR_COPY([py_cflags], [CFLAGS])
1649+
AS_VAR_SET([CFLAGS], ["$CFLAGS -W$2 -Werror"])
1650+
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
1651+
[AS_VAR_SET([py_var], [yes])],
1652+
[AS_VAR_SET([py_var], [no])])
1653+
AS_VAR_COPY([CFLAGS], [py_cflags])
1654+
])
16591655
AC_MSG_RESULT([$py_var])
16601656
AS_VAR_POPDEF([py_var])
16611657
])

0 commit comments

Comments
 (0)