guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 01/01: configure detects which set of prebuilt binaries


From: Andy Wingo
Subject: [Guile-commits] 01/01: configure detects which set of prebuilt binaries to use
Date: Tue, 14 Mar 2017 04:51:21 -0400 (EDT)

wingo pushed a commit to branch master
in repository guile.

commit c50c3a47b328c10780f4453b925a3e36d182c2bd
Author: Andy Wingo <address@hidden>
Date:   Tue Mar 14 09:43:50 2017 +0100

    configure detects which set of prebuilt binaries to use
    
    * configure.ac: Use detected endianness and word size to automatically
      select which set of prebuilt binaries to use.
    * meta/build-env.in (top_builddir):
    * meta/uninstalled-env.in (top_builddir): Update to use
      SCM_PREBUILT_BINARIES for prebuilt entry in GUILE_LOAD_COMPILED_PATH.
    * prebuilt/32-bit-big-endian:
    * prebuilt/32-bit-little-endian:
    * prebuilt/64-bit-little-endian: New links.
    * prebuilt/x86_64-pc-linux-gnu: Remove this link now that it's unneeded.
---
 configure.ac                  | 12 ++++++++++++
 meta/build-env.in             |  4 ++--
 meta/uninstalled-env.in       |  4 ++--
 prebuilt/32-bit-big-endian    |  1 +
 prebuilt/32-bit-little-endian |  1 +
 prebuilt/64-bit-little-endian |  1 +
 prebuilt/x86_64-pc-linux-gnu  |  1 -
 7 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/configure.ac b/configure.ac
index 24ee878..217364b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -631,6 +631,18 @@ AC_SUBST([SCM_I_GSC_T_UINTPTR])
 AC_SUBST([SCM_I_GSC_NEEDS_STDINT_H])
 AC_SUBST([SCM_I_GSC_NEEDS_INTTYPES_H])
 
+AC_MSG_CHECKING([for which prebuilt binary set to use during bootstrap])
+SCM_PREBUILT_BINARIES=
+case "$ac_cv_c_bigendian-$ac_cv_sizeof_void_p" in
+  yes-8) SCM_PREBUILT_BINARIES=64-bit-big-endian;;
+  yes-4) SCM_PREBUILT_BINARIES=32-bit-big-endian;;
+  no-8) SCM_PREBUILT_BINARIES=64-bit-little-endian;;
+  no-4) SCM_PREBUILT_BINARIES=32-bit-little-endian;;
+  *) AC_MSG_ERROR([Unexpected endianness+pointer size combination.])
+esac
+AC_MSG_RESULT($SCM_PREBUILT_BINARIES)
+AC_SUBST([SCM_PREBUILT_BINARIES])
+
 AC_HEADER_STDC
 AC_HEADER_TIME
 AC_HEADER_SYS_WAIT
diff --git a/meta/build-env.in b/meta/build-env.in
index b271d0b..27e6043 100644
--- a/meta/build-env.in
+++ b/meta/build-env.in
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-#      Copyright (C) 2003, 2006, 2008-2012, 2016 Free Software Foundation
+#      Copyright (C) 2003, 2006, 2008-2012, 2016, 2017 Free Software Foundation
 #
 #   This file is part of GNU Guile.
 #
@@ -54,7 +54,7 @@ then
         
GUILE_LOAD_PATH="$GUILE_LOAD_PATH:${top_builddir}/module:${top_builddir}/guile-readline"
     fi
     export GUILE_LOAD_PATH
-    
GUILE_LOAD_COMPILED_PATH="${top_builddir}/module:${top_builddir}/bootstrap:${top_srcdir}/prebuilt/@host@:${top_builddir}/guile-readline"
+    
GUILE_LOAD_COMPILED_PATH="${top_builddir}/module:${top_builddir}/bootstrap:${top_srcdir}/prebuilt/@SCM_PREBUILT_BINARIES@:${top_builddir}/guile-readline"
     export GUILE_LOAD_COMPILED_PATH
 
     # Don't look in installed dirs for guile modules
diff --git a/meta/uninstalled-env.in b/meta/uninstalled-env.in
index ff32902..ed932d0 100644
--- a/meta/uninstalled-env.in
+++ b/meta/uninstalled-env.in
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-#      Copyright (C) 2003, 2006, 2008, 2009, 2010, 2011, 2012, 2015 Free 
Software Foundation
+#      Copyright (C) 2003, 2006, 2008, 2009, 2010, 2011, 2012, 2015, 2017 Free 
Software Foundation
 #
 #   This file is part of GUILE.
 #
@@ -80,7 +80,7 @@ then
     fi
     export GUILE_LOAD_PATH
 
-    for d in "/prebuilt/@host@" "/bootstrap" "/module" "/guile-readline"
+    for d in "/prebuilt/@SCM_PREBUILT_BINARIES@" "/bootstrap" "/module" 
"/guile-readline"
     do
         # This hair prevents double inclusion.
         # The ":" prevents prefix aliasing.
diff --git a/prebuilt/32-bit-big-endian b/prebuilt/32-bit-big-endian
new file mode 120000
index 0000000..3b619a6
--- /dev/null
+++ b/prebuilt/32-bit-big-endian
@@ -0,0 +1 @@
+mips-unknown-linux-gnu
\ No newline at end of file
diff --git a/prebuilt/32-bit-little-endian b/prebuilt/32-bit-little-endian
new file mode 120000
index 0000000..63f12a0
--- /dev/null
+++ b/prebuilt/32-bit-little-endian
@@ -0,0 +1 @@
+i686-pc-linux-gnu
\ No newline at end of file
diff --git a/prebuilt/64-bit-little-endian b/prebuilt/64-bit-little-endian
new file mode 120000
index 0000000..8dd176f
--- /dev/null
+++ b/prebuilt/64-bit-little-endian
@@ -0,0 +1 @@
+x86_64-unknown-linux-gnu
\ No newline at end of file
diff --git a/prebuilt/x86_64-pc-linux-gnu b/prebuilt/x86_64-pc-linux-gnu
deleted file mode 120000
index 7ef2cbd..0000000
--- a/prebuilt/x86_64-pc-linux-gnu
+++ /dev/null
@@ -1 +0,0 @@
-./x86_64-unknown-linux-gnu
\ No newline at end of file



reply via email to

[Prev in Thread] Current Thread [Next in Thread]