summaryrefslogtreecommitdiffstats
path: root/Makefile_util.am
blob: df89a9bc6f3607ce959b3e50169acd9a97e57369 (plain)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
if ENABLE_TEST
noinst_PROGRAMS += test/test
endif
test_test_SOURCES = test/test.c
test_test_LDADD = libass/libass.la
test_test_LDFLAGS = $(AM_LDFLAGS) $(LIBPNG_LIBS) -static

if ENABLE_PROFILE
noinst_PROGRAMS += profile/profile
endif
profile_profile_SOURCES = profile/profile.c
profile_profile_LDADD = libass/libass.la
profile_profile_LDFLAGS = $(AM_LDFLAGS) -static

if ENABLE_COMPARE
noinst_PROGRAMS += compare/compare
endif
compare_compare_SOURCES = compare/image.h  compare/image.c  compare/compare.c
compare_compare_LDADD = libass/libass.la
compare_compare_LDFLAGS = $(AM_LDFLAGS) $(LIBPNG_LIBS) -static
EXTRA_DIST += compare/README.md

if ENABLE_FUZZ
noinst_PROGRAMS += fuzz/fuzz
endif
fuzz_fuzz_SOURCES = fuzz/fuzz.c
fuzz_fuzz_CPPFLAGS = $(AM_CPPFLAGS) $(FUZZ_CPPFLAGS)
fuzz_fuzz_LDADD = libass/libass.la
fuzz_fuzz_LDFLAGS = $(AM_LDFLAGS) $(FUZZ_LDFLAGS) -static

if ENABLE_FUZZ
fuzz/fuzz_ossfuzz: fuzz/fuzz-fuzz.o libass/libass.la $(srcdir)/libass.pc
	$$CXX $$CXXFLAGS -std=c++11 \
		-o $@ \
		fuzz/fuzz-fuzz.o \
		$$LIB_FUZZING_ENGINE libass/.libs/libass.a \
		-Wl,-Bstatic \
		$$(pkg-config --static --libs $(srcdir)/libass.pc | sed -e 's/-lm //g' -e 's/-lass //g') \
		-Wl,-Bdynamic
endif


if ENABLE_CHECKASM
check_PROGRAMS += checkasm/checkasm
TESTS += checkasm/checkasm$(EXEEXT)
bench: run-checkasm-bench
endif

.asm.o:
	$(nasm_verbose)$(AS) $(ASFLAGS) -I$(top_srcdir)/libass/ -o $@ $<

checkasm_checkasm_SOURCES = \
    checkasm/rasterizer.c \
    checkasm/blend_bitmaps.c \
    checkasm/be_blur.c \
    checkasm/blur.c \
    checkasm/checkasm.h checkasm/checkasm.c

checkasm_checkasm_CPPFLAGS = -I$(top_srcdir)/libass
checkasm_checkasm_LDADD = libass/libass.la
checkasm_checkasm_LDFLAGS = $(AM_LDFLAGS) -static

if X86
checkasm_checkasm_SOURCES += checkasm/x86/checkasm.asm
endif
if AARCH64
checkasm_checkasm_SOURCES += checkasm/arm/checkasm_64.S
endif

run-checkasm: checkasm/checkasm$(EXEEXT)
	checkasm/checkasm$(EXEEXT)

run-checkasm-bench: checkasm/checkasm$(EXEEXT)
	checkasm/checkasm$(EXEEXT) --bench