svn commit: r1926599 - /subversion/trunk/.github/workflows/cmake.yml

[email protected]
Newsgroups gmane.comp.version-control.subversion.svn
Message-ID <[email protected]>
Author: rinrab
Date: Fri Jun 20 14:59:55 2025
New Revision: 1926599

URL: http://svn.apache.org/viewvc?rev=1926599&view=rev
Log:
GitHub actions: Consume all MacOS dependencies (except zlib) from homebrew,
instead of relying on pre-installed libs.

* .github/workflows/cmake.yml
  (Prepare MacOS Environment): Merged into 'install dependencies' step.
  (Install MacOS dependencies): List all packages in `brew install` command
   and explicitly add all .pc file directories into PKG_CONFIG_PATH
   environment variable.

In my testing, the whole action completed successfully on Mac OS, except
of one test:

```
24: svn_tests: E200006: Expected error SVN_ERR_SQLITE_BUSY but got SVN_ERR_SQLITE_ERROR
24: svn_tests: E200030: sqlite[S10]: disk I/O error
24: svn_tests: E200042: Additional errors:
24: svn_tests: E200030: sqlite[S10]: disk I/O error
24: svn_tests: E200044: SQLite transaction rollback failed
24: svn_tests: E200030: sqlite[S1]: cannot rollback - no transaction is active
24: svn_tests: E200030: sqlite[S1]: cannot rollback - no transaction is active
24: FAIL:  fs-test 65: test commit with locked rep-cache
```

It seems like the problem is not in the build process, but sqlite works not
as we expect on this platform.

Modified:
    subversion/trunk/.github/workflows/cmake.yml

Modified: subversion/trunk/.github/workflows/cmake.yml
URL: http://svn.apache.org/viewvc/subversion/trunk/.github/workflows/cmake.yml?rev=1926599&r1=1926598&r2=1926599&view=diff
==============================================================================
--- subversion/trunk/.github/workflows/cmake.yml (original)
+++ subversion/trunk/.github/workflows/cmake.yml Fri Jun 20 14:59:55 2025
@@ -111,11 +111,6 @@ jobs:
         run: |
           # nothing yet
 
-      - name: Prepare Environment (Mac OS)
-        if: runner.os == 'macOS'
-        run: |
-          "CMAKE_PREFIX_PATH=/opt/homebrew/opt/subversion/libexec/serf"  >> $env:GITHUB_ENV
-
       - name: Export GitHub Actions cache environment variables
         if: runner.os == 'Windows'
         uses: actions/github-script@v7
@@ -150,10 +145,16 @@ jobs:
 
       - name: Install dependencies (Mac OS, homebrew)
         if: runner.os == 'macOS'
-        # hack to get serf installed, since there is no separate package.
-        run: >
-          brew install subversion
-          ${{ matrix.extra_packages }}
+        # Subversion is being installed here only to get the Serf library,
+        # since there is no separate package.
+        run: |
+          brew install apr apr-util expat sqlite ninja subversion
+          ls -r /opt/homebrew/opt/subversion/libexec/serf
+          $PKG_CONFIG_PATH = "/opt/homebrew/opt/apr/lib/pkgconfig"
+          $PKG_CONFIG_PATH += ":/opt/homebrew/opt/apr-util/lib/pkgconfig"
+          $PKG_CONFIG_PATH += ":/opt/homebrew/opt/expat/lib/pkgconfig"
+          $PKG_CONFIG_PATH += ":/opt/homebrew/opt/subversion/libexec/serf/lib/pkgconfig"
+          "PKG_CONFIG_PATH=$PKG_CONFIG_PATH"  >> $env:GITHUB_ENV
 
       - name: Use LF for Git checkout
         run: |
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.