summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelipe Magno de Almeida <felipe@expertisesolutions.com.br>2020-04-28 18:37:46 -0300
committerFelipe Magno de Almeida <felipe@expertise.dev>2020-04-30 11:56:50 -0300
commit728e1afde96f2d58d18d5b7599a3c0dffbc55240 (patch)
treee12394d681c631dbc7a39fc54b36d0eecf2a4048
parent513b166b9758182499dd0714c3763f72c84617f9 (diff)
efl-windows: Create windows.yml for github CI
-rw-r--r--.github/workflows/windows.yml88
-rw-r--r--build.bat1
-rw-r--r--configure.bat4
3 files changed, 91 insertions, 2 deletions
diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
new file mode 100644
index 0000000000..0f13c56775
--- /dev/null
+++ b/.github/workflows/windows.yml
@@ -0,0 +1,88 @@
1name: EFL on Windows
2
3on:
4 push:
5 pull_request:
6 branches: [ devs/expertise/native-windows ]
7
8jobs:
9 build:
10
11 runs-on: windows-latest
12
13 steps:
14 - uses: actions/checkout@v2
15 - name: Cache Nasm install
16 uses: actions/cache@v1
17 id: cache-nasm
18 env:
19 cache-name: cache-nasm
20 with:
21 path: "C:\\Program Files\\Nasm"
22 key: cache-nasm-v1
23 restore-keys: cache-nasm-v1
24 - name: Cache LLVM install
25 uses: actions/cache@v1
26 id: cache-llvm
27 env:
28 cache-name: cache-llvm
29 with:
30 path: "C:\\Program Files\\LLVM"
31 key: cache-llvm-v10.0.0.0-1
32 restore-keys: cache-llvm-v10.0.0.0-1
33 - name: Install LLVM
34 if: steps.cache-llvm.outputs.cache-hit != 'true'
35 run: choco install llvm
36 - name: Add clang-cl to PATH
37 run: echo "::add-path::C:\Program Files\LLVM\bin"
38 - name: Search clang-cl
39 run: clang-cl -v
40 - name: install nasm
41 if: steps.cache-nasm.outputs.cache-hit != 'true'
42 run: choco install nasm
43 - name: Add Nasm to PATH
44 run: echo "::add-path::C:\Program Files\Nasm"
45# - name: test nasm
46# run: nasm.exe -v
47 - name: install ninja
48 # unexplicably, installation returns error code 1 if a cache location is used
49 run: choco install ninja
50 - name: test ninja
51 run: ninja --version
52 - name: install meson
53 run: py -3 -m pip install meson
54 - name: add meson to path
55 run: echo "::add-path::C:\hostedtoolcache\windows\Python\3.8.2\x64\Scripts"
56 - name: test meson
57 run: meson -v
58 - name: Cache OpenSSL compilation
59 id: cache-openssl
60 uses: actions/cache@v1
61 env:
62 cache-name: cache-openssl-compilation
63 with:
64 path: openssl
65 key: openssl-1_1_1g
66 restore-keys: openssl-1_1_1g
67 - name: Download openssl source
68 if: steps.cache-openssl.outputs.cache-hit != 'true'
69 run: git clone -b OpenSSL_1_1_1g https://github.com/openssl/openssl
70 - uses: ilammy/msvc-dev-cmd@v1
71 with:
72 arch: x64
73 - name: Show from where clang-cl
74 run: where clang-cl
75 - name: Configure OpenSSL
76 if: steps.cache-openssl.outputs.cache-hit != 'true'
77 run: perl Configure VC-WIN64A
78 working-directory: .\openssl
79 - name: Compile OpenSSL
80 if: steps.cache-openssl.outputs.cache-hit != 'true'
81 run: nmake
82 working-directory: .\openssl
83 - name: configure
84 run: .\configure.bat
85 env:
86 OPENSSL_DIR: ${{ github.workspace }}\openssl
87 - name: Build
88 run: .\build.bat
diff --git a/build.bat b/build.bat
index ce5d3e13f7..95ce636487 100644
--- a/build.bat
+++ b/build.bat
@@ -18,3 +18,4 @@ ninja %NINJAFLAGS% -C build
18 18
19set vcvars64=%__OLD_vcvars64% 19set vcvars64=%__OLD_vcvars64%
20set __OLD_vcvars64= 20set __OLD_vcvars64=
21exit /B %ERRORLEVEL%
diff --git a/configure.bat b/configure.bat
index cdae9377c7..b94bcfbba5 100644
--- a/configure.bat
+++ b/configure.bat
@@ -116,7 +116,7 @@ exit /B 0
116 call %vcvars64% 116 call %vcvars64%
117 ) 117 )
118 meson build %MESONFLAGS: = % 118 meson build %MESONFLAGS: = %
119exit /B 0 119exit /B %ERRORLEVEL%
120 120
121:save_old_vars 121:save_old_vars
122 @echo ------------------------------ 122 @echo ------------------------------
@@ -146,5 +146,5 @@ exit /B 0
146 call :save_old_vars 146 call :save_old_vars
147 call :check_env_vars || (echo Environment Variables check failed) && exit /B 1 147 call :check_env_vars || (echo Environment Variables check failed) && exit /B 1
148 call :setup_flags 148 call :setup_flags
149 call :generate_build 149 call :generate_build || (echo Meson failed) && exit /B 1
150 call :restore_old_vars 150 call :restore_old_vars