Skip to content

Commit 8b1b60c

Browse files
committed
Worked on tests and changes for CI tests
1 parent a2ea601 commit 8b1b60c

21 files changed

Lines changed: 949 additions & 171 deletions

.github/workflows/build_linux.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,62 @@ jobs:
7979
- name: Run tests
8080
run: |
8181
make distcheck VERBOSE=1
82+
build_fuse:
83+
runs-on: ${{ matrix.os }}
84+
strategy:
85+
matrix:
86+
include:
87+
- os: ubuntu-24.04
88+
compiler: 'gcc'
89+
configure_options: ''
90+
steps:
91+
- uses: actions/checkout@v6
92+
- name: Install build dependencies
93+
run: |
94+
sudo apt -y update
95+
sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config libfuse-dev
96+
- name: Download test data
97+
run: |
98+
if test -x "synctestdata.sh"; then ./synctestdata.sh; fi
99+
- name: Build from source
100+
env:
101+
CC: ${{ matrix.compiler }}
102+
run: |
103+
./synclibs.sh --use-head
104+
./autogen.sh
105+
./configure ${{ matrix.configure_options }}
106+
make > /dev/null
107+
- name: Run tests
108+
run: |
109+
tests/runtests.sh CHECK_WITH_STDERR=1
110+
build_fuse3:
111+
runs-on: ${{ matrix.os }}
112+
strategy:
113+
matrix:
114+
include:
115+
- os: ubuntu-24.04
116+
compiler: 'gcc'
117+
configure_options: ''
118+
steps:
119+
- uses: actions/checkout@v6
120+
- name: Install build dependencies
121+
run: |
122+
sudo apt -y update
123+
sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config libfuse3-dev
124+
- name: Download test data
125+
run: |
126+
if test -x "synctestdata.sh"; then ./synctestdata.sh; fi
127+
- name: Build from source
128+
env:
129+
CC: ${{ matrix.compiler }}
130+
run: |
131+
./synclibs.sh --use-head
132+
./autogen.sh
133+
./configure ${{ matrix.configure_options }}
134+
make > /dev/null
135+
- name: Run tests
136+
run: |
137+
tests/runtests.sh CHECK_WITH_STDERR=1
82138
build_python:
83139
runs-on: ${{ matrix.os }}
84140
strategy:

.github/workflows/build_macos.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,37 @@ jobs:
4646
- name: Run tests
4747
run: |
4848
tests/runtests.sh CHECK_WITH_STDERR=1
49+
build_macfuse:
50+
runs-on: ${{ matrix.os }}
51+
strategy:
52+
matrix:
53+
include:
54+
- os: macos-15
55+
compiler: 'clang'
56+
configure_options: ''
57+
steps:
58+
- uses: actions/checkout@v6
59+
- name: Install build dependencies
60+
run: |
61+
brew update -q
62+
brew install -q autoconf automake gettext gnu-sed libtool pkg-config || true
63+
ln -s /usr/local/bin/glibtoolize /usr/local/bin/libtoolize
64+
- name: Install macFUSE
65+
run: brew install --cask macfuse
66+
- name: Download test data
67+
run: |
68+
if test -x "synctestdata.sh"; then ./synctestdata.sh; fi
69+
- name: Build from source
70+
env:
71+
CC: ${{ matrix.compiler }}
72+
run: |
73+
./synclibs.sh --use-head
74+
./autogen.sh
75+
./configure ${{ matrix.configure_options }}
76+
make > /dev/null
77+
- name: Run tests
78+
run: |
79+
tests/runtests.sh CHECK_WITH_STDERR=1
4980
build_python:
5081
runs-on: ${{ matrix.os }}
5182
strategy:

.github/workflows/coverage.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ jobs:
6363
env:
6464
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
6565
run: |
66+
$ProgressPreference = 'SilentlyContinue'
6667
Invoke-WebRequest -Uri "https://cli.codecov.io/latest/windows/codecov.exe" -OutFile "codecov.exe"
6768
Unblock-File -Path "./codecov.exe"
6869
./codecov.exe --verbose upload-coverage --git-service github --gcov-executable gcov --name "${{ matrix.codecov_name }}"

appveyor.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,4 @@ test_script:
146146
- cmd: rem Run tests
147147
- ps: If ($env:BUILD_ENVIRONMENT -eq "msbuild") {
148148
.\runtests.ps1 }
149-
- sh: if test ${BUILD_ENVIRONMENT} = "xcode" && test ${TARGET} != "macos-pkgbuild"; then tests/runtests.sh; fi
150-
- sh: if test ${TARGET} = "macos-pkgbuild"; then tests/pkgbuild.sh; fi
151149

autogen.ps1

Lines changed: 64 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,102 @@
11
# Script to generate the necessary files for a msvscpp build
22
#
3-
# Version: 20260505
3+
# Version: 20260608
44

55
$WinFlex = "..\win_flex_bison\win_flex.exe"
66
$WinBison = "..\win_flex_bison\win_bison.exe"
77

8-
$Library = Get-Content -Path configure.ac | select -skip 3 -first 1 | % { $_ -Replace " \[","" } | % { $_ -Replace "\],","" }
9-
$Version = Get-Content -Path configure.ac | select -skip 4 -first 1 | % { $_ -Replace " \[","" } | % { $_ -Replace "\],","" }
10-
$Prefix = ${Library}.Substring(3)
8+
$PackageName = Get-Content -Path configure.ac |
9+
select -skip 3 -first 1 |
10+
% { $_ -Replace " \[","" } |
11+
% { $_ -Replace "\],","" }
12+
$PackageVersion = Get-Content -Path configure.ac |
13+
select -skip 4 -first 1 |
14+
% { $_ -Replace " \[","" } |
15+
% { $_ -Replace "\],","" }
1116

12-
Get-Content -Path "include\${Library}.h.in" | Out-File -Encoding ascii "include\${Library}.h"
13-
Get-Content -Path "include\${Library}\definitions.h.in" | % { $_ -Replace "@VERSION@","${Version}" } | Out-File -Encoding ascii "include\${Library}\definitions.h"
14-
Get-Content -Path "include\${Library}\features.h.in" | % { $_ -Replace "@[A-Z0-9_]*@","0" } | Out-File -Encoding ascii "include\${Library}\features.h"
15-
Get-Content -Path "include\${Library}\types.h.in" | % { $_ -Replace "@[A-Z0-9_]*@","0" } | Out-File -Encoding ascii "include\${Library}\types.h"
16-
Get-Content -Path "common\types.h.in" | % { $_ -Replace "@PACKAGE@","${Library}" } | Out-File -Encoding ascii "common\types.h"
17-
Get-Content -Path "${Library}\${Library}_definitions.h.in" | % { $_ -Replace "@VERSION@","${Version}" } | Out-File -Encoding ascii "${Library}\${Library}_definitions.h"
18-
Get-Content -Path "${Library}\${Library}.rc.in" | % { $_ -Replace "@VERSION@","${Version}" } | Out-File -Encoding ascii "${Library}\${Library}.rc"
17+
Get-Content -Path "common\types.h.in" |
18+
% { $_ -Replace "@PACKAGE@","${PackageName}" } |
19+
Out-File -Encoding ascii "common\types.h"
1920

21+
If (Test-Path "include\${PackageName}.h.in")
22+
{
23+
Get-Content -Path "include\${PackageName}.h.in" |
24+
Out-File -Encoding ascii "include\${PackageName}.h"
25+
Get-Content -Path "include\${PackageName}\definitions.h.in" |
26+
% { $_ -Replace "@VERSION@","${PackageVersion}" } |
27+
Out-File -Encoding ascii "include\${PackageName}\definitions.h"
28+
Get-Content -Path "include\${PackageName}\features.h.in" |
29+
% { $_ -Replace "@[A-Z0-9_]*@","0" } |
30+
Out-File -Encoding ascii "include\${PackageName}\features.h"
31+
Get-Content -Path "include\${PackageName}\types.h.in" |
32+
% { $_ -Replace "@[A-Z0-9_]*@","0" } |
33+
Out-File -Encoding ascii "include\${PackageName}\types.h"
34+
}
35+
If (Test-Path "${PackageName}\${PackageName}.c")
36+
{
37+
Get-Content -Path "${PackageName}\${PackageName}_definitions.h.in" |
38+
% { $_ -Replace "@VERSION@","${PackageVersion}" } |
39+
Out-File -Encoding ascii "${PackageName}\${PackageName}_definitions.h"
40+
Get-Content -Path "${PackageName}\${PackageName}.rc.in" |
41+
% { $_ -Replace "@VERSION@","${PackageVersion}" } |
42+
Out-File -Encoding ascii "${PackageName}\${PackageName}.rc"
43+
}
2044
If (Test-Path "pyproject.toml.in")
2145
{
22-
Get-Content -Path "pyproject.toml.in" | % { $_ -Replace "@VERSION@","${Version}" } | Out-File -Encoding ascii "pyproject.toml"
46+
Get-Content -Path "pyproject.toml.in" |
47+
% { $_ -Replace "@VERSION@","${PackageVersion}" } |
48+
Out-File -Encoding ascii "pyproject.toml"
2349
}
50+
$PackagePrefix = ${PackageName}.Substring(3)
2451

25-
If (Test-Path "${Prefix}.net")
52+
If (Test-Path "${PackagePrefix}.net")
2653
{
27-
Get-Content -Path "${Prefix}.net\${Prefix}.net.rc.in" | % { $_ -Replace "@VERSION@","${Version}" } | Out-File -Encoding ascii "${Prefix}.net\${Prefix}.net.rc"
54+
Get-Content -Path "${PackagePrefix}.net\${PackagePrefix}.net.rc.in" |
55+
% { $_ -Replace "@VERSION@","${PackageVersion}" } |
56+
Out-File -Encoding ascii "${PackagePrefix}.net\${PackagePrefix}.net.rc"
2857
}
29-
30-
$NamePrefix = ""
31-
32-
ForEach (${Library} in Get-ChildItem -Directory -Path "lib*")
58+
ForEach (${PackageName} in Get-ChildItem -Directory -Path "lib*")
3359
{
34-
ForEach (${DirectoryElement} in Get-ChildItem -Path "${Library}\*.l")
60+
$NamePrefix = ""
61+
62+
ForEach (${DirectoryElement} in Get-ChildItem -Path "${PackageName}\*.l")
3563
{
3664
$OutputFile = ${DirectoryElement} -Replace ".l$",".c"
3765

3866
$NamePrefix = Split-Path -path ${DirectoryElement} -leaf
3967
$NamePrefix = ${NamePrefix} -Replace ".l$","_"
4068

41-
Write-Host "Running: ${WinFlex} -Cf ${DirectoryElement}"
69+
$WinFlexArguments = @(
70+
"-Cf",
71+
"${DirectoryElement}"
72+
)
73+
Write-Host "Running: ${WinFlex} $($WinFlexArguments -join ' ')"
4274

4375
# PowerShell will raise NativeCommandError if win_flex writes to stdout or stderr
4476
# therefore 2>&1 is added and the output is stored in a variable.
45-
$Output = Invoke-Expression -Command "& '${WinFlex}' -Cf ${DirectoryElement} 2>&1"
77+
$Output = Invoke-Expression -Command "& '${WinFlex}' $($WinFlexArguments -join ' ') 2>&1" | %{ "$_" }
4678
Write-Host ${Output}
4779

4880
# Moving manually since `win_flex -o filename' does not provide the expected behavior.
4981
Move-Item "lex.yy.c" ${OutputFile} -force
5082
}
51-
52-
ForEach (${DirectoryElement} in Get-ChildItem -Path "${Library}\*.y")
83+
ForEach (${DirectoryElement} in Get-ChildItem -Path "${PackageName}\*.y")
5384
{
5485
$OutputFile = ${DirectoryElement} -Replace ".y$",".c"
5586

56-
Write-Host "Running: ${WinBison} -d -v -l -p ${NamePrefix} -o ${OutputFile} ${DirectoryElement}"
87+
$WinBisonArguments = @(
88+
"-d"
89+
"-v"
90+
"-l"
91+
"-p", "${NamePrefix}"
92+
"-o", "${OutputFile}"
93+
"${DirectoryElement}"
94+
)
95+
Write-Host "Running: ${WinBison} $($WinBisonArguments -join ' ')"
5796

5897
# PowerShell will raise NativeCommandError if win_bison writes to stdout or stderr
5998
# therefore 2>&1 is added and the output is stored in a variable.
60-
$Output = Invoke-Expression -Command "& '${WinBison}' -d -v -l -p ${NamePrefix} -o ${OutputFile} ${DirectoryElement} 2>&1"
99+
$Output = Invoke-Expression -Command "& '${WinBison}' $($WinBisonArguments -join ' ') 2>&1" | %{ "$_" }
61100
Write-Host ${Output}
62101
}
63102
}
64-

0 commit comments

Comments
 (0)