build.sh (833B)
1 #!/bin/sh 2 3 CC="${CC:-clang}" 4 5 WARNINGS="-Wall -Wextra ${WERROR:+-Werror} -Wno-unused-parameter" 6 CFLAGS="-std=c11 -O0 -g3" 7 LDFLAGS="-Wl,--as-needed" 8 9 PROTOCOLS="/usr/share/wayland-protocols" 10 WL_SCANNER="$(which wayland-scanner)" 11 12 GLSLC="$(which glslc)" 13 14 set -ex 15 16 mkdir -p bin obj 17 18 $WL_SCANNER client-header $PROTOCOLS/stable/xdg-shell/xdg-shell.xml obj/xdg-shell.h 19 $WL_SCANNER private-code $PROTOCOLS/stable/xdg-shell/xdg-shell.xml obj/xdg-shell.c 20 21 $CC -o bin/wl-egl wl-egl.c obj/xdg-shell.c \ 22 $WARNINGS $CFLAGS -Iobj $LDFLAGS \ 23 $(pkg-config --cflags --libs wayland-client wayland-egl egl) 24 25 $GLSLC -mfmt=c shader.vert -o obj/shader.vert.spv.inc 26 $GLSLC -mfmt=c shader.frag -o obj/shader.frag.spv.inc 27 28 $CC -o bin/wl-vk wl-vk.c obj/xdg-shell.c \ 29 $WARNINGS $CFLAGS -Iobj $LDFLAGS \ 30 $(pkg-config --cflags --libs wayland-client vulkan)