name: C/C++ CI on: push: branches: [ "test-ci" ] paths: [ 'RELEASE', '.github/workflows/build-win64.yml' ] jobs: ci: name: "${{ matrix.target }}" strategy: matrix: target: - windows-2022 runs-on: ${{ matrix.target }} steps: - uses: actions/checkout@v4 # - name: configure # run: ./configure - name: set date run: | $NOW = Get-Date -Format "yyMMddHHmmss" echo "now: $NOW" $RELEASE = Get-Content -Path "RELEASE" -Raw echo "release: $RELEASE" echo "NOW=$NOW" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "RELEASE=$RELEASE" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "VERSION=VERSION=`"$RELEASE`"" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "BUILDDATE=BUILDDATE=`"$NOW`"" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "COMMONFILES=cfg/*.* cfg/sql/*.* doc/ru/*.* doc/html/*.* doc/html/plugins/*.* doc/html/man8/*.* doc/html/man3/*.* doc/devel/*.rtf copying authors README rus.3ps" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - name: echo variables shell: cmd run: echo builddate:%BUILDDATE% release:%RELEASE% version:%VERSION% now:%NOW% - name: install packages run: vcpkg install pcre2:x64-windows # - name: make Windows # run: make -f Makefile.win # env: # LDFLAGS: '-L "c:/msys64/mingw64/lib"' # CFLAGS: '-I "c:/msys64/mingw64/include"' # - name: make clean Windows # if: ${{ startsWith(matrix.target, 'windows') }} # run: make -f Makefile.win clean - name: Add msbuild to PATH uses: microsoft/setup-msbuild@v3 - name: make Windows MSVC if: ${{ startsWith(matrix.target, 'windows') }} shell: cmd run: | call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" D: cd "D:/a/3proxy/3proxy" mkdir bin64 set "LIB=%LIB%;c:/program files/openssl/lib/VC/x64/MT;c:/vcpkg/installed/x64-windows/lib" set "INCLUDE=%INCLUDE%;c:/program files/openssl/include;c:/vcpkg/installed/x64-windows/include" nmake /F Makefile.msvc64 zip 3proxy-%RELEASE%-x64.zip bin64/3proxy.exe bin64/*.dll bin64/mycrypt.exe %COMMONFILES% nmake /F Makefile.msvc64 clean