aboutsummaryrefslogtreecommitdiff
path: root/src/Makefile.am
blob: f7b34f33d96b832fc7369169056fc80fd3be992d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
shadersdir = $(datarootdir)/shaders
SLANGC = slangc

bin_PROGRAMS = engine
shaders_PROGRAMS = shader.spv

engine_SOURCES = \
	engine.cpp \
	renderer.hpp renderer.cpp \
	obj_parser.hpp obj_parser.cpp \
	fb/chfb.hpp fb/chfb.cpp fb/pixfb.hpp fb/pixfb.cpp \
	math/vector.hpp \
	math/mat4.hpp \
	math/quat.hpp \
	math/tform.hpp \
	o3d/mesh.hpp o3d/mesh.cpp \
	o3d/obj3d.hpp \
	o3d/vertex_data.hpp \
	o3d/vertex.hpp \
	o3d/deriv_vertex.hpp \
	o3d/tri.hpp \
	o3d/tri_deriv.hpp o3d/tri_deriv.cpp \
	o3d/camera.hpp \
	o3d/scene.hpp \
	ctrl/keyboard.hpp \
	ctrl/mouse.hpp
engine_CPPFLAGS = -std=gnu++23 -Wall -Wextra
engine_LDFLAGS  = -std=gnu++23 -Wall -Wextra

engine_CPPFLAGS += -DDATADIR='"$(datadir)"' -DSHADERSDIR='"$(shadersdir)"'

# Not sure why they are needed
engine_LDADD =# -ldl -lpthread -lX11 -lXxf86vm -lXrandr -lXi
engine_CPPFLAGS += $(GLFW3_CFLAGS)
engine_LDADD    += $(GLFW3_LIBS)
engine_CPPFLAGS += $(VULKAN_CFLAGS)
engine_LDADD    += $(VULKAN_LIBS)

if HAVE_NCURSES
engine_CPPFLAGS += $(NCURSES_CFLAGS)
engine_LDADD    += $(NCURSES_LIBS)
endif

shader_spv_SOURCES = shaders/shader.slang
shader_spv_SPVFLAGS = -target spirv -profile spirv_1_4 -emit-spirv-directly -fvk-use-entrypoint-name -entry vert_main -entry frag_main

shader.spv$(EXEEXT): shaders/shader.slang
	$(SLANGC) $(shader_spv_SPVFLAGS) -o $@ $<