This is an automated email from the ASF dual-hosted git repository. wohali pushed a commit to branch sm68-wip in repository https://gitbox.apache.org/repos/asf/couchdb-glazier.git
commit 2c6d25cd370e91185963546cd8e606a43a84de47 Author: Joan Touzet <[email protected]> AuthorDate: Mon May 4 18:44:50 2020 -0400 WIP:first shot at SM68(failure) --- README.md | 82 +++++++++++++++++++++++++++++++++++--------- bin/install_dependencies.ps1 | 4 +-- sm-opt.mozconfig | 2 ++ 3 files changed, 69 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 3cac5b8..5113e84 100644 --- a/README.md +++ b/README.md @@ -143,31 +143,79 @@ C:\mozilla-build\start-shell.bat At the MozillaBuild prompt, enter the following: ``` -C:\mozilla-build\start-shell.bat cd /c/relax git clone https://github.com/mozilla/gecko-dev cd gecko-dev -git checkout esr60 -cd js/src -sed -i -E "s/(VC\.Tools\.x86\.x64')/\1, '-products', '*'/g" ../../build/moz.configure/toolchain.configure -autoconf-2.13 -mkdir build_OPT.OBJ -cd build_OPT.OBJ -../configure --disable-ctypes --disable-ion --disable-jemalloc --enable-optimize --enable-hardening --with-intl-api --build-backends=RecursiveMake --with-visual-studio-version=2017 --with-system-icu --disable-debug --enable-gczeal --target=x86_64-pc-mingw32 --host=x86_64-pc-mingw32 --prefix=/c/relax/vcpkg/installed/x64-windows -mozmake -exit +git checkout esr68 +sed -i -E "s/(VC\.Tools\.x86\.x64')/\1, '-products', '*'/g" build/moz.configure/toolchain.configure +git cherry-pick b444ca8 +export MOZCONFIG=/c/relax/couchdb-glazier/sm-opt.mozconfig +./mach bootstrap ``` The `sed` command adds support for building with just the VS Build Tools, which are -sufficient for just SpiderMonkey. (Otherwise, you need to download an additional 9GB of -Visual Studio. Bleah.) The build should take about 15 minutes. +sufficient for just SpiderMonkey. And the `git cherry-pick` pulls in a patch to fix +building against newer versions of Rust. + + +This will prompt you a few times. Be sure to answer that you want to build: + +* `2. Firefox for Desktop` (NOT the Artifact Mode) +* `n` to _"Would you like to run a few configuration steps to ensure Git is..."_ +* `n` to _"Would you like to enable build system telemetry?"_ -Back in PowerShell, copy the binaries to where our build process expects them: +Then, exit the shell (as instructed) and start a new PowerShell. In that PowerShell: ``` -copy C:\relax\gecko-dev\js\src\build_OPT.OBJ\js\src\build\*.pdb C:\relax\vcpkg\installed\x64-windows\bin -copy C:\relax\gecko-dev\js\src\build_OPT.OBJ\dist\bin\*.dll C:\relax\vcpkg\installed\x64-windows\bin -copy C:\relax\gecko-dev\js\src\build_OPT.OBJ\dist\include\* C:\relax\vcpkg\installed\x64-windows\include -Recurse -ErrorAction SilentlyContinue +&c:\relax\couchdb-glazier\bin\shell.ps1 +C:\mozilla-build\start-shell.bat +cd /c/relax/gecko-dev +export MOZCONFIG=/c/relax/couchdb-glazier/sm-opt.mozconfig +./mach build +exit +``` + +The build should take about 15 minutes. It may show an error at the end similar to this - it's +just a test failure and can **safely be ignored**: + +``` +17:44.29 js/src/build/spidermonkey_checks.stub +17:51.15 Traceback (most recent call last): +17:51.15 File "c:/relax/gecko-dev/config/check_spidermonkey_style.py", line 799, in <module> +17:51.15 main() +17:51.15 File "c:/relax/gecko-dev/config/check_spidermonkey_style.py", line 782, in main +17:51.15 ok = check_style(fixup) +17:51.15 File "c:/relax/gecko-dev/config/check_spidermonkey_style.py", line 316, in check_style +17:51.15 code = read_file(f) +17:51.15 File "c:/relax/gecko-dev/config/check_spidermonkey_style.py", line 621, in read_file +17:51.15 raise ValueError("unmatched #if") +17:51.15 ValueError: unmatched #if +17:51.17 Traceback (most recent call last): +17:51.17 File "c:\mozilla-build\python\Lib\runpy.py", line 174, in _run_module_as_main +17:51.17 "__main__", fname, loader, pkg_name) +17:51.17 File "c:\mozilla-build\python\Lib\runpy.py", line 72, in _run_code +17:51.17 exec code in run_globals +17:51.17 File "c:\relax\gecko-dev\python\mozbuild\mozbuild\action\file_generate.py", line 120, in <module> +17:51.17 sys.exit(main(sys.argv[1:])) +17:51.17 File "c:\relax\gecko-dev\python\mozbuild\mozbuild\action\file_generate.py", line 71, in main +17:51.17 ret = module.__dict__[method](output, *args.additional_arguments, **kwargs) +17:51.17 File "c:/relax/gecko-dev/config/run_spidermonkey_checks.py", line 15, in main +17:51.17 raise Exception(script + " failed") +17:51.17 Exception: c:/relax/gecko-dev/config/check_spidermonkey_style.py failed +17:51.17 mozmake.EXE[4]: *** [backend.mk;11: .deps/spidermonkey_checks.stub] Error 1 +17:51.17 mozmake.EXE[3]: *** [c:/relax/gecko-dev/config/recurse.mk;101: js/src/build/misc] Error 2 +17:51.17 mozmake.EXE[2]: *** [c:/relax/gecko-dev/config/recurse.mk;34: misc] Error 2 +17:51.17 mozmake.EXE[1]: *** [c:/relax/gecko-dev/config/rules.mk;413: default] Error 2 +17:51.17 mozmake.EXE: *** [client.mk;125: build] Error 2 +``` + +Back in the PowerShell, copy the binaries to where our build process expects them: + +``` +copy C:\relax\gecko-dev\obj-x86_64-pc-mingw32\js\src\build\*.pdb C:\relax\vcpkg\installed\x64-windows\bin +copy C:\relax\gecko-dev\obj-x86_64-pc-mingw32\dist\bin\*.dll C:\relax\vcpkg\installed\x64-windows\bin +copy C:\relax\gecko-dev\obj-x86_64-pc-mingw32\dist\bin\js.exe C:\relax\vcpkg\installed\x64-windows\bin\js68.exe +copy C:\relax\gecko-dev\obj-x86_64-pc-mingw32\dist\include\* C:\relax\vcpkg\installed\x64-windows\include -Recurse -ErrorAction SilentlyContinue ``` # Building CouchDB itself @@ -188,7 +236,7 @@ cd c:\relax git clone https://github.com/apache/couchdb cd couchdb git checkout <tag or branch of interest goes here> -&.\configure.ps1 -WithCurl -SpiderMonkeyVersion 60 +&.\configure.ps1 -WithCurl -SpiderMonkeyVersion 68 make -f Makefile.win ``` diff --git a/bin/install_dependencies.ps1 b/bin/install_dependencies.ps1 index b1b4162..a25e3cc 100644 --- a/bin/install_dependencies.ps1 +++ b/bin/install_dependencies.ps1 @@ -14,7 +14,7 @@ choco install visualstudio2017buildtools "--passive --locale en-US" choco install visualstudio2017-workload-vctools --package-parameters "--includeRecommended --add Microsoft.VisualStudio.Component.VC.ATLMFC" choco install visualstudio2017-workload-nativedesktop -choco install windows-sdk-10.1 nodejs-lts wget nasm cyg-get wixtoolset python3 make nssm gpg4win checksum archiver dependencywalker unzip +choco install windows-sdk-10.1 nodejs-lts wget nasm cyg-get wixtoolset python3 make nssm gpg4win checksum archiver dependencywalker unzip vcpython27 choco install nsis --version=2.51 Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force Install-Module VSSetup -Scope CurrentUser -Force @@ -31,7 +31,7 @@ git clone https://github.com/Microsoft/vcpkg.git cd vcpkg .\bootstrap-vcpkg.bat -disableMetrics -win64 .\vcpkg integrate install --triplet x64-windows -.\vcpkg remove openssl icu curl[openssl,tool] +.\vcpkg remove openssl icu curl[openssl,tool] --triplet x64-windows .\vcpkg install openssl icu curl[openssl,tool] --triplet x64-windows cd .. diff --git a/sm-opt.mozconfig b/sm-opt.mozconfig new file mode 100644 index 0000000..b1c12c6 --- /dev/null +++ b/sm-opt.mozconfig @@ -0,0 +1,2 @@ +ac_add_options --enable-application=js +ac_add_options --disable-ctypes --disable-ion --disable-jemalloc --enable-optimize --enable-hardening --with-intl-api --build-backends=RecursiveMake --with-visual-studio-version=2017 --disable-debug --enable-gczeal --target=x86_64-pc-mingw32 --host=x86_64-pc-mingw32 --prefix=/c/relax/vcpkg/installed/x64-windows
