Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tmc windows build #42

Closed
wants to merge 60 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
d3624a7
first attempt at getting a windows build
rogchap Sep 29, 2019
0ab00e5
use bash for checkout
rogchap Sep 29, 2019
205b664
adding some debug statements
rogchap Sep 29, 2019
ae66aad
try in regular cmd shell
rogchap Sep 29, 2019
db9bcbe
use bat files for windows
rogchap Sep 29, 2019
9ed1add
remove bad text if file
rogchap Sep 29, 2019
40829b4
trying to get windows pathing to work
rogchap Sep 29, 2019
3996566
adding some info to stdout
rogchap Sep 29, 2019
f668330
adding suggested phthon windows fix
rogchap Sep 29, 2019
499b1de
add missing import
rogchap Sep 29, 2019
0d63c8a
try using cmd rather than bash
rogchap Sep 29, 2019
98ab7bf
remove dll fix
rogchap Sep 29, 2019
ed8dc4d
try adding some win ENVs
rogchap Sep 29, 2019
ccdc4bc
move the tools path to the end
rogchap Sep 29, 2019
0670fdc
try using python 2.7
rogchap Sep 29, 2019
2fc1e4f
guessing the path of the python exe on the VM
rogchap Sep 29, 2019
46963bc
try old version of python
rogchap Sep 29, 2019
a63e70d
back to previous version of python
rogchap Sep 29, 2019
35dbc37
missing an s on the path
rogchap Sep 29, 2019
202b482
True uninstall virtualenv first to let v8 do it
rogchap Sep 29, 2019
3689e5e
try updating depot_tools
rogchap Sep 29, 2019
6c280b0
try installing virtualenv first
rogchap Sep 29, 2019
c3d2540
try seting up the right python version first
rogchap Sep 29, 2019
5a3cf79
struggling to get the right python working
rogchap Sep 29, 2019
1a88471
listing installed packages
rogchap Sep 29, 2019
2b8dadc
try uninstalling python2 from choco
rogchap Sep 29, 2019
608384c
the github actions vm has too much stuff installed
rogchap Sep 29, 2019
559963e
change location of python
rogchap Sep 29, 2019
e31f6f4
try installing functools first :strug:
rogchap Sep 29, 2019
126a8f8
more guess work`
rogchap Sep 29, 2019
a70ab2a
back to set python version first
rogchap Sep 29, 2019
c2dfaf5
get formatting of yaml correct
rogchap Sep 29, 2019
d4d8994
trying with python3
rogchap Sep 29, 2019
7e603ba
removing install step of functool
rogchap Sep 29, 2019
6e6fefa
trying build inside of a docker container instead
rogchap Oct 7, 2019
c8d11a6
Forgot run command for docker
rogchap Oct 7, 2019
37c5d63
pwd does not work on windows
rogchap Oct 7, 2019
59cf3ff
Try slashes in the other direction
rogchap Oct 7, 2019
9946205
trying to get the volume mounting right on windows
rogchap Oct 7, 2019
1304c4b
try mounting to a C drive
rogchap Oct 7, 2019
d718281
use pyhon image as windows does not have it pre-installed
rogchap Oct 7, 2019
85af415
host platform must match to run windows
rogchap Oct 7, 2019
6ac3c4b
still learning windows commands
rogchap Oct 7, 2019
59045aa
need git and python
rogchap Oct 7, 2019
d8ddf58
trying to get a container that matches the host
rogchap Oct 7, 2019
35ca49f
any version of python will do
rogchap Oct 7, 2019
fefeaca
I need to learn how to spell python
rogchap Oct 7, 2019
a80d369
exec as python2
rogchap Oct 7, 2019
9affb4a
do we need the exe on windows
rogchap Oct 7, 2019
02b6344
refresh envs after install
rogchap Oct 7, 2019
1a98f7b
not a choco command
rogchap Oct 7, 2019
63d345a
now we have env refresh lets try normal python
rogchap Oct 7, 2019
8a95dbc
try to limit the log output
rogchap Oct 7, 2019
842ed9d
wip: debug build
tmc Nov 28, 2020
a8c517d
v8build: Iterate
tmc Nov 29, 2020
7eafa1a
v8build: Iterate
tmc Nov 29, 2020
657da54
v8build: Iterate
tmc Nov 29, 2020
7a33059
v8build: Iterate
tmc Nov 29, 2020
d282ba7
v8build: Iterate
tmc Nov 29, 2020
f6a08ab
v8build: Iterate
tmc Nov 29, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 36 additions & 4 deletions .github/workflows/v8build.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,58 @@
name: V8 Build

on: repository_dispatch

#on: repository_dispatch
on: push

jobs:
build:
name: Build V8 for ${{ matrix.platform }}
strategy:
matrix:
platform: [ubuntu-latest, macos-latest]
#platform: [ubuntu-18.04, macOS-10.14]
platform: [windows-2019]
runs-on: ${{ matrix.platform }}
steps:
- name: Checkout
uses: actions/checkout@v1
with:
submodules: true
fetch-depth: 1
- name: Set PATH
run: |
pwd >> $GITHUB_PATH
echo "D:\a\v8go\v8go\depot_tools" >> $GITHUB_PATH
- name: Dependencies
run: choco install -y -r python2 git
- name: Build V8
run: cd deps && ./build.py
continue-on-error: true
env:
DEPOT_TOOLS_UPDATE: "0"
DEPOT_TOOLS_WIN_TOOLCHAIN: "0"
run: cd deps && python build.py

# rdp debugging
- name: dbg:ngrok
run: Invoke-WebRequest https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-windows-amd64.zip -OutFile ngrok.zip
- name: dbg:Extract
run: Expand-Archive ngrok.zip
- name: dbg:Auth
run: .\ngrok\ngrok.exe authtoken $Env:NGROK_AUTH_TOKEN
env:
NGROK_AUTH_TOKEN: ${{ secrets.NGROK_AUTH_TOKEN }}
- name: dbg:Enable TS
run: Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'-name "fDenyTSConnections" -Value 0
- run: Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
- run: Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "UserAuthentication" -Value 1
- run: Set-LocalUser -Name "runneradmin" -Password (ConvertTo-SecureString -AsPlainText "P@ssw0rd!" -Force)
- name: dbg:Create Tunnel
run: .\ngrok\ngrok.exe tcp 3389
# end rdp debugging

- name: Install Python3 setup tools
if: matrix.platform == 'ubuntu-latest'
run: sudo apt-get install python3-setuptools
- name: Create PR
shell: bash
run: |
pip3 install --requirement ./.github/scripts/requirements.txt
./.github/scripts/create-pull-request.py
Expand Down
19 changes: 14 additions & 5 deletions deps/build.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
parser.set_defaults(debug=False)
args = parser.parse_args()

is_windows = (platform.uname()[0]).lower() == 'windows'
deps_path = os.path.dirname(os.path.realpath(__file__))
v8_path = os.path.join(deps_path, "v8")
tools_path = os.path.join(deps_path, "depot_tools")
Expand Down Expand Up @@ -65,8 +66,9 @@
def v8deps():
spec = "solutions = %s" % gclient_sln
env = os.environ.copy()
env["PATH"] = tools_path + os.pathsep + env["PATH"]
subprocess.check_call(["gclient", "sync", "--spec", spec],
env["PATH"] = tools_path + os.pathsep + env["PATH"]
gclient_path = os.path.join(tools_path, "gclient.bat" if is_windows else "gclinet")
subprocess.check_call([gclient_path, "sync", "--spec", spec],
cwd=deps_path,
env=env)

Expand All @@ -75,14 +77,21 @@ def os_arch():
return (u[0] + "-" + u[4]).lower()

def main():
print('starting build for %s...' % os_arch())

env = os.environ.copy()
if is_windows:
env["DEPOT_TOOLS_WIN_TOOLCHAIN"] = 0
env["GYP_MSVS_VERSION"] = 2017

v8deps()
gn_path = os.path.join(tools_path, "gn")

gn_path = os.path.join(tools_path, "gn.bat" if is_windows else "gn")
assert(os.path.exists(gn_path))
ninja_path = os.path.join(tools_path, "ninja")
assert(os.path.exists(ninja_path))

build_path = os.path.join(deps_path, ".build", os_arch())
env = os.environ.copy()

is_debug = 'true' if args.debug else 'false'
gnargs = gn_args % is_debug
Expand All @@ -95,7 +104,7 @@ def main():
cwd=v8_path,
env=env)

lib_fn = os.path.join(build_path, "obj/libv8_monolith.a")
lib_fn = os.path.join(build_path, "obj", "libv8_monolith.a")
dest_path = os.path.join(deps_path, os_arch())
if not os.path.exists(dest_path):
os.makedirs(dest_path)
Expand Down
2 changes: 1 addition & 1 deletion deps/depot_tools
Submodule depot_tools updated from 82ae4b to 0081c0