Skip to content

Commit

Permalink
build,ci: Build system maintenance (#350)
Browse files Browse the repository at this point in the history
Squashed commit of the following:

commit 9ab0197
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 28 23:05:58 2022 +0100

    build: add dummy descriptions for deprecated options

commit b0c41d4
Author: Alice D <[email protected]>
Date:   Mon Dec 26 15:18:09 2022 -0500

    update docker containers with ones containing meson 0.63.3

commit a2dd417
Author: Andrei Alexeyev <[email protected]>
Date:   Sun Dec 25 19:20:44 2022 +0100

    build: featurize audio options

commit 7c59e2a
Author: Andrei Alexeyev <[email protected]>
Date:   Sun Dec 25 19:20:35 2022 +0100

    build: remove dead code

commit cf500af
Author: Andrei Alexeyev <[email protected]>
Date:   Sun Dec 25 19:07:37 2022 +0100

    doc: update BUILD.rst

commit 9764ac7
Author: Andrei Alexeyev <[email protected]>
Date:   Sun Dec 25 17:12:37 2022 +0100

    ci: disable WGI joystick backend for SDL

    Fails to build with latest llvm-mingw

commit 2d4f310
Author: p-sam <[email protected]>
Date:   Sun Dec 25 17:03:47 2022 +0100

    switch: fix missing include

commit 9264f16
Author: Andrei Alexeyev <[email protected]>
Date:   Sat Dec 24 14:36:41 2022 +0100

    ci: update meson to 0.63.3 due to a bug

commit 3e37be3
Author: Andrei Alexeyev <[email protected]>
Date:   Sat Dec 24 13:42:34 2022 +0100

    ci: update build options

commit 281a39a
Author: Alice D <[email protected]>
Date:   Sun Dec 18 00:17:07 2022 -0500

    ci: change when apt is cleaned up for switch image

commit 2f2100a
Author: Alice D <[email protected]>
Date:   Sun Dec 18 00:11:08 2022 -0500

    ci: bump switch homebrew container version

commit ebaff59
Author: Alice D <[email protected]>
Date:   Sat Dec 17 22:55:39 2022 -0500

    ci: bump windows container version

commit 7ce6f23
Author: Andrei Alexeyev <[email protected]>
Date:   Sat Dec 17 07:36:28 2022 +0100

    build: featurize renderer options

commit a345f21
Author: Andrei Alexeyev <[email protected]>
Date:   Sat Dec 17 07:33:30 2022 +0100

    build: revert to explicit fallback for libzstd

    Implicit fallback causes conflicts in the basis_universal subproject

    mesonbuild/meson#11189

commit b2de61f
Author: Andrei Alexeyev <[email protected]>
Date:   Sat Dec 17 05:29:29 2022 +0100

    build: remove debug_opengl

    This option was always misdocumented, as it only controlled whether GL
    debugging is on by default. You can still control it with the
    TAISEI_GL_DEBUG environment variable, which is set to 1 in meson devenv.

commit 4c659ba
Author: Andrei Alexeyev <[email protected]>
Date:   Fri Dec 16 08:03:37 2022 +0100

    build: set up useful env vars for meson devenv

    Makes Taisei load resources from the source tree, making live reload
    work; enables OpenGL debugging by default; works around ASan stack use
    after return false positives.

commit 1ddc58b
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 08:06:32 2022 +0100

    build: featurize docs; always install licenses

commit c3a94d7
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 07:46:28 2022 +0100

    build: featurize shader_transpiler

commit 619d82a
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 07:38:30 2022 +0100

    build: allow libzip fallback by default

commit 79ab722
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 07:35:51 2022 +0100

    build: featurize use_libcrypto

commit b393077
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 05:03:20 2022 +0100

    build: featurize validate_glsl

commit 7d76484
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 04:34:31 2022 +0100

    build: featurize some more installation options

commit 17c0bda
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 03:24:46 2022 +0100

    build: deprecate enable_zip for vfs_zip; convert package_data into feature

commit 9a4ef8c
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 02:37:55 2022 +0100

    build: deprecate developer=auto; default to false

commit 807240e
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 02:24:04 2022 +0100

    build: move subproject fallback info into wraps

commit 08c953f
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 01:57:33 2022 +0100

    build: deprecate 'static' option

    Meson has a built-in `prefer_static` now

commit c575601
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 01:49:31 2022 +0100

    build: remove complicated shaderc detection logic

    Meson does all of this internally since 0.51.0

commit cd2d460
Author: Andrei Alexeyev <[email protected]>
Date:   Wed Dec 14 01:45:17 2022 +0100

    build: Require meson >=0.63.0

commit 10abd79
Author: Andrei Alexeyev <[email protected]>
Date:   Mon Dec 12 05:16:47 2022 +0100

    ci: remove meson dist version workaround from release workflow

    Meson should know the correct version now

commit 31a07d8
Author: Andrei Alexeyev <[email protected]>
Date:   Mon Dec 12 03:46:28 2022 +0100

    build: use built-in summary() function

commit 0c47f6d
Author: Andrei Alexeyev <[email protected]>
Date:   Mon Dec 12 04:33:01 2022 +0100

    build: remove -Dversion_fallback and introduce .VERSION file

    The version script will now first try to read the version from a
    .VERSION file in the source root. If that file does not exist, it will
    query git. The .VERSION file is not included in the git repository, it
    is generated for inclusion in source tarballs.

    Package maintainers who had any use for -Dversion_fallback may want to
    create the .VERSION file themselves.

    Additionally, some git-specific files have been removed from source
    tarballs.

commit d32332a
Author: Andrei Alexeyev <[email protected]>
Date:   Mon Dec 12 03:00:07 2022 +0100

    build: set the "real" version in project()

commit f9a3fbc
Author: Andrei Alexeyev <[email protected]>
Date:   Mon Dec 12 01:50:08 2022 +0100

    build: raise meson_version and remove some legacy workarounds

    Effectively 0.56.0 was already required since we started using some of
    its features at some point.

    This also fixes all current meson warnings.
  • Loading branch information
Akaricchi committed Dec 28, 2022
1 parent 4cf14ee commit 267f47f
Show file tree
Hide file tree
Showing 52 changed files with 689 additions and 579 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/emscripten-experimental.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
- cron: '0 10 * * 4'

env:
MESON_VERSION: '0.56.2'
MESON_VERSION: '0.63.3'
EM_VERSION: 'tot'
EM_CACHE_FOLDER: 'emsdk'

Expand Down Expand Up @@ -66,6 +66,7 @@ jobs:
source ${{ env.EM_CACHE_FOLDER }}/emsdk_env.sh
meson setup build/
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/emscripten-ephemeral-ci.ini
--cross-file misc/ci/emscripten-build.ini
--prefix=$(pwd)/build-test
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ on:
- "**.wrap"

env:
MESON_VERSION: '0.56.2'
MESON_VERSION: '0.63.3'
EM_VERSION: '3.1.5'
EM_CACHE_FOLDER: 'emsdk'
TAISEI_NOPRELOAD: 0
Expand Down Expand Up @@ -72,6 +72,7 @@ jobs:
- name: Configure
run: >
meson setup build/
--native-file misc/ci/common-options.ini
--native-file misc/ci/linux-x86_64-build-test-ci.ini
--prefix=$(pwd)/build-test
Expand Down Expand Up @@ -132,6 +133,7 @@ jobs:
- name: Configure
run: >
meson setup build/
--native-file misc/ci/common-options.ini
--native-file misc/ci/macos-x86_64-build-test-ci.ini
--prefix=$(pwd)/build-test
Expand All @@ -158,7 +160,7 @@ jobs:
name: Windows (x64)
if: "!contains(github.event.head_commit.message, '[skip ci]')"
runs-on: ubuntu-20.04
container: taiseiproject/windows-toolkit:20220221 # cross-compiler with mingw
container: taiseiproject/windows-toolkit:20221226 # cross-compiler with mingw
steps:
- name: Checkout Code
uses: actions/checkout@v3
Expand All @@ -168,6 +170,7 @@ jobs:
- name: Configure Taisei (Meson)
run: >
meson setup build/
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/windows-llvm_mingw-x86_64-build-test-ci.ini
--prefix=$(pwd)/build-test
Expand Down Expand Up @@ -243,6 +246,7 @@ jobs:
source ${{ env.EM_CACHE_FOLDER }}/emsdk_env.sh
meson setup build/
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/emscripten-ephemeral-ci.ini
--cross-file misc/ci/emscripten-build.ini
--prefix=$(pwd)/build-test
Expand All @@ -268,7 +272,7 @@ jobs:
name: Switch (ARM64)
if: "!contains(github.event.head_commit.message, '[skip ci]')"
runs-on: ubuntu-20.04
container: taiseiproject/switch-toolkit:20210530
container: taiseiproject/switch-toolkit:20221226
steps:
- name: Checkout Code
uses: actions/checkout@v3
Expand All @@ -280,7 +284,9 @@ jobs:
switch/crossfile.sh > misc/ci/switch-crossfile-ci.ini
meson setup build/
--cross-file=misc/ci/switch-crossfile-ci.ini
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/switch-options.ini
--cross-file misc/ci/switch-crossfile-ci.ini
--prefix=$(pwd)/build-test
- name: Build
Expand Down
18 changes: 11 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on:
description: "Input git-ref to build as a test release"

env:
MESON_VERSION: '0.56.2'
MESON_VERSION: '0.63.3'
EM_VERSION: '2.0.29'
EM_CACHE_FOLDER: 'emsdk'
TAISEI_NOPRELOAD: 0
Expand Down Expand Up @@ -74,6 +74,7 @@ jobs:
git fetch --force --tags # see: https://github.com/actions/checkout/issues/290
meson setup build/linux
--native-file misc/ci/common-options.ini
--native-file misc/ci/linux-x86_64-build-release.ini
--prefix=$(pwd)/build-release
Expand Down Expand Up @@ -112,8 +113,6 @@ jobs:

- name: Package (Source)
run: |
meson rewrite kwargs set project / version ${{ env.BUILD_VERSION }} # meson dist uses 'project.version' instead of 'git describe' for the tag to use, so this overwrites it as a workaround
meson --reconfigure build/linux
meson dist -C build/linux --no-tests # disable test build, since we already know it compiles
scripts/sign-release.py build/linux/meson-dist/taisei-${{ env.BUILD_VERSION }}.tar.xz
Expand Down Expand Up @@ -212,7 +211,7 @@ jobs:
windows-release-build-x64:
name: Windows (x64)
runs-on: ubuntu-20.04
container: taiseiproject/windows-toolkit:20220221
container: taiseiproject/windows-toolkit:20221226
steps:
- name: Import GPG Key
uses: taisei-project/ghaction-import-gpg@v5
Expand Down Expand Up @@ -240,6 +239,7 @@ jobs:
meson setup build/windows
-Dangle_libegl=$(pwd)/angle-compiled/lib/Windows-x64-dll/libEGL.dll
-Dangle_libgles=$(pwd)/angle-compiled/lib/Windows-x64-dll/libGLESv2.dll
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/windows-llvm_mingw-x86_64-build-release.ini
--prefix=$(pwd)/build-release
Expand Down Expand Up @@ -290,7 +290,7 @@ jobs:
windows-release-build-x86:
name: Windows (x86)
runs-on: ubuntu-20.04
container: taiseiproject/windows-toolkit:20220221
container: taiseiproject/windows-toolkit:20221226
steps:
- name: Import GPG Key
uses: taisei-project/ghaction-import-gpg@v5
Expand Down Expand Up @@ -318,6 +318,7 @@ jobs:
meson setup build/windows
-Dangle_libegl=$(pwd)/angle-compiled/lib/Windows-x86-dll/libEGL.dll
-Dangle_libgles=$(pwd)/angle-compiled/lib/Windows-x86-dll/libGLESv2.dll
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/windows-llvm_mingw-x86-build-release.ini
--prefix=$(pwd)/build-release
Expand Down Expand Up @@ -434,6 +435,7 @@ jobs:
source ${{ env.EM_CACHE_FOLDER }}/emsdk_env.sh
meson setup build/emscripten
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/emscripten-build.ini
--cross-file misc/ci/emscripten-ephemeral-ci.ini
--prefix=$(pwd)/build-release
Expand Down Expand Up @@ -474,7 +476,7 @@ jobs:
switch-release-build:
name: Switch (ARM64)
runs-on: ubuntu-20.04
container: taiseiproject/switch-toolkit:20210829
container: taiseiproject/switch-toolkit:20221226
steps:
- name: Import GPG Key
uses: taisei-project/ghaction-import-gpg@v5
Expand All @@ -496,7 +498,9 @@ jobs:
switch/crossfile.sh > misc/ci/switch-crossfile-ci.ini
meson setup build/nx
--cross-file=misc/ci/switch-crossfile-ci.ini
--cross-file misc/ci/common-options.ini
--cross-file misc/ci/switch-options.ini
--cross-file misc/ci/switch-crossfile-ci.ini
--prefix=$(pwd)/build-release
- name: Set Package Version
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ __pycache__
*~
*-autosave.kra
*.swp
.VERSION
Loading

0 comments on commit 267f47f

Please sign in to comment.