summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2021-11-03 11:34:48 (GMT)
committerJohannes Schindelin <johannes.schindelin@gmx.de>2021-11-03 13:51:33 (GMT)
commitef3ac1fae9d18d500267cbbff21230b27a294459 (patch)
treece75751beb2baf7daa54042659afe1eea39c5a9a /.github
parente5a5c83759b96374c0d988724376cf26b1d10263 (diff)
downloadcv2pdb-ef3ac1fae9d18d500267cbbff21230b27a294459.zip
cv2pdb-ef3ac1fae9d18d500267cbbff21230b27a294459.tar.gz
cv2pdb-ef3ac1fae9d18d500267cbbff21230b27a294459.tar.bz2
Verify in the GitHub workflow that cv2pdb can handle GCC's output
Git for Windows uses cv2pdb to convert the debugging information produced by GCC to `.pdb` format, for use with Visual C's tools. A recent GCC upgrade broke this because the debugging information was produced in DWARF5 format, and the Git for Windows maintainer had to scramble to implement (minimal) support for that format. Let's verify in the GitHub workflow that cv2pdb can handle GCC's output format, and let's use the very same GCC version that Git for Windows uses to verify that. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build-and-test.yml29
1 files changed, 28 insertions, 1 deletions
diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
index 035237e..9cfcbcc 100644
--- a/.github/workflows/build-and-test.yml
+++ b/.github/workflows/build-and-test.yml
@@ -1,4 +1,4 @@
-name: build cv2pdb
+name: build and test cv2pdb
on: [push, pull_request]
@@ -26,3 +26,30 @@ jobs:
with:
name: bin
path: bin
+ test-with-g4w-sdk:
+ runs-on: windows-latest
+ needs: build
+ steps:
+ - name: Download bin/
+ uses: actions/download-artifact@v2
+ with:
+ name: bin
+ path: bin
+ - uses: git-for-windows/setup-git-for-windows-sdk@v1
+ - name: verify using Git for Windows' GCC
+ shell: bash
+ run: |
+ set -x &&
+ cat >hello.c <<-\EOF &&
+ #include <stdio.h>
+
+ int main(int argc, char **argv)
+ {
+ printf("Hello, world\n");
+ return 0;
+ }
+ EOF
+
+ gcc -g -o hello.exe hello.c &&
+ bin/${{env.BUILD_CONFIGURATION}}*/cv2pdb.exe hello.exe world.exe &&
+ ls -l hello* world*