hotspot/make/jprt.config
author tonyp
Tue, 26 Aug 2008 00:46:03 -0400
changeset 1391 617a461218bb
parent 986 04a2ec0a9ef5
child 2537 bc0063aa5b7f
permissions -rw-r--r--
6740930: G1: compilation failure with latest gcc Summary: Include DB fix to resolve a compilation issue with the latest gcc. Reviewed-by: iveresov, ysr
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     1
#!echo "This is not a shell script"
489c9b5090e2 Initial load
duke
parents:
diff changeset
     2
#
670
ddf3e9583f2f 6719955: Update copyright year
xdono
parents: 584
diff changeset
     3
# Copyright 2006-2008 Sun Microsystems, Inc.  All Rights Reserved.
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     4
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     5
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     6
# This code is free software; you can redistribute it and/or modify it
489c9b5090e2 Initial load
duke
parents:
diff changeset
     7
# under the terms of the GNU General Public License version 2 only, as
489c9b5090e2 Initial load
duke
parents:
diff changeset
     8
# published by the Free Software Foundation.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     9
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    10
# This code is distributed in the hope that it will be useful, but WITHOUT
489c9b5090e2 Initial load
duke
parents:
diff changeset
    11
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    12
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
489c9b5090e2 Initial load
duke
parents:
diff changeset
    13
# version 2 for more details (a copy is included in the LICENSE file that
489c9b5090e2 Initial load
duke
parents:
diff changeset
    14
# accompanied this code).
489c9b5090e2 Initial load
duke
parents:
diff changeset
    15
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    16
# You should have received a copy of the GNU General Public License version
489c9b5090e2 Initial load
duke
parents:
diff changeset
    17
# 2 along with this work; if not, write to the Free Software Foundation,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    18
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    19
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    20
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    21
# CA 95054 USA or visit www.sun.com if you need additional information or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    22
# have any questions.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    23
#  
489c9b5090e2 Initial load
duke
parents:
diff changeset
    24
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    25
489c9b5090e2 Initial load
duke
parents:
diff changeset
    26
#############################################################################
489c9b5090e2 Initial load
duke
parents:
diff changeset
    27
# Error
489c9b5090e2 Initial load
duke
parents:
diff changeset
    28
error() # message
489c9b5090e2 Initial load
duke
parents:
diff changeset
    29
{
489c9b5090e2 Initial load
duke
parents:
diff changeset
    30
  echo "ERROR: $1"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    31
  exit 6
489c9b5090e2 Initial load
duke
parents:
diff changeset
    32
}
489c9b5090e2 Initial load
duke
parents:
diff changeset
    33
# Directory must exist
489c9b5090e2 Initial load
duke
parents:
diff changeset
    34
dirMustExist() # dir name
489c9b5090e2 Initial load
duke
parents:
diff changeset
    35
{
489c9b5090e2 Initial load
duke
parents:
diff changeset
    36
  if [ ! -d "$1" ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
    37
    error "Directory for $2 does not exist: $1"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    38
  fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
    39
}
489c9b5090e2 Initial load
duke
parents:
diff changeset
    40
# File must exist
489c9b5090e2 Initial load
duke
parents:
diff changeset
    41
fileMustExist() # dir name
489c9b5090e2 Initial load
duke
parents:
diff changeset
    42
{
489c9b5090e2 Initial load
duke
parents:
diff changeset
    43
  if [ ! -f "$1" ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
    44
    error "File for $2 does not exist: $1"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    45
  fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
    46
}
489c9b5090e2 Initial load
duke
parents:
diff changeset
    47
#############################################################################
489c9b5090e2 Initial load
duke
parents:
diff changeset
    48
489c9b5090e2 Initial load
duke
parents:
diff changeset
    49
# Should be set by JPRT as the 3 basic inputs
489c9b5090e2 Initial load
duke
parents:
diff changeset
    50
bootdir="${ALT_BOOTDIR}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    51
slashjava="${ALT_SLASH_JAVA}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    52
jdk_import="${ALT_JDK_IMPORT_PATH}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    53
489c9b5090e2 Initial load
duke
parents:
diff changeset
    54
# Check input
489c9b5090e2 Initial load
duke
parents:
diff changeset
    55
dirMustExist "${bootdir}"    ALT_BOOTDIR
489c9b5090e2 Initial load
duke
parents:
diff changeset
    56
dirMustExist "${slashjava}"  ALT_SLASH_JAVA
489c9b5090e2 Initial load
duke
parents:
diff changeset
    57
dirMustExist "${jdk_import}" ALT_JDK_IMPORT_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
    58
489c9b5090e2 Initial load
duke
parents:
diff changeset
    59
# Uses 'uname -s', but only expect SunOS or Linux, assume Windows otherwise.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    60
osname=`uname -s`
489c9b5090e2 Initial load
duke
parents:
diff changeset
    61
if [ "${osname}" = SunOS ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
    62
   
489c9b5090e2 Initial load
duke
parents:
diff changeset
    63
    # SOLARIS: Sparc or X86
489c9b5090e2 Initial load
duke
parents:
diff changeset
    64
    osarch=`uname -p`
489c9b5090e2 Initial load
duke
parents:
diff changeset
    65
    if [ "${osarch}" = sparc ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
    66
	solaris_arch=sparc
489c9b5090e2 Initial load
duke
parents:
diff changeset
    67
    else
489c9b5090e2 Initial load
duke
parents:
diff changeset
    68
	solaris_arch=i386
489c9b5090e2 Initial load
duke
parents:
diff changeset
    69
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
    70
584
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    71
    if [ "${JPRT_SOLARIS_COMPILER_NAME}" != "" ] ; then
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    72
        compiler_name=${JPRT_SOLARIS_COMPILER_NAME}
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    73
    else
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    74
        if [ "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6"      -o \
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    75
             "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6u10"   -o \
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    76
             "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6perf" ] ; then
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    77
            # All jdk6 builds use SS11
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    78
            compiler_name=SS11
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    79
        else
986
04a2ec0a9ef5 6724668: Hotspot: Official change to Sun Studio 12 compilers on Solaris
ohair
parents: 670
diff changeset
    80
	    compiler_name=SS12
584
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    81
        fi
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    82
    fi
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    83
    
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    84
    # Get into path (make sure it matches ALT setting)
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 1
diff changeset
    85
    compiler_path=${slashjava}/devtools/${solaris_arch}/SUNWspro/${compiler_name}/bin
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    86
    dirMustExist "${compiler_path}" COMPILER_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
    87
    path4sdk=${compiler_path}
489c9b5090e2 Initial load
duke
parents:
diff changeset
    88
489c9b5090e2 Initial load
duke
parents:
diff changeset
    89
    # Add basic solaris system paths
489c9b5090e2 Initial load
duke
parents:
diff changeset
    90
    path4sdk=${path4sdk}:/usr/ccs/bin:/usr/ccs/lib:/usr/bin:/bin:/usr/sfw/bin
489c9b5090e2 Initial load
duke
parents:
diff changeset
    91
489c9b5090e2 Initial load
duke
parents:
diff changeset
    92
    # Get the previous JDK to be used to bootstrap the build
489c9b5090e2 Initial load
duke
parents:
diff changeset
    93
    path4sdk=${bootdir}/bin:${path4sdk}
489c9b5090e2 Initial load
duke
parents:
diff changeset
    94
489c9b5090e2 Initial load
duke
parents:
diff changeset
    95
    # Find GNU make
489c9b5090e2 Initial load
duke
parents:
diff changeset
    96
    make=/usr/sfw/bin/gmake
489c9b5090e2 Initial load
duke
parents:
diff changeset
    97
    if [ ! -f ${make} ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
    98
	make=/opt/sfw/bin/gmake
489c9b5090e2 Initial load
duke
parents:
diff changeset
    99
	if [ ! -f ${make} ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   100
	    make=${slashjava}/devtools/${solaris_arch}/bin/gnumake
489c9b5090e2 Initial load
duke
parents:
diff changeset
   101
        fi 
489c9b5090e2 Initial load
duke
parents:
diff changeset
   102
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   103
    fileMustExist "${make}" make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   104
489c9b5090e2 Initial load
duke
parents:
diff changeset
   105
    # File creation mask
489c9b5090e2 Initial load
duke
parents:
diff changeset
   106
    umask 002
489c9b5090e2 Initial load
duke
parents:
diff changeset
   107
489c9b5090e2 Initial load
duke
parents:
diff changeset
   108
elif [ "${osname}" = Linux ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   109
   
489c9b5090e2 Initial load
duke
parents:
diff changeset
   110
    # LINUX: X86, AMD64
489c9b5090e2 Initial load
duke
parents:
diff changeset
   111
    osarch=`uname -m`
489c9b5090e2 Initial load
duke
parents:
diff changeset
   112
    if [ "${osarch}" = i686 ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   113
	linux_arch=i586
489c9b5090e2 Initial load
duke
parents:
diff changeset
   114
    elif [ "${osarch}" = x86_64 ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   115
	linux_arch=amd64
489c9b5090e2 Initial load
duke
parents:
diff changeset
   116
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   117
489c9b5090e2 Initial load
duke
parents:
diff changeset
   118
    # Get the compilers into path (make sure it matches ALT setting)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   119
    compiler_path=/usr/bin
489c9b5090e2 Initial load
duke
parents:
diff changeset
   120
    dirMustExist "${compiler_path}" COMPILER_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   121
    path4sdk=${compiler_path}
489c9b5090e2 Initial load
duke
parents:
diff changeset
   122
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   123
    # Add basic paths
489c9b5090e2 Initial load
duke
parents:
diff changeset
   124
    path4sdk=${path4sdk}:/usr/bin:/bin:/usr/sbin:/sbin
489c9b5090e2 Initial load
duke
parents:
diff changeset
   125
489c9b5090e2 Initial load
duke
parents:
diff changeset
   126
    # Get the previous JDK to be used to bootstrap the build
489c9b5090e2 Initial load
duke
parents:
diff changeset
   127
    path4sdk=${bootdir}/bin:${path4sdk}
489c9b5090e2 Initial load
duke
parents:
diff changeset
   128
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   129
    # Find GNU make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   130
    make=/usr/bin/make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   131
    fileMustExist "${make}" make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   132
489c9b5090e2 Initial load
duke
parents:
diff changeset
   133
    umask 002
489c9b5090e2 Initial load
duke
parents:
diff changeset
   134
489c9b5090e2 Initial load
duke
parents:
diff changeset
   135
else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   136
489c9b5090e2 Initial load
duke
parents:
diff changeset
   137
    # Windows: Differs on CYGWIN vs. MKS, and the compiler available.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   138
    #   Also, blanks in pathnames gives GNU make headaches, so anything placed
489c9b5090e2 Initial load
duke
parents:
diff changeset
   139
    #   in any ALT_* variable should be the short windows dosname.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   140
   
489c9b5090e2 Initial load
duke
parents:
diff changeset
   141
    # WINDOWS: Install and use MKS or CYGWIN (should have already been done)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   142
    #   Assumption here is that you are in a shell window via MKS or cygwin.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   143
    #   MKS install should have defined the environment variable ROOTDIR.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   144
    #   We also need to figure out which one we have: X86, AMD64
489c9b5090e2 Initial load
duke
parents:
diff changeset
   145
    if [ "`echo ${PROCESSOR_IDENTIFIER} | fgrep AMD64`" != "" ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   146
	windows_arch=amd64
489c9b5090e2 Initial load
duke
parents:
diff changeset
   147
    else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   148
	windows_arch=i586
489c9b5090e2 Initial load
duke
parents:
diff changeset
   149
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   150
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   151
    # We need to determine if we are running a CYGWIN shell or an MKS shell
489c9b5090e2 Initial load
duke
parents:
diff changeset
   152
    #    (if uname isn't available, then it will be unix_toolset=unknown)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   153
    unix_toolset=unknown
489c9b5090e2 Initial load
duke
parents:
diff changeset
   154
    if [ "`uname -a | fgrep Cygwin`" = "" -a -d "${ROOTDIR}" ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   155
        # We kind of assume ROOTDIR is where MKS is and it's ok
489c9b5090e2 Initial load
duke
parents:
diff changeset
   156
        unix_toolset=MKS
489c9b5090e2 Initial load
duke
parents:
diff changeset
   157
        mkshome=`dosname -s "${ROOTDIR}"`
489c9b5090e2 Initial load
duke
parents:
diff changeset
   158
	# Utility to convert to short pathnames without spaces
489c9b5090e2 Initial load
duke
parents:
diff changeset
   159
	dosname="${mkshome}/mksnt/dosname -s"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   160
        # Most unix utilities are in the mksnt directory of ROOTDIR
489c9b5090e2 Initial load
duke
parents:
diff changeset
   161
        unixcommand_path="${mkshome}/mksnt"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   162
        path4sdk="${unixcommand_path}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   163
        dirMustExist "${unixcommand_path}" UNIXCOMMAND_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   164
	devtools_path="${slashjava}/devtools/win32/bin"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   165
	path4sdk="${devtools_path};${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   166
        dirMustExist "${devtools_path}" DEVTOOLS_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   167
        # Find GNU make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   168
        make="${devtools_path}/gnumake.exe"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   169
        fileMustExist "${make}" make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   170
    elif [ "`uname -a | fgrep Cygwin`" != "" -a -f /bin/cygpath ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   171
        # For CYGWIN, uname will have "Cygwin" in it, and /bin/cygpath should exist
489c9b5090e2 Initial load
duke
parents:
diff changeset
   172
        unix_toolset=CYGWIN
489c9b5090e2 Initial load
duke
parents:
diff changeset
   173
	# Utility to convert to short pathnames without spaces
489c9b5090e2 Initial load
duke
parents:
diff changeset
   174
	dosname="/usr/bin/cygpath -a -m -s"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   175
        # Most unix utilities are in the /usr/bin
489c9b5090e2 Initial load
duke
parents:
diff changeset
   176
        unixcommand_path="/usr/bin"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   177
        path4sdk="${unixcommand_path}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   178
        dirMustExist "${unixcommand_path}" UNIXCOMMAND_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   179
        # Find GNU make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   180
        make="${unixcommand_path}/make.exe"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   181
        fileMustExist "${make}" make
489c9b5090e2 Initial load
duke
parents:
diff changeset
   182
    else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   183
      echo "WARNING: Cannot figure out if this is MKS or CYGWIN"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   184
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   185
489c9b5090e2 Initial load
duke
parents:
diff changeset
   186
    # WINDOWS: Compiler setup (nasty part)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   187
    #   NOTE: You can use vcvars32.bat to set PATH, LIB, and INCLUDE.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   188
    #   NOTE: CYGWIN has a link.exe too, make sure the compilers are first
489c9b5090e2 Initial load
duke
parents:
diff changeset
   189
    if [ "${windows_arch}" = i586 ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   190
        # 32bit Windows compiler settings
489c9b5090e2 Initial load
duke
parents:
diff changeset
   191
        # VisualStudio .NET 2003 VC++ 7.1 (VS71COMNTOOLS should be defined)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   192
        vs_root=`${dosname} "${VS71COMNTOOLS}/../.."`
489c9b5090e2 Initial load
duke
parents:
diff changeset
   193
        # Fill in PATH, LIB, and INCLUDE (unset all others to make sure)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   194
        vc7_root="${vs_root}/Vc7"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   195
        compiler_path="${vc7_root}/bin"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   196
        platform_sdk="${vc7_root}/PlatformSDK"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   197
        # LIB and INCLUDE must use ; as a separator
489c9b5090e2 Initial load
duke
parents:
diff changeset
   198
        include4sdk="${vc7_root}/atlmfc/include"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   199
        include4sdk="${include4sdk};${vc7_root}/include"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   200
        include4sdk="${include4sdk};${platform_sdk}/include/prerelease"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   201
        include4sdk="${include4sdk};${platform_sdk}/include"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   202
        include4sdk="${include4sdk};${vs_root}/SDK/v1.1/include"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   203
        lib4sdk="${vc7_root}/atlmfc/lib"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   204
        lib4sdk="${lib4sdk};${vc7_root}/lib"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   205
        lib4sdk="${lib4sdk};${platform_sdk}/lib/prerelease"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   206
        lib4sdk="${lib4sdk};${platform_sdk}/lib"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   207
        lib4sdk="${lib4sdk};${vs_root}/SDK/v1.1/lib"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   208
        # Search path and DLL locating path
489c9b5090e2 Initial load
duke
parents:
diff changeset
   209
        #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
489c9b5090e2 Initial load
duke
parents:
diff changeset
   210
        path4sdk="${vs_root}/Common7/Tools/bin;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   211
	path4sdk="${vs_root}/SDK/v1.1/bin;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   212
        path4sdk="${vs_root}/Common7/Tools;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   213
	path4sdk="${vs_root}/Common7/Tools/bin/prerelease;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   214
        path4sdk="${vs_root}/Common7/IDE;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   215
	path4sdk="${compiler_path};${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   216
    elif [ "${windows_arch}" = amd64 ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   217
        # AMD64 64bit Windows compiler settings
489c9b5090e2 Initial load
duke
parents:
diff changeset
   218
	if [ "${MSSDK}" != "" ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   219
	    platform_sdk="${MSSDK}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   220
	else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   221
	    platform_sdk=`${dosname} "C:/Program Files/Microsoft Platform SDK/"`
489c9b5090e2 Initial load
duke
parents:
diff changeset
   222
	fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   223
	compiler_path="${platform_sdk}/Bin/win64/x86/AMD64"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   224
        # LIB and INCLUDE must use ; as a separator
489c9b5090e2 Initial load
duke
parents:
diff changeset
   225
        include4sdk="${platform_sdk}/Include"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   226
	include4sdk="${include4sdk};${platform_sdk}/Include/crt/sys"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   227
	include4sdk="${include4sdk};${platform_sdk}/Include/mfc"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   228
	include4sdk="${include4sdk};${platform_sdk}/Include/atl"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   229
	include4sdk="${include4sdk};${platform_sdk}/Include/crt"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   230
        lib4sdk="${platform_sdk}/Lib/AMD64"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   231
        lib4sdk="${lib4sdk};${platform_sdk}/Lib/AMD64/atlmfc"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   232
        # Search path and DLL locating path
489c9b5090e2 Initial load
duke
parents:
diff changeset
   233
        #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
489c9b5090e2 Initial load
duke
parents:
diff changeset
   234
        path4sdk="${platform_sdk}/bin;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   235
        path4sdk="${compiler_path};${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   236
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   237
    # Export LIB and INCLUDE
489c9b5090e2 Initial load
duke
parents:
diff changeset
   238
    unset lib
489c9b5090e2 Initial load
duke
parents:
diff changeset
   239
    unset Lib
489c9b5090e2 Initial load
duke
parents:
diff changeset
   240
    LIB="${lib4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   241
    export LIB
489c9b5090e2 Initial load
duke
parents:
diff changeset
   242
    unset include
489c9b5090e2 Initial load
duke
parents:
diff changeset
   243
    unset Include
489c9b5090e2 Initial load
duke
parents:
diff changeset
   244
    INCLUDE="${include4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   245
    export INCLUDE
489c9b5090e2 Initial load
duke
parents:
diff changeset
   246
    # Set the ALT variable
489c9b5090e2 Initial load
duke
parents:
diff changeset
   247
    dirMustExist "${compiler_path}" COMPILER_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   248
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   249
    # WINDOWS: Get the previous JDK to be used to bootstrap the build
489c9b5090e2 Initial load
duke
parents:
diff changeset
   250
    path4sdk="${bootdir}/bin;${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   251
489c9b5090e2 Initial load
duke
parents:
diff changeset
   252
    # Turn all \\ into /, remove duplicates and trailing /
489c9b5090e2 Initial load
duke
parents:
diff changeset
   253
    slash_path="`echo ${path4sdk} | sed -e 's@\\\\@/@g' -e 's@//@/@g' -e 's@/$@@' -e 's@/;@;@g'`"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   254
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   255
    # For windows, it's hard to know where the system is, so we just add this
489c9b5090e2 Initial load
duke
parents:
diff changeset
   256
    #    to PATH.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   257
    path4sdk="${slash_path};${PATH}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   258
    
489c9b5090e2 Initial load
duke
parents:
diff changeset
   259
    # Convert path4sdk to cygwin style
489c9b5090e2 Initial load
duke
parents:
diff changeset
   260
    if [ "${unix_toolset}" = CYGWIN ] ; then
489c9b5090e2 Initial load
duke
parents:
diff changeset
   261
	path4sdk="`/usr/bin/cygpath -p ${path4sdk}`"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   262
    fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   263
489c9b5090e2 Initial load
duke
parents:
diff changeset
   264
fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   265
489c9b5090e2 Initial load
duke
parents:
diff changeset
   266
# Export PATH setting
489c9b5090e2 Initial load
duke
parents:
diff changeset
   267
PATH="${path4sdk}"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   268
export PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   269
489c9b5090e2 Initial load
duke
parents:
diff changeset
   270
# Unset certain vars
489c9b5090e2 Initial load
duke
parents:
diff changeset
   271
unset LD_LIBRARY_PATH
489c9b5090e2 Initial load
duke
parents:
diff changeset
   272
unset LD_LIBRARY_PATH_32
489c9b5090e2 Initial load
duke
parents:
diff changeset
   273
unset LD_LIBRARY_PATH_64
489c9b5090e2 Initial load
duke
parents:
diff changeset
   274