From fa10d0c66e504da9e06d41e7239ff4d919b00ae1 Mon Sep 17 00:00:00 2001 From: Micah Snyder Date: Fri, 3 May 2024 10:49:40 -0400 Subject: [PATCH] GitHub Actions: Fix macOS build issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Upgrade macOS OpenSSL dependency to use 3 instead of 1.1. Python's pip from Homebrew now refuses to isntall globally: error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try brew install xyz, where xyz is the package you are trying to install. If you wish to install a Python library that isn't in Homebrew, use a virtual environment: python3 -m venv path/to/venv source path/to/venv/bin/activate python3 -m pip install xyz If you wish to install a Python application that isn't in Homebrew, it may be easiest to use 'pipx install xyz', which will manage a virtual environment for you. You can install pipx with brew install pipx You may restore the old behavior of pip by passing the '--break-system-packages' flag to pip, or by adding 'break-system-packages = true' to your pip.conf file. The latter will permanently disable this error. If you disable this error, we STRONGLY recommend that you additionally pass the '--user' flag to pip, or set 'user = true' in your pip.conf file. Failure to do this can result in a broken Homebrew installation. Read more about this behavior here: Using Pipx instead. Making the same change for Ubuntu just in case. --- .github/workflows/cmake.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 320885e0bf..7b2711fbb5 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -94,13 +94,13 @@ jobs: - uses: actions/checkout@v1 - name: Install Build Tools - run: brew install bison flex + run: brew install bison flex pipx - name: Install Dependencies - run: brew install bzip2 check curl-openssl json-c libxml2 ncurses openssl@1.1 pcre2 zlib + run: brew install bzip2 check curl json-c libxml2 ncurses openssl@3 pcre2 zlib - name: Install pytest for easier to read test results - run: python3 -m pip install pytest + run: pipx install pytest - uses: lukka/get-cmake@v3.21.2 @@ -119,9 +119,9 @@ jobs: # The CMake binaries on the Github Actions machines are (as of this writing) 3.12 run: cmake ${{runner.workspace}}/clamav -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} - -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl@1.1/ - -DOPENSSL_CRYPTO_LIBRARY=/usr/local/opt/openssl@1.1/lib/libcrypto.1.1.dylib - -DOPENSSL_SSL_LIBRARY=/usr/local/opt/openssl@1.1/lib/libssl.1.1.dylib + -DOPENSSL_ROOT_DIR=/opt/homebrew/include/ + -DOPENSSL_CRYPTO_LIBRARY=/opt/homebrew/lib/libcrypto.3.dylib + -DOPENSSL_SSL_LIBRARY=/opt/homebrew/lib/libssl.3.dylib -DENABLE_STATIC_LIB=ON -DENABLE_EXAMPLES=ON @@ -148,13 +148,13 @@ jobs: run: sudo apt-get update - name: Install Build Tools - run: sudo apt-get install -y bison flex valgrind + run: sudo apt-get install -y bison flex valgrind pipx - name: Install Dependencies run: sudo apt-get install -y check libbz2-dev libcurl4-openssl-dev libjson-c-dev libmilter-dev libncurses5-dev libpcre3-dev libssl-dev libxml2-dev zlib1g-dev - name: Install pytest for easier to read test results - run: python3 -m pip install pytest + run: pipx install pytest - uses: lukka/get-cmake@v3.21.2