Skip to content

Commit ae479f8

Browse files
committed
ci: fix Cygwin job (cygpath temp script, strip CRLF, use igncr)
1 parent 5aac637 commit ae479f8

File tree

1 file changed

+38
-20
lines changed

1 file changed

+38
-20
lines changed

.github/workflows/cygwin-build.yml

Lines changed: 38 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,25 @@ name: Cygwin build
33
on:
44
pull_request:
55
push:
6-
branches: [ master ]
6+
branches:
7+
- master
78

89
jobs:
910
cygwin-build:
1011
runs-on: windows-latest
11-
12-
# Run ALL steps via Cygwin's bash (not Git Bash / CMD)
12+
env:
13+
CYGWIN: winsymlinks:nativestrict
1314
defaults:
1415
run:
15-
shell: 'C:\tools\cygwin\bin\bash.EXE --login -eo pipefail -c "{0}"'
16+
shell: C:\tools\cygwin\bin\bash.exe --login -eo pipefail -o igncr '{0}'
1617

1718
steps:
18-
- name: Checkout
19+
- name: Checkout repository
1920
uses: actions/checkout@v4
2021
with:
21-
# avoid CRLF issues inside Cygwin
2222
fetch-depth: 0
2323

24-
- name: Set up Cygwin with build deps
24+
- name: Set up Cygwin with build dependencies
2525
uses: egor-tensin/setup-cygwin@v4
2626
with:
2727
packages: >-
@@ -33,24 +33,36 @@ jobs:
3333
autoconf-archive
3434
gcc-core
3535
gettext-devel
36-
libstrophe-devel
36+
git
3737
libncursesw-devel
3838
libglib2.0-devel
3939
libcurl-devel
4040
libreadline-devel
4141
libsqlite3-devel
4242
43-
- name: Sanity check Cygwin toolchain
43+
- name: Build and install libstrophe from source
44+
run: |
45+
cd "$GITHUB_WORKSPACE"
46+
mkdir -p deps && cd deps
47+
git clone --depth 1 https://github.com/strophe/libstrophe.git
48+
cd libstrophe
49+
./autogen.sh
50+
./configure --prefix=$PWD/install
51+
make -j2 install
52+
shell: C:\tools\cygwin\bin\bash.exe --login -eo pipefail -o igncr '{0}'
53+
54+
- name: Check repo state
4455
run: |
45-
echo "PATH=$PATH"
46-
type -a /usr/bin/uname || true
47-
/usr/bin/uname -a
48-
/usr/bin/gcc --version
49-
/usr/bin/pkg-config --version
56+
cd "$GITHUB_WORKSPACE"
57+
pwd
58+
ls -la
59+
test -f configure.ac && echo "configure.ac present" || (echo "configure.ac missing"; exit 1)
5060
5161
- name: Autotools bootstrap
5262
run: |
53-
git config --global core.autocrlf false
63+
cd "$GITHUB_WORKSPACE"
64+
git config --global core.autocrlf false || true
65+
[ -f ./bootstrap.sh ] && sed -i 's/\r$//' ./bootstrap.sh || true
5466
if [ -x ./bootstrap.sh ]; then
5567
./bootstrap.sh
5668
else
@@ -59,12 +71,18 @@ jobs:
5971
6072
- name: Configure
6173
env:
62-
CYGWIN: winsymlinks:nativestrict
63-
run: ./configure
74+
PKG_CONFIG_PATH: ${{ github.workspace }}/deps/libstrophe/install/lib/pkgconfig:$PKG_CONFIG_PATH
75+
run: |
76+
cd "$GITHUB_WORKSPACE"
77+
./configure
6478
6579
- name: Build
66-
run: make -j2
80+
run: |
81+
cd "$GITHUB_WORKSPACE"
82+
make -j2
6783
68-
# keep tests for later; first make the build go green
84+
# Uncomment when tests are reliable on Cygwin
6985
# - name: Test
70-
# run: make check -j2
86+
# run: |
87+
# cd "$GITHUB_WORKSPACE"
88+
# make check -j2

0 commit comments

Comments
 (0)