Ui work. #252
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux | |
on: | |
workflow_dispatch: | |
push: | |
paths: | |
- 'src/**' | |
- 'tools/**' | |
- '.github/workflows/linux.yml' | |
- 'external/**' | |
- 'Makefile' | |
permissions: | |
contents: read | |
jobs: | |
build: | |
runs-on: ${{matrix.os.name}} | |
strategy: | |
matrix: | |
os: [ {name: ubuntu-20.04, lto: NO}, {name: ubuntu-22.04, lto: YES}, {name: ubuntu-24.04, lto: YES} ] | |
steps: | |
- uses: actions/[email protected] | |
- run: | | |
sudo apt-get update -qq | |
sudo apt-get install -y --no-install-recommends libglfw3 libglfw3-dev libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxext-dev libxfixes-dev gcc mingw-w64 clang | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=IMGUI COMPILER=GCC -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=RAYLIB COMPILER=GCC -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=HEADLESS COMPILER=GCC -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=IMGUI COMPILER=GCC LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=RAYLIB COMPILER=GCC LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=HEADLESS COMPILER=GCC LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=IMGUI COMPILER=CLANG -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=RAYLIB COMPILER=CLANG -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=HEADLESS COMPILER=CLANG -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=IMGUI COMPILER=CLANG LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=RAYLIB COMPILER=CLANG LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=HEADLESS COMPILER=CLANG LTO=${{matrix.os.lto}} -B | |
- run: make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=IMGUI -B | |
- run: make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=RAYLIB -B | |
- run: make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=HEADLESS -B | |
- run: | | |
./bin/brplot_imgui_linux_debug_gcc --unittest | |
./bin/brplot_raylib_linux_debug_gcc --unittest | |
./bin/brplot_headless_linux_debug_gcc --unittest | |
./bin/brplot_imgui_linux_debug_clang --unittest | |
./bin/brplot_raylib_linux_debug_clang --unittest | |
./bin/brplot_headless_linux_debug_clang --unittest | |
- run: | | |
git clone https://github.com/emscripten-core/emsdk.git | |
cd emsdk | |
./emsdk install latest | |
./emsdk activate latest | |
source ./emsdk_env.sh | |
cd .. | |
- run: make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=IMGUI -B | |
- run: make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=RAYLIB -B | |
- run: | | |
make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=HEADLESS -B | |
- run: | | |
make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=HEADLESS | |
make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=RAYLIB | |
make -j8 PLATFORM=WINDOWS CONFIG=RELEASE GUI=IMGUI | |
make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=HEADLESS | |
make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=RAYLIB | |
make -j8 EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ PLATFORM=WEB CONFIG=RELEASE GUI=IMGUI | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=HEADLESS COMPILER=GCC LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=RAYLIB COMPILER=GCC LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=IMGUI COMPILER=GCC LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=HEADLESS COMPILER=GCC | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=RAYLIB COMPILER=GCC | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=IMGUI COMPILER=GCC | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=HEADLESS COMPILER=CLANG LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=RAYLIB COMPILER=CLANG LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=RELEASE GUI=IMGUI COMPILER=CLANG LTO=${{matrix.os.lto}} | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=HEADLESS COMPILER=CLANG | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=RAYLIB COMPILER=CLANG | |
make -j8 PLATFORM=LINUX CONFIG=DEBUG GUI=IMGUI COMPILER=CLANG | |
- run: | | |
cat /dev/random | time bin/brplot_headless_linux_debug_gcc | |
cat /dev/random | time bin/brplot_headless_linux_debug_clang | |
- run: | | |
EMSCRIPTEN=/home/runner/work/brplot/brplot/emsdk/upstream/emscripten/ ./tools/local_ci.sh LTO=${{matrix.os.lto}} | |
- run: | | |
test -f www/index.wasm && ls -alFh www | |
ls -alFh bin && strip bin/* && ls -alFh bin | |
file bin/* | |