Skip to content

Ui work.

Ui work. #252

Workflow file for this run

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/*