X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile;h=ff768438c45a9366724837b1516b73fc1e209f78;hb=89da3437c862c15acb870fbe3175b9e4a0a8244a;hp=7f7e7c1b5f75b37497e9189cce91c8c18796b0c6;hpb=ef7665d0d3854b3464800d8d7fef9a90f14d9a9f;p=movit diff --git a/Makefile b/Makefile index 7f7e7c1..ff76843 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,54 @@ CC=gcc CXX=g++ -CXXFLAGS=-Wall -g -LDFLAGS=-lSDL -lSDL_image -lGL -OBJS=main.o util.o widgets.o effect.o effect_chain.o input.o -OBJS += lift_gamma_gain_effect.o gamma_expansion_effect.o gamma_compression_effect.o colorspace_conversion_effect.o saturation_effect.o vignette_effect.o mirror_effect.o blur_effect.o diffusion_effect.o glow_effect.o mix_effect.o sandbox_effect.o +CXXFLAGS=-Wall -g $(shell pkg-config --cflags eigen3 ) +LDFLAGS=-lSDL -lSDL_image -lGL -lrt +RANLIB=ranlib -test: $(OBJS) - $(CXX) -o test $(OBJS) $(LDFLAGS) +TEST_OBJS=main.o -.o: .cpp - $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $< +# Core. +LIB_OBJS=util.o widgets.o effect.o effect_chain.o + +# Inputs. +LIB_OBJS += flat_input.o +LIB_OBJS += ycbcr_input.o + +# Effects. +LIB_OBJS += lift_gamma_gain_effect.o +LIB_OBJS += white_balance_effect.o +LIB_OBJS += gamma_expansion_effect.o +LIB_OBJS += gamma_compression_effect.o +LIB_OBJS += colorspace_conversion_effect.o +LIB_OBJS += saturation_effect.o +LIB_OBJS += vignette_effect.o +LIB_OBJS += mirror_effect.o +LIB_OBJS += blur_effect.o +LIB_OBJS += diffusion_effect.o +LIB_OBJS += glow_effect.o +LIB_OBJS += unsharp_mask_effect.o +LIB_OBJS += mix_effect.o +LIB_OBJS += resize_effect.o +LIB_OBJS += deconvolution_sharpen_effect.o +LIB_OBJS += sandbox_effect.o + +OBJS=$(TEST_OBJS) $(LIB_OBJS) + +# A small test program (not a unit test). +test: libmovit.a $(TEST_OBJS) + $(CXX) -o test $(TEST_OBJS) libmovit.a $(LDFLAGS) + +# The library itself. +libmovit.a: $(LIB_OBJS) + $(AR) rc $@ $(LIB_OBJS) + $(RANLIB) $@ + +%.o: %.cpp + $(CXX) -MMD $(CPPFLAGS) $(CXXFLAGS) -o $@ -c $< + +DEPS=$(OBJS:.o=.d) +-include $(DEPS) clean: - $(RM) test $(OBJS) + $(RM) test libmovit.a $(OBJS) $(DEPS) .PHONY: clean