more uniform platform settings;
authorwenzelm
Wed Mar 01 11:26:19 2017 +0100 (2017-03-01)
changeset 65073b5bf76cf2b4e
parent 65072 36c650d1a90d
child 65074 df14a0e872e6
more uniform platform settings;
Admin/PLATFORMS
NEWS
lib/scripts/isabelle-platform
     1.1 --- a/Admin/PLATFORMS	Tue Feb 28 23:12:52 2017 +0100
     1.2 +++ b/Admin/PLATFORMS	Wed Mar 01 11:26:19 2017 +0100
     1.3 @@ -57,12 +57,13 @@
     1.4  libraries, so native x86_64-linux needs to be used by default, despite
     1.5  its doubled space requirements for Poly/ML heaps.  For Mac OS X, the
     1.6  x86-darwin personality usually works seamlessly for C/C++ programs,
     1.7 -but the Java platform is only available for x86_64-darwin.
     1.8 +but the Java platform is always for x86_64-darwin.
     1.9  
    1.10  Add-on executables are expected to work without manual user
    1.11  configuration.  Each component settings script needs to determine the
    1.12  platform details appropriately.
    1.13  
    1.14 +
    1.15  The Isabelle settings environment provides the following variables to
    1.16  help configuring platform-dependent tools:
    1.17  
    1.18 @@ -77,6 +78,21 @@
    1.19  
    1.20    "${ISABELLE_PLATFORM64:-$ISABELLE_PLATFORM32}"
    1.21  
    1.22 +
    1.23 +There is a second set of settings for native Windows (instead of the
    1.24 +POSIX emulation of Cygwin used before):
    1.25 +
    1.26 +  ISABELLE_WINDOWS_PLATFORM64  (potentially empty)
    1.27 +  ISABELLE_WINDOWS_PLATFORM32
    1.28 +  ISABELLE_WINDOWS_PLATFORM
    1.29 +
    1.30 +It can be used like this:
    1.31 +
    1.32 +  "${ISABELLE_WINDOWS_PLATFORM:-$ISABELLE_PLATFORM}"
    1.33 +
    1.34 +  "${ISABELLE_WINDOWS_PLATFORM64:-${ISABELLE_WINDOWS_PLATFORM32:-${ISABELLE_PLATFORM64:-$ISABELLE_PLATFORM32}}}"
    1.35 +
    1.36 +
    1.37  Moreover note that ML and JVM usually have a different idea of the
    1.38  platform, depending on the respective binaries that are actually run.
    1.39  Poly/ML 5.6.x performs best in 32 bit mode, even for large
     2.1 --- a/NEWS	Tue Feb 28 23:12:52 2017 +0100
     2.2 +++ b/NEWS	Wed Mar 01 11:26:19 2017 +0100
     2.3 @@ -142,10 +142,11 @@
     2.4  * ISABELLE_SCALA_BUILD_OPTIONS has been renamed to
     2.5  ISABELLE_SCALAC_OPTIONS. Rare INCOMPATIBILITY.
     2.6  
     2.7 -* Isabelle settings ISABELLE_WINDOWS_PLATFORM32 and
     2.8 -ISABELLE_WINDOWS_PLATFORM64 indicate the native Windows platform
     2.9 -(independently of the Cygwin installation). This is analogous to
    2.10 -ISABELLE_PLATFORM32 and ISABELLE_PLATFORM64.
    2.11 +* Isabelle settings ISABELLE_WINDOWS_PLATFORM,
    2.12 +ISABELLE_WINDOWS_PLATFORM32, ISABELLE_WINDOWS_PLATFORM64 indicate the
    2.13 +native Windows platform (independently of the Cygwin installation). This
    2.14 +is analogous to ISABELLE_PLATFORM, ISABELLE_PLATFORM32,
    2.15 +ISABELLE_PLATFORM64.
    2.16  
    2.17  
    2.18  
     3.1 --- a/lib/scripts/isabelle-platform	Tue Feb 28 23:12:52 2017 +0100
     3.2 +++ b/lib/scripts/isabelle-platform	Wed Mar 01 11:26:19 2017 +0100
     3.3 @@ -44,6 +44,7 @@
     3.4        i?86 | x86_64)
     3.5          ISABELLE_PLATFORM32=x86-cygwin
     3.6          if [ "$PROCESSOR_ARCHITECTURE" = "AMD64" -o "$PROCESSOR_ARCHITEW6432" = "AMD64" ]; then
     3.7 +          ISABELLE_WINDOWS_PLATFORM32="x86-windows"
     3.8            ISABELLE_WINDOWS_PLATFORM64="x86_64-windows"
     3.9          else
    3.10            ISABELLE_WINDOWS_PLATFORM32="x86-windows"
    3.11 @@ -62,4 +63,4 @@
    3.12  esac
    3.13  
    3.14  ISABELLE_PLATFORM="$ISABELLE_PLATFORM32"
    3.15 -
    3.16 +ISABELLE_WINDOWS_PLATFORM="$ISABELLE_WINDOWS_PLATFORM32"