Skip to content
Draft
Changes from all commits
Commits
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
18 changes: 13 additions & 5 deletions .github/workflows/windows-msvc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -177,20 +177,26 @@ jobs:
sed 's/x64\/Debug/${{ env.ARCHDIR }}\/${{ matrix.target }}/g' atlocal_win > atlocal
autom4te --lang=autotest -I ./testsuite.src ./testsuite.at -o ./testsuite

- name: Adjust testsuite
shell: C:\shells\msys2bash.cmd {0}
run: |
# sed -i '/AT_SETUP(\[runtime check: write to internal storage (1)\])/a AT_SKIP_IF(\[true\])' tests/testsuite.src/run_misc.at
sed -i '/run_misc/{N;/write to internal storage (1)/{N;N;N;N;s/traceon/traceon; echo "workflow:1">"$at_check_line_file"; at_fn_check_skip 77/;}}' tests/testsuite
#- name: Adjust testsuite
# shell: C:\shells\msys2bash.cmd {0}
# run: |
# # sed -i '/AT_SETUP(\[runtime check: write to internal storage (1)\])/a AT_SKIP_IF(\[true\])' tests/testsuite.src/run_misc.at
# sed -i '/run_misc/{N;/write to internal storage (1)/{N;N;N;N;s/traceon/traceon; echo "workflow:1">"$at_check_line_file"; at_fn_check_skip 77/;}}' tests/testsuite

# Fail tests that behave differently under MSVC Debug
# - System routine CBL_GC_HOSTED: fails because libcob is linked with the debug version
# of the C runtime while the generated module is linked with the release version
# CHECKME: cobc should use cl.exe /MTd and therefore all should use the debug runtime
# - Internal storage: runtime checks abort before signal handler
# - COB_SIGNAL_REGIME: runtime checks abort before signal handler
- name: Adjust testsuite for Debug target
if: ${{ matrix.target == 'Debug' }}
shell: C:\shells\msys2bash.cmd {0}
run: |
sed -i '/run_extensions/{N;/System routine CBL_GC_HOSTED/{N;s/at_xfail=no/at_xfail=yes/;}}' tests/testsuite
# sed -i '/AT_SETUP(\[runtime check: write to internal storage (1)\])/a AT_SKIP_IF(\[true\])' tests/testsuite.src/run_misc.at
sed -i '/run_misc/{N;/write to internal storage (1)/{N;N;N;N;s/traceon/traceon; echo "workflow:1">"$at_check_line_file"; at_fn_check_skip 77/;}}' tests/testsuite
sed -i '/run_misc/{N;/COB_SIGNAL_REGIME/{N;N;N;N;s/traceon/traceon; echo "workflow:1">"$at_check_line_file"; at_fn_check_skip 77/;}}' tests/testsuite

- name: Run testsuite
run: |
Expand All @@ -210,9 +216,11 @@ jobs:

- name: Package GnuCOBOL and dependencies
run: |
rem for debug builds it should also package ucrtbased.dll and matching vcruntime*d.dll as those are commonly not available
echo Export VCPKG dependencies
vcpkg export %VCPKGS% --raw --output=export
set VCPKG_EXPORT_DIR=%VCPKG_ROOT%\export
rem this is currently broken (empty files)
echo Wrap up VCPKG dependencies for separate download
7z a -r -mx=9 dependencies-${{ matrix.arch }}-${{ matrix.target }}.7z "%VCPKG_EXPORT_DIR"
echo Wrap up GnuCOBOL binary package
Expand Down
Loading