From b1055e814a698ff82b59a24da8462e1f1a76a82d Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:12:21 +0100 Subject: [PATCH 1/9] Use fix macOS version in CI --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 32d0d93b1..1b2512930 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,8 +7,8 @@ on: pull_request: jobs: - Macos: - runs-on: macos-latest + macOS: + runs-on: macos-12 steps: - name: Checkout code uses: actions/checkout@v3 From cb4938c5f892ed525b1bd72f3208b03b8af2c676 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:21:30 +0100 Subject: [PATCH 2/9] Improve a bit the readability of the workflow --- .github/workflows/ci.yml | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1b2512930..5ec0a1927 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,24 +10,29 @@ jobs: macOS: runs-on: macos-12 steps: - - name: Checkout code + - name: Retrieve source code uses: actions/checkout@v3 + - name: Setup python 3.9 uses: actions/setup-python@v3 with: python-version: '3.9' + - name: Install packages run: | brew update brew install gcovr pkg-config ninja || brew link --overwrite python + - name: Install python modules run: pip3 install meson==0.49.2 pytest - - name: Install deps + + - name: Install dependences shell: bash run: | ARCHIVE_NAME=deps2_osx_native_dyn_libkiwix.tar.xz wget -O- http://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME - - name: Compile + + - name: Compile source code shell: bash run: | export PKG_CONFIG_PATH=$HOME/BUILD_native_dyn/INSTALL/lib/pkgconfig @@ -35,14 +40,15 @@ jobs: meson . build --default-library=shared -Db_coverage=true cd build ninja - - name: Test + + - name: Test libkiwix + env: + SKIP_BIG_MEMORY_TEST: 1 shell: bash run: | export LD_LIBRARY_PATH=$HOME/BUILD_native_dyn/INSTALL/lib:$HOME/BUILD_native_dyn/INSTALL/lib64 cd build meson test --verbose - env: - SKIP_BIG_MEMORY_TEST: 1 Linux: strategy: From cc31846152d0c46b89d895870644034271795f7e Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:22:23 +0100 Subject: [PATCH 3/9] Don't install unused packages --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5ec0a1927..5f5fe4186 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,10 +21,10 @@ jobs: - name: Install packages run: | brew update - brew install gcovr pkg-config ninja || brew link --overwrite python + brew install pkg-config ninja || brew link --overwrite python - name: Install python modules - run: pip3 install meson==0.49.2 pytest + run: pip3 install meson==0.49.2 - name: Install dependences shell: bash From fe646511d12ce028b3b56bc643dded785e1f4de3 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:29:31 +0100 Subject: [PATCH 4/9] Python3 is already available --- .github/workflows/ci.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5f5fe4186..89e831a1a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,11 +13,6 @@ jobs: - name: Retrieve source code uses: actions/checkout@v3 - - name: Setup python 3.9 - uses: actions/setup-python@v3 - with: - python-version: '3.9' - - name: Install packages run: | brew update From c57b5ba1ad8a0be3690a528dcebf4d17f6c3ed4e Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:36:28 +0100 Subject: [PATCH 5/9] Install meson using Homebrew --- .github/workflows/ci.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 89e831a1a..c24dd7461 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,10 +16,7 @@ jobs: - name: Install packages run: | brew update - brew install pkg-config ninja || brew link --overwrite python - - - name: Install python modules - run: pip3 install meson==0.49.2 + brew install pkg-config ninja meson - name: Install dependences shell: bash From b24157ddf962e6f4d3d2116b7f6d9b5576b9c359 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:42:37 +0100 Subject: [PATCH 6/9] Not necessary to specify bash, already the default --- .github/workflows/ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c24dd7461..b69ce4303 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,13 +19,11 @@ jobs: brew install pkg-config ninja meson - name: Install dependences - shell: bash run: | ARCHIVE_NAME=deps2_osx_native_dyn_libkiwix.tar.xz wget -O- http://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME - name: Compile source code - shell: bash run: | export PKG_CONFIG_PATH=$HOME/BUILD_native_dyn/INSTALL/lib/pkgconfig export CPPFLAGS="-I$HOME/BUILD_native_dyn/INSTALL/include" @@ -36,7 +34,6 @@ jobs: - name: Test libkiwix env: SKIP_BIG_MEMORY_TEST: 1 - shell: bash run: | export LD_LIBRARY_PATH=$HOME/BUILD_native_dyn/INSTALL/lib:$HOME/BUILD_native_dyn/INSTALL/lib64 cd build From 2d0cff2dc104b8e1a30c9a99c252ba7c409b7562 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:45:06 +0100 Subject: [PATCH 7/9] Better definition of env variables --- .github/workflows/ci.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b69ce4303..be2f3552a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,6 +9,8 @@ on: jobs: macOS: runs-on: macos-12 + env: + HOME: /Users/runner steps: - name: Retrieve source code uses: actions/checkout@v3 @@ -19,14 +21,16 @@ jobs: brew install pkg-config ninja meson - name: Install dependences + env: + ARCHIVE_NAME: deps2_osx_native_dyn_libkiwix.tar.xz run: | - ARCHIVE_NAME=deps2_osx_native_dyn_libkiwix.tar.xz wget -O- http://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME - name: Compile source code + env: + PKG_CONFIG_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib/pkgconfig + CPPFLAGS: -I${{env.HOME}}/BUILD_native_dyn/INSTALL/include run: | - export PKG_CONFIG_PATH=$HOME/BUILD_native_dyn/INSTALL/lib/pkgconfig - export CPPFLAGS="-I$HOME/BUILD_native_dyn/INSTALL/include" meson . build --default-library=shared -Db_coverage=true cd build ninja @@ -34,8 +38,8 @@ jobs: - name: Test libkiwix env: SKIP_BIG_MEMORY_TEST: 1 + LD_LIBRARY_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib:${{env.HOME}}/BUILD_native_dyn/INSTALL/lib64 run: | - export LD_LIBRARY_PATH=$HOME/BUILD_native_dyn/INSTALL/lib:$HOME/BUILD_native_dyn/INSTALL/lib64 cd build meson test --verbose From cfe3f8e3d93516a263e827021295585d86ac3ef1 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 16:48:05 +0100 Subject: [PATCH 8/9] Better use HTTPS in place of HTTP --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index be2f3552a..eed5dd16d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: env: ARCHIVE_NAME: deps2_osx_native_dyn_libkiwix.tar.xz run: | - wget -O- http://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME + wget -O- https://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME - name: Compile source code env: From a04646b7b20cfc91407d6506958155d59546e88a Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 19 Feb 2023 17:14:41 +0100 Subject: [PATCH 9/9] Simplify ninja and meson calls --- .github/workflows/ci.yml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eed5dd16d..c02a926d5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,11 +20,11 @@ jobs: brew update brew install pkg-config ninja meson - - name: Install dependences + - name: Install dependencies env: ARCHIVE_NAME: deps2_osx_native_dyn_libkiwix.tar.xz run: | - wget -O- https://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME + wget -O- https://tmp.kiwix.org/ci/${{env.ARCHIVE_NAME}} | tar -xJ -C ${{env.HOME}} - name: Compile source code env: @@ -32,16 +32,13 @@ jobs: CPPFLAGS: -I${{env.HOME}}/BUILD_native_dyn/INSTALL/include run: | meson . build --default-library=shared -Db_coverage=true - cd build - ninja + ninja -C build - name: Test libkiwix env: SKIP_BIG_MEMORY_TEST: 1 LD_LIBRARY_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib:${{env.HOME}}/BUILD_native_dyn/INSTALL/lib64 - run: | - cd build - meson test --verbose + run: meson test -C build --verbose Linux: strategy: