From ac5ffffc23c3ce2130ea6e010b5f6795d32512a3 Mon Sep 17 00:00:00 2001 From: Rokas Kupstys Date: Wed, 18 Mar 2020 09:26:51 +0200 Subject: [PATCH] CI: Test builds with freetype on linux. --- .github/workflows/build.yml | 7 ++++++- examples/example_null/Makefile | 11 +++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7718196ed..ee5591add 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -166,7 +166,7 @@ jobs: - name: Install Dependencies run: | sudo apt-get update - sudo apt-get install -y libglfw3-dev libsdl2-dev gcc-multilib g++-multilib + sudo apt-get install -y libglfw3-dev libsdl2-dev gcc-multilib g++-multilib libfreetype6-dev - name: Build example_null (extra warnings, gcc 32-bit) run: | @@ -188,6 +188,11 @@ jobs: make -C examples/example_null clean CXXFLAGS="$CXXFLAGS -m64 -Werror" CXX=clang++ make -C examples/example_null EXTRA_WARNINGS=1 + - name: Build example_null (freetype) + run: | + make -C examples/example_null clean + make -C examples/example_null WITH_FREETYPE=1 + - name: Build example_null (single file build) run: | echo '#define IMGUI_IMPLEMENTATION' > example_single_file.cpp diff --git a/examples/example_null/Makefile b/examples/example_null/Makefile index 7d39e824f..6bc69b81a 100644 --- a/examples/example_null/Makefile +++ b/examples/example_null/Makefile @@ -5,6 +5,7 @@ EXE = example_null EXTRA_WARNINGS ?= 0 +WITH_FREETYPE ?= 0 SOURCES = main.cpp SOURCES += ../../imgui.cpp ../../imgui_demo.cpp ../../imgui_draw.cpp ../../imgui_widgets.cpp OBJS = $(addsuffix .o, $(basename $(notdir $(SOURCES)))) @@ -19,6 +20,13 @@ ifeq ($(EXTRA_WARNINGS), 1) CXXFLAGS += -Wno-zero-as-null-pointer-constant -Wno-double-promotion -Wno-variadic-macros endif +# We use the WITH_FREETYPE flag on our CI setup to test misc/freetype/imgui_freetype.cpp font rasterizer +ifeq ($(WITH_FREETYPE), 1) + SOURCES += ../../misc/freetype/imgui_freetype.cpp + CXXFLAGS += $(shell pkg-config --cflags freetype2) + LIBS += $(shell pkg-config --libs freetype2) +endif + ##--------------------------------------------------------------------- ## BUILD FLAGS PER PLATFORM ##--------------------------------------------------------------------- @@ -60,6 +68,9 @@ endif %.o:../../%.cpp $(CXX) $(CXXFLAGS) -c -o $@ $< +%.o:../../misc/freetype/%.cpp + $(CXX) $(CXXFLAGS) -c -o $@ $< + all: $(EXE) @echo Build complete for $(ECHO_MESSAGE)