summaryrefslogtreecommitdiff
path: root/hints
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2013-08-23 16:32:08 +0200
committerNicholas Clark <nick@ccl4.org>2013-08-28 11:01:09 +0200
commit16e6698bf53cbe5099ca8f3c5f608acd20d7d210 (patch)
treecf2a17fcd923bb4e6cccea7873bff9f752d5d075 /hints
parentc47d1a661f01f02ad5b41aa6275b11a9bd5a1dd2 (diff)
downloadperl-16e6698bf53cbe5099ca8f3c5f608acd20d7d210.tar.gz
Move the thrice-repeated "64bitint is buggy?" test from hints to Configure.
OpenBSD and its two* forks each have the same "is 64 bit int support buggy?" test code as a callback unit duplicated in their hints files. As the code is portable C, there seems to be no harm in moving it to Configure, and running the test on all platforms. This reduces code duplication, and will reduce it further if another OpenBSD fork appears. * This week.
Diffstat (limited to 'hints')
-rw-r--r--hints/bitrig.sh59
-rw-r--r--hints/mirbsd.sh59
-rw-r--r--hints/openbsd.sh59
3 files changed, 0 insertions, 177 deletions
diff --git a/hints/bitrig.sh b/hints/bitrig.sh
index 5cb55a7d70..88155da450 100644
--- a/hints/bitrig.sh
+++ b/hints/bitrig.sh
@@ -77,65 +77,6 @@ $define|true|[yY]*)
esac
EOCBU
-# This script UU/use64bitint.cbu will get 'called-back' by Configure
-# after it has prompted the user for whether to use 64-bitness.
-cat > UU/use64bitint.cbu <<'EOCBU'
-case "$use64bitint" in
-$define|true|[yY]*)
- echo " "
- echo "Checking if your C library has broken 64-bit functions..." >&4
- $cat >check.c <<EOCP
-#include <stdio.h>
-typedef $uquadtype myULL;
-int main (void)
-{
- struct {
- double d;
- myULL u;
- } *p, test[] = {
- {4294967303.15, 4294967303ULL},
- {4294967294.2, 4294967294ULL},
- {4294967295.7, 4294967295ULL},
- {0.0, 0ULL}
- };
- for (p = test; p->u; p++) {
- myULL x = (myULL)p->d;
- if (x != p->u) {
- printf("buggy\n");
- return 0;
- }
- }
- printf("ok\n");
- return 0;
-}
-EOCP
- set check
- if eval $compile_ok; then
- libcquad=`./check`
- echo "Your C library's 64-bit functions are $libcquad."
- else
- echo "(I can't seem to compile the test program.)"
- echo "Assuming that your C library's 64-bit functions are ok."
- libcquad="ok"
- fi
- $rm -f check.c check
-
- case "$libcquad" in
- buggy*)
- cat >&4 <<EOM
-
-*** You have a C library with broken 64-bit functions.
-*** 64-bit support does not work reliably in this configuration.
-*** Please rerun Configure without -Duse64bitint and/or -Dusemorebits.
-*** Cannot continue, aborting.
-
-EOM
- exit 1
- ;;
- esac
-esac
-EOCBU
-
# When building in the OpenBSD tree we use different paths
# This is only part of the story, the rest comes from config.over
case "$openbsd_distribution" in
diff --git a/hints/mirbsd.sh b/hints/mirbsd.sh
index cd041b9fee..64b9e94914 100644
--- a/hints/mirbsd.sh
+++ b/hints/mirbsd.sh
@@ -54,65 +54,6 @@ $define|true|[yY]*)
esac
EOCBU
-# This script UU/use64bitint.cbu will get 'called-back' by Configure
-# after it has prompted the user for whether to use 64-bitness.
-cat > UU/use64bitint.cbu <<'EOCBU'
-case "$use64bitint" in
-$define|true|[yY]*)
- echo " "
- echo "Checking if your C library has broken 64-bit functions..." >&4
- $cat >check.c <<EOCP
-#include <stdio.h>
-typedef $uquadtype myULL;
-int main (void)
-{
- struct {
- double d;
- myULL u;
- } *p, test[] = {
- {4294967303.15, 4294967303ULL},
- {4294967294.2, 4294967294ULL},
- {4294967295.7, 4294967295ULL},
- {0.0, 0ULL}
- };
- for (p = test; p->u; p++) {
- myULL x = (myULL)p->d;
- if (x != p->u) {
- printf("buggy\n");
- return 0;
- }
- }
- printf("ok\n");
- return 0;
-}
-EOCP
- set check
- if eval $compile_ok; then
- libcquad=$(./check)
- echo "Your C library's 64-bit functions are $libcquad."
- else
- echo "(I can't seem to compile the test program.)"
- echo "Assuming that your C library's 64-bit functions are ok."
- libcquad="ok"
- fi
- $rm -f check.c check
-
- case "$libcquad" in
- buggy*)
- cat >&4 <<EOM
-
-*** You have a C library with broken 64-bit functions.
-*** 64-bit support does not work reliably in this configuration.
-*** Please rerun Configure without -Duse64bitint and/or -Dusemorebits.
-*** Cannot continue, aborting.
-
-EOM
- exit 1
- ;;
- esac
-esac
-EOCBU
-
# When building in the MirOS tree we use different paths
# This is only part of the story, the rest comes from config.over
case "$mirbsd_distribution" in
diff --git a/hints/openbsd.sh b/hints/openbsd.sh
index f13091deee..fd29c71b6f 100644
--- a/hints/openbsd.sh
+++ b/hints/openbsd.sh
@@ -129,65 +129,6 @@ $define|true|[yY]*)
esac
EOCBU
-# This script UU/use64bitint.cbu will get 'called-back' by Configure
-# after it has prompted the user for whether to use 64-bitness.
-cat > UU/use64bitint.cbu <<'EOCBU'
-case "$use64bitint" in
-$define|true|[yY]*)
- echo " "
- echo "Checking if your C library has broken 64-bit functions..." >&4
- $cat >check.c <<EOCP
-#include <stdio.h>
-typedef $uquadtype myULL;
-int main (void)
-{
- struct {
- double d;
- myULL u;
- } *p, test[] = {
- {4294967303.15, 4294967303ULL},
- {4294967294.2, 4294967294ULL},
- {4294967295.7, 4294967295ULL},
- {0.0, 0ULL}
- };
- for (p = test; p->u; p++) {
- myULL x = (myULL)p->d;
- if (x != p->u) {
- printf("buggy\n");
- return 0;
- }
- }
- printf("ok\n");
- return 0;
-}
-EOCP
- set check
- if eval $compile_ok; then
- libcquad=`./check`
- echo "Your C library's 64-bit functions are $libcquad."
- else
- echo "(I can't seem to compile the test program.)"
- echo "Assuming that your C library's 64-bit functions are ok."
- libcquad="ok"
- fi
- $rm -f check.c check
-
- case "$libcquad" in
- buggy*)
- cat >&4 <<EOM
-
-*** You have a C library with broken 64-bit functions.
-*** 64-bit support does not work reliably in this configuration.
-*** Please rerun Configure without -Duse64bitint and/or -Dusemorebits.
-*** Cannot continue, aborting.
-
-EOM
- exit 1
- ;;
- esac
-esac
-EOCBU
-
# When building in the OpenBSD tree we use different paths
# This is only part of the story, the rest comes from config.over
case "$openbsd_distribution" in