Skip to content
This repository was archived by the owner on Feb 1, 2023. It is now read-only.

Commit 8736c42

Browse files
author
Release Manager
committed
Trac #31538: i386: openssl and tachyon attempt 64-bit build and fail
For example on `ubuntu-bionic-i386-minimal` https://github.com/mkoeppe/sage/runs/2161532075: `openssl` fails with: {{{ make depend && make _build_sw gcc -I. -Iinclude -Iapps/include -fPIC -pthread -m64 -Wa,--noexecstack -O2 -g -march=native -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSLDIR="\"/sage/local/openssl\"" -DENGINESDIR="\"/sage/local/lib64/engines-3\"" -DMODULESDIR="\"/sage/local/lib64/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG -MMD -MF apps/lib/libapps-lib- app_params.d.tmp -MT apps/lib/libapps-lib-app_params.o -c -o apps/lib /libapps-lib-app_params.o apps/lib/app_params.c In file included from /usr/lib/gcc/i686-linux-gnu/7/include- fixed/limits.h:194:0, from /usr/lib/gcc/i686-linux-gnu/7/include- fixed/syslimits.h:7, from /usr/lib/gcc/i686-linux-gnu/7/include- fixed/limits.h:34, from ./e_os.h:13, from apps/include/apps.h:13, from apps/lib/app_params.c:10: /usr/include/limits.h:26:10: fatal error: bits/libc-header-start.h: No such file or directory #include <bits/libc-header-start.h> ^~~~~~~~~~~~~~~~~~~~~~~~~~ }}} Same failure mode also for `tachyon` (https://github.com/mkoeppe/sage/runs/2177818373 for `ubuntu- bionic-i386-minimal`). Critical for Sage 9.3 because it stops us from seeing other build failures on `i386-minimal` platforms URL: https://trac.sagemath.org/31538 Reported by: mkoeppe Ticket author(s): Matthias Koeppe Reviewer(s): Dima Pasechnik
2 parents c7c058b + 6040e78 commit 8736c42

File tree

4 files changed

+24
-31
lines changed

4 files changed

+24
-31
lines changed

build/pkgs/configure/checksums.ini

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
tarball=configure-VERSION.tar.gz
2-
sha1=df2f6839c4a19b7d21c4f387df24596fcfa2b459
3-
md5=f307be6d68e25b3924cc93d2bcc9dc04
4-
cksum=1158861891
2+
sha1=a38ba439948866832495e453b2febed61a232256
3+
md5=72ad56533ec90f5bcec51d4005387f15
4+
cksum=2631020116
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6e084f9dbad96c3a166732efb36fe71acd2e7ba2
1+
1a6e82a160b277ae72ecfd7406060a28ab9c3eb4

build/pkgs/openssl/spkg-install.in

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
1-
if [ -z "$SAGE_LOCAL" ]; then
2-
echo >&2 "SAGE_LOCAL undefined ... exiting"
3-
echo >&2 "Maybe run 'sage --sh'?"
4-
exit 1
5-
fi
6-
1+
# -*- shell-script -*-
72
cd src
83

94
# ./config picks up these environment variables if they are set, instead of using uname components
@@ -12,26 +7,24 @@ unset RELEASE
127
unset SYSTEM
138
unset BUILD
149

15-
# Building on OS X Lion 64-bit seems to fail unless we build a 64-bit library.
10+
extra_config_args=
11+
target=$($CC -dumpmachine 2> /dev/null)
1612
echo
17-
echo "Configuring openssl..."
18-
./config --prefix="$SAGE_LOCAL" --openssldir="$SAGE_LOCAL"/openssl shared
13+
echo "Configuring openssl for target reported by $CC -dumpmachine: $target"
14+
case "$target" in
15+
# Trac #31538: On 64 bit kernels running a 32 bit system, use the target of
16+
# the configured compiler
17+
i?86-*linux*)
18+
extra_config_args="linux-x86"
19+
;;
20+
esac
1921

20-
echo "Building openssl..."
21-
$MAKE
22-
23-
if [ $? -ne 0 ]; then
24-
echo >&2 "Error building openssl."
25-
exit 1
26-
fi
27-
echo
22+
./config --prefix="$SAGE_LOCAL" --openssldir="$SAGE_LOCAL"/openssl shared $extra_config_args
2823

2924

25+
echo "Building openssl..."
26+
$MAKE || sdh_die "Error building openssl."
3027

3128
echo "Installing openssl..."
3229
# installing the docs fails often, skip
33-
$MAKE install_sw
34-
if [ $? -ne 0 ]; then
35-
echo >&2 "Error installing openssl."
36-
exit 1
37-
fi
30+
$MAKE install_sw || sdh_die "Error installing openssl."

build/pkgs/tachyon/spkg-install.in

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,20 +17,20 @@ case "$UNAME" in
1717
TARGET=bsd
1818
;;
1919
"Linux")
20-
case "`uname -m`" in
21-
i[3456]86)
20+
case "$($CC -dumpmachine)" in
21+
i[3456]86*)
2222
TARGET=linux-thr
2323
;;
24-
ia64)
24+
ia64*)
2525
TARGET=linux-ia64-thr
2626
;;
27-
amd64|x86_64)
27+
amd64*|x86_64*)
2828
TARGET=linux-64-thr
2929
;;
3030
ppc*|powerpc*)
3131
TARGET=linux-ppc
3232
;;
33-
armv6l|armv7l)
33+
armv6l*|armv7l*)
3434
TARGET=linux-arm-thr
3535
;;
3636
esac

0 commit comments

Comments
 (0)