Syntax error with set-vs-env.sh: - building jdk8u on Windows (cygwin)
Magnus Ihse Bursie
magnus.ihse.bursie at oracle.com
Wed Sep 19 08:00:36 UTC 2018
On 2018-09-17 14:13, Martijn Verburg wrote:
> Hi Erik,
>
> Thanks for the info, inside that shell script we noticed the concatenation
> of PATH with whatever the host already had got corrupted (because of the
> way we set it). We've fixed our ansible scripts locally and the build is
> now going through again.
Good that you could solve it.
If you have any suggestions on how to make the script more robust in
case other users have a PATH like yours, I'm all ears.
/Magnus
>
> Cheers,
> Martijn
>
>
> On Fri, 14 Sep 2018 at 18:11, Erik Joelsson <erik.joelsson at oracle.com>
> wrote:
>
>> That code was rather recently touched in 8u when backporting support for
>> devkits and newer versions of Visual Studio. What is the contents of the
>> generated set-vs-env.sh?
>>
>> /Erik
>>
>>
>> On 2018-09-14 05:29, Martijn Verburg wrote:
>>> Hi all,
>>>
>>> AdoptOpenJDK recently started seeing this error (full configure details
>>> below the horizontal), has anyone else experienced this:
>>>
>>> configure: Setting extracted environment variables
>>>
>> /cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src/build/windows-x86_64-normal-server-release/vs-env/
>>> syntax error near unexpected token `('
>>>
>> /cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src/build/windows-x86_64-normal-server-release/vs-env/set-vs-env.sh:
>>> line 2: `VS_INCLUDE="C:\Program Files (x86)\Microsoft Visual Studio
>>> 10.0\VC\INCLUDE;C:\Program Files (x86)\Microsoft Visual Studio
>>> 10.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Microsoft
>>> SDKs\Windows\v7.0A\include; "'
>>> configure exiting with result code 2
>>>
>>> Looks like a typical shell expansion bug but it's only recently cropped
>> up.
>>> ------------
>>>
>>>
>> [C:\Users\jenkins\workspace\build-scripts\jobs\jdk8u\jdk8u-windows-x64-hotspot]
>>> Running shell script
>>> + ./build-farm/make-adopt-build-farm.sh
>>> BUILD TYPE:
>>> VERSION: jdk8u
>>> ARCHITECTURE x64
>>> VARIANT: hotspot
>>> OS: windows
>>> Detecting boot jdk for: jdk8u
>>> Found build version: 8
>>> Boot jdk version: 7
>>> Boot jdk: /cygdrive/c/openjdk/jdk7
>>> Filename will be: OpenJDK8U_x64_windows_hotspot_2018-09-14-10-51.zip
>>> Starting
>>>
>> /cygdrive/c/Users/jenkins/workspace/build-scripts/jobs/jdk8u/jdk8u-windows-x64-hotspot/build-farm/../makejdk-any-platform.sh
>>> to configure, build (Adopt)OpenJDK binary
>>> Working dir is ./build/
>>> # ============================
>>> # OPENJDK BUILD CONFIGURATION:
>>> # ============================
>>> BUILD_CONFIG[BRANCH]="dev"
>>>
>> BUILD_CONFIG[BUILD_FULL_NAME]="cygwin_nt-6.1-x86_64-normal-server-release"
>>> BUILD_CONFIG[BUILD_VARIANT]=""
>>> BUILD_CONFIG[CLEAN_DOCKER_BUILD]="false"
>>> BUILD_CONFIG[CLEAN_GIT_REPO]="true"
>>> BUILD_CONFIG[CONFIGURE_ARGS_FOR_ANY_PLATFORM]=""
>>> BUILD_CONFIG[CONTAINER_NAME]="openjdk_container"
>>> BUILD_CONFIG[COPY_MACOSX_FREE_FONT_LIB_FOR_JDK_FLAG]="false"
>>> BUILD_CONFIG[COPY_MACOSX_FREE_FONT_LIB_FOR_JRE_FLAG]="false"
>>> BUILD_CONFIG[DOCKER]="docker"
>>> BUILD_CONFIG[DOCKER_FILE_PATH]=""
>>> BUILD_CONFIG[DOCKER_SOURCE_VOLUME_NAME]="openjdk-source-volume"
>>> BUILD_CONFIG[FREETYPE]="true"
>>> BUILD_CONFIG[FREETYPE_DIRECTORY]=""
>>> BUILD_CONFIG[FREETYPE_FONT_BUILD_TYPE_PARAM]=""
>>> BUILD_CONFIG[FREETYPE_FONT_VERSION]="2.4.0"
>>> BUILD_CONFIG[JDK_BOOT_DIR]="/cygdrive/c/openjdk/jdk7"
>>> BUILD_CONFIG[JDK_PATH]="j2sdk-image"
>>> BUILD_CONFIG[JRE_PATH]="j2re-image"
>>> BUILD_CONFIG[JVM_VARIANT]="server"
>>> BUILD_CONFIG[KEEP_CONTAINER]="false"
>>> BUILD_CONFIG[MAKE_ARGS_FOR_ANY_PLATFORM]=""
>>> BUILD_CONFIG[MAKE_COMMAND_NAME]="make"
>>> BUILD_CONFIG[NUM_PROCESSORS]="1"
>>> BUILD_CONFIG[OPENJDK_BUILD_NUMBER]=""
>>> BUILD_CONFIG[OPENJDK_CORE_VERSION]="jdk8"
>>> BUILD_CONFIG[OPENJDK_FOREST_NAME]="jdk8u"
>>> BUILD_CONFIG[OPENJDK_SOURCE_DIR]="src"
>>> BUILD_CONFIG[OPENJDK_UPDATE_VERSION]=""
>>> BUILD_CONFIG[OS_ARCHITECTURE]="x86_64"
>>> BUILD_CONFIG[OS_KERNEL_NAME]="cygwin_nt-6.1"
>>> BUILD_CONFIG[REPOSITORY]="adoptopenjdk/openjdk-jdk8u"
>>> BUILD_CONFIG[REUSE_CONTAINER]="true"
>>> BUILD_CONFIG[SHALLOW_CLONE_OPTION]="--depth=1"
>>> BUILD_CONFIG[SIGN]="false"
>>> BUILD_CONFIG[TAG]=""
>>> BUILD_CONFIG[TARGET_DIR]="target/"
>>>
>> BUILD_CONFIG[TARGET_FILE_NAME]="OpenJDK8U_x64_windows_hotspot_2018-09-14-10-51.zip"
>>> BUILD_CONFIG[TMP_CONTAINER_NAME]="openjdk-copy-src"
>>> BUILD_CONFIG[TMP_SPACE_BUILD]="true"
>>> BUILD_CONFIG[USER_SUPPLIED_CONFIGURE_ARGS]="
>>> --with-freetype-include=/cygdrive/c/openjdk/freetype/include
>>> --with-freetype-lib=/cygdrive/c/openjdk/freetype/lib64 --disable-ccache"
>>> BUILD_CONFIG[USE_DOCKER]="false"
>>> BUILD_CONFIG[USE_SSH]="false"
>>> BUILD_CONFIG[WORKING_DIR]="./build/"
>>>
>> BUILD_CONFIG[WORKSPACE_DIR]="/cygdrive/c/Users/jenkins/workspace/build-scripts/jobs/jdk8u/jdk8u-windows-x64-hotspot/workspace"
>>> JDK Image folder name: j2sdk-image
>>> JRE Image folder name: j2re-image
>>> [debug] COPY_MACOSX_FREE_FONT_LIB_FOR_JDK_FLAG=false
>>> [debug] COPY_MACOSX_FREE_FONT_LIB_FOR_JRE_FLAG=false
>>>
>>> <snip git clone>
>>>
>>> OpenJDK repo tag is jdk8u181-b13
>>> Version: 181 13
>>> Completed configuring the version string parameter, config args are now:
>>> --with-milestone=adoptopenjdk --with-build-number=13
>>> Overriding JDK_BOOT_DIR, set to /cygdrive/c/openjdk/jdk7
>>> Boot dir set to /cygdrive/c/openjdk/jdk7
>>> Windows or Windows-like environment detected, skipping configuring
>>> environment for custom Boot JDK and other 'configure' settings.
>>> Completed configuring the version string parameter, config args are now:
>>> --with-milestone=adoptopenjdk --with-build-number=13
>>> --with-boot-jdk=/cygdrive/c/openjdk/jdk7
>>> --with-freetype-include=/cygdrive/c/openjdk/freetype/include
>>> --with-freetype-lib=/cygdrive/c/openjdk/freetype/lib64 --disable-ccache
>>> Configuring command and using the pre-built config params...
>>> Should have the source, I'm at /tmp/tmp.wVFLippfrz/workspace/build/src
>>> Currently at '/tmp/tmp.wVFLippfrz/workspace/build/src'
>>> Running ./configure with arguments 'bash ./configure
>>> --with-milestone=adoptopenjdk --with-build-number=13
>>> --with-boot-jdk=/cygdrive/c/openjdk/jdk7
>>> --with-freetype-include=/cygdrive/c/openjdk/freetype/include
>>> --with-freetype-lib=/cygdrive/c/openjdk/freetype/lib64 --disable-ccache '
>>> Should have the source, I'm at /tmp/tmp.wVFLippfrz/workspace/build/src
>>> Currently at '/tmp/tmp.wVFLippfrz/workspace/build/src'
>>> Running generated-configure.sh
>>> configure: Configuration created at Fri Sep 14 10:57:32 CUT 2018.
>>> configure: configure script generated at timestamp 1535545082.
>>> checking for basename... /usr/bin/basename
>>> checking for bash... /usr/bin/bash
>>> checking for cat... /usr/bin/cat
>>> checking for chmod... /usr/bin/chmod
>>> checking for cmp... /usr/bin/cmp
>>> checking for comm... /usr/bin/comm
>>> checking for cp... /usr/bin/cp
>>> checking for cut... /usr/bin/cut
>>> checking for date... /usr/bin/date
>>> checking for gdiff... no
>>> checking for diff... /usr/bin/diff
>>> checking for dirname... /usr/bin/dirname
>>> checking for echo... /usr/bin/echo
>>> checking for expr... /usr/bin/expr
>>> checking for file... /usr/bin/file
>>> checking for find... /usr/bin/find
>>> checking for head... /usr/bin/head
>>> checking for ln... /usr/bin/ln
>>> checking for ls... /usr/bin/ls
>>> checking for mkdir... /usr/bin/mkdir
>>> checking for mktemp... /usr/bin/mktemp
>>> checking for mv... /usr/bin/mv
>>> checking for nawk... no
>>> checking for gawk... /usr/bin/gawk
>>> checking for printf... /usr/bin/printf
>>> checking for rm... /usr/bin/rm
>>> checking for sh... /usr/bin/sh
>>> checking for sort... /usr/bin/sort
>>> checking for tail... /usr/bin/tail
>>> checking for tar... /usr/bin/tar
>>> checking for tee... /usr/bin/tee
>>> checking for touch... /usr/bin/touch
>>> checking for tr... /usr/bin/tr
>>> checking for uname... /usr/bin/uname
>>> checking for uniq... /usr/bin/uniq
>>> checking for wc... /usr/bin/wc
>>> checking for which... /usr/bin/which
>>> checking for xargs... /usr/bin/xargs
>>> checking for gawk... gawk
>>> checking for grep that handles long lines and -e... /usr/bin/grep
>>> checking for egrep... /usr/bin/grep -E
>>> checking for fgrep... /usr/bin/grep -F
>>> checking for a sed that does not truncate output... /usr/bin/sed
>>> checking for cygpath... /usr/bin/cygpath
>>> checking for greadlink... no
>>> checking for readlink... /usr/bin/readlink
>>> checking for df... /usr/bin/df
>>> checking for SetFile... no
>>> checking for cpio... /usr/bin/cpio
>>> checking build system type... x86_64-unknown-cygwin
>>> checking host system type... x86_64-unknown-cygwin
>>> checking target system type... x86_64-unknown-cygwin
>>> checking openjdk-build os-cpu... windows-x86_64
>>> checking openjdk-target os-cpu... windows-x86_64
>>> checking compilation type... native
>>> checking cygwin release... 2.10.0(0.325/5/3)
>>> checking cygwin root directory as unix-style path... /cygdrive/c/cygwin64
>>> checking what kind of 'find' is first on the PATH... unix style
>>> checking for top-level directory...
>> /tmp/tmp.wVFLippfrz/workspace/build/src
>>> configure: Rewriting CURDIR to
>>> "/cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src"
>>> configure: Rewriting TOPDIR to
>>> "/cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src"
>>> checking for presence of closed sources... no
>>> checking if closed source is suppressed (openjdk-only)... no
>>> checking which variant of the JDK to build... normal
>>> checking which interpreter of the JVM to build... template
>>> checking which variants of the JVM to build... server
>>> checking which debug level to use... release
>>> checking for sysroot...
>>> checking for toolchain path...
>>> checking for extra path...
>>> checking where to store configuration... in default location
>>> checking what configuration name to use...
>>> windows-x86_64-normal-server-release
>>> checking for apt-get... no
>>> checking for yum... no
>>> checking for port... no
>>> checking for pkgutil... no
>>> checking for pkgadd... no
>>> checking for gmake... no
>>> checking for make... /cygdrive/c/openjdk/make-3.82//make
>>> configure: Testing potential make at /cygdrive/c/openjdk/make-3.82//make,
>>> found using make in PATH
>>> configure: Rewriting FOUND_MAKE to "/cygdrive/c/openjdk/make-3.82/make"
>>> configure: Using GNU make 3.81 (or later) at
>>> /cygdrive/c/openjdk/make-3.82/make (version: GNU Make 3.82)
>>> checking if find supports -delete... yes
>>> checking for unzip... /usr/bin/unzip
>>> checking for zip... /usr/bin/zip
>>> checking for ldd... /usr/bin/ldd
>>> checking for readelf... /usr/bin/readelf
>>> checking for hg... /usr/bin/hg
>>> checking for stat... /usr/bin/stat
>>> checking for time... no
>>> configure: WARNING: Ignoring value of COMM from the environment. Use
>>> command line variables instead.
>>> checking for comm... (cached) /usr/bin/comm
>>> checking for pkg-config... /usr/bin/pkg-config
>>> checking pkg-config is at least version 0.9.0... yes
>>> checking for 7z... no
>>> checking for unzip... unzip
>>> checking for wget... wget
>>> checking headful support... include support for both headful and headless
>>> configure: Found potential Boot JDK using configure arguments
>>> checking for Boot JDK... /cygdrive/c/openjdk/jdk7
>>> checking Boot JDK version... openjdk version "1.7.0_75" OpenJDK Runtime
>>> Environment (build 1.7.0_75-b13) OpenJDK Client VM (build 24.75-b04,
>> mixed
>>> mode)
>>> checking for java in Boot JDK... ok
>>> checking for javac in Boot JDK... ok
>>> checking for javah in Boot JDK... ok
>>> checking for javap in Boot JDK... ok
>>> checking for jar in Boot JDK... ok
>>> checking for rmic in Boot JDK... ok
>>> checking for native2ascii in Boot JDK... ok
>>> checking if Boot JDK is 32 or 64 bits... 32
>>> checking flags for boot jdk java command ...
>>> checking flags for boot jdk java command for big workloads... -Xms64M
>>> -Xmx768M -XX:ThreadStackSize=768 -XX:PermSize=32m -XX:MaxPermSize=160m
>>> checking flags for boot jdk java command for small workloads...
>>> -XX:+UseSerialGC -Xms32M -Xmx512M
>>> configure: Using default toolchain microsoft (Microsoft Visual Studio)
>>> checking for link... /cygdrive/c/Program Files (x86)/Microsoft Visual
>>> Studio 10.0/VC/bin/amd64//link
>>> checking if the first found link.exe is actually the Cygwin link tool...
>> no
>>> configure: Found Visual Studio installation at /cygdrive/c/Program Files
>>> (x86)/Microsoft Visual Studio 10.0/ using VS100COMNTOOLS variable
>>> configure: Found Microsoft Visual Studio 2010
>>> configure: Rewriting VS_ENV_CMD to
>>> "/cygdrive/c/progra~2/micros~2.0/vc/bin/amd64/vcvars64.bat"
>>> configure: Trying to extract Visual Studio environment variables
>>> Setting environment for using Microsoft Visual Studio 2010 x64 tools.
>>> configure: Setting extracted environment variables
>>>
>> /cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src/build/windows-x86_64-normal-server-release/vs-env/set-vs-env.sh:
>>> line 2: syntax error near unexpected token `('
>>>
>> /cygdrive/c/cygwin64/tmp/tmp.wVFLippfrz/workspace/build/src/build/windows-x86_64-normal-server-release/vs-env/set-vs-env.sh:
>>> line 2: `VS_INCLUDE="C:\Program Files (x86)\Microsoft Visual Studio
>>> 10.0\VC\INCLUDE;C:\Program Files (x86)\Microsoft Visual Studio
>>> 10.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Microsoft
>>> SDKs\Windows\v7.0A\include; "'
>>> configure exiting with result code 2
>>> Relocating workspace from /tmp/tmp.wVFLippfrz to
>>>
>> /cygdrive/c/Users/jenkins/workspace/build-scripts/jobs/jdk8u/jdk8u-windows-x64-hotspot/workspace
>>> Data at:
>>>
>> /cygdrive/c/Users/jenkins/workspace/build-scripts/jobs/jdk8u/jdk8u-windows-x64-hotspot/workspace
>>> total 8.0K
>>> drwxr-xr-x+ 1 jenkins None 0 Sep 14 11:01 .
>>> drwxr-xr-x+ 1 jenkins None 0 Sep 14 10:58 ..
>>> drwxr-xr-x+ 1 jenkins None 0 Sep 14 10:58 build
>>> drwxr-xr-x+ 1 jenkins None 0 Sep 14 11:01 config
>>> drwxr-xr-x+ 1 jenkins None 0 Sep 14 11:01 libs
>>> [Pipeline] }
>>> [Pipeline] // node
>>> [Pipeline] }
>>> [Pipeline] // stage
>>> [Pipeline] End of Pipeline
>>> Finished: FAILURE
>>>
>>>
>>> Cheers,
>>> Martijn
>>
More information about the build-dev
mailing list