diff options
author | Nicholas Clark <nick@ccl4.org> | 2013-08-23 16:32:08 +0200 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2013-08-28 11:01:09 +0200 |
commit | 16e6698bf53cbe5099ca8f3c5f608acd20d7d210 (patch) | |
tree | cf2a17fcd923bb4e6cccea7873bff9f752d5d075 /hints | |
parent | c47d1a661f01f02ad5b41aa6275b11a9bd5a1dd2 (diff) | |
download | perl-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.sh | 59 | ||||
-rw-r--r-- | hints/mirbsd.sh | 59 | ||||
-rw-r--r-- | hints/openbsd.sh | 59 |
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 |