Peter Huewe | 9f7cc08 | 2019-05-02 18:16:28 +0200 | [diff] [blame] | 1 | # SPDX-License-Identifier: BSD-2-Clause |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 2 | # Copyright (c) 2019 Intel Corporation |
| 3 | # All rights reserved. |
| 4 | |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 5 | TEST_EXTENSIONS += .fuzz |
| 6 | FUZZ_LOG_COMPILER = $(srcdir)/script/fuzz-log-compiler.sh |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 7 | INCLUDE_DIRS += -I$(srcdir)/test/fuzz/tcti |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 8 | TESTS_LIBADD = $(lib_LTLIBRARIES) $(libtss2_mu) $(libtss2_sys) $(libutil) |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 9 | |
Дилян Палаузов | 6e2d04d | 2019-03-22 13:22:52 +0000 | [diff] [blame] | 10 | EXTRA_DIST += test/fuzz/main-sapi.cpp |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 11 | # tcti library used for fuzzing |
| 12 | if ENABLE_TCTI_FUZZING |
| 13 | libtss2_tcti_fuzzing = test/fuzz/tcti/libtss2-tcti-fuzzing.la |
Дилян Палаузов | 83f8981 | 2019-03-22 10:42:42 +0000 | [diff] [blame] | 14 | check_LTLIBRARIES += $(libtss2_tcti_fuzzing) |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 15 | |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 16 | test_fuzz_tcti_libtss2_tcti_fuzzing_la_LIBADD = $(TESTS_LIBADD) |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 17 | test_fuzz_tcti_libtss2_tcti_fuzzing_la_SOURCES = \ |
| 18 | src/tss2-tcti/tcti-common.c src/tss2-tcti/tcti-common.h \ |
Дилян Палаузов | 6e2d04d | 2019-03-22 13:22:52 +0000 | [diff] [blame] | 19 | test/fuzz/tcti/tcti-fuzzing.c test/fuzz/tcti/tcti-fuzzing.h \ |
| 20 | test/fuzz/tcti/tss2_tcti_fuzzing.h |
John Andersen | 443455b | 2019-01-16 12:58:36 -0800 | [diff] [blame] | 21 | endif # ENABLE_TCTI_FUZZING |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 22 | |
| 23 | if ENABLE_FUZZING |
| 24 | FUZZ_CFLAGS = $(TESTS_CFLAGS) -I$(srcdir)/test/integration |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 25 | FUZZ_CPPFLAGS = $(INCLUDE_DIRS) -I$(srcdir)/test/integration $(LIB_FUZZING_ENGINE) |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 26 | |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 27 | libtss2_utils_fuzzing = test/fuzz/libfuzz_utils.la |
Дилян Палаузов | 83f8981 | 2019-03-22 10:42:42 +0000 | [diff] [blame] | 28 | check_LTLIBRARIES += $(libtss2_utils_fuzzing) |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 29 | test_fuzz_libfuzz_utils_la_LDFLAGS = $(TESTS_LDFLAGS) |
| 30 | test_fuzz_libfuzz_utils_la_LIBADD = $(TESTS_LIBADD) |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 31 | test_fuzz_libfuzz_utils_la_CFLAGS = $(AM_CFLAGS) $(FUZZ_CFLAGS) |
| 32 | test_fuzz_libfuzz_utils_la_SOURCES = \ |
Дилян Палаузов | 18a1111 | 2019-03-22 20:56:30 +0000 | [diff] [blame] | 33 | test/integration/sapi-context-util.c \ |
| 34 | test/integration/sapi-test-options.c |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 35 | |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 36 | TESTS_LDADD += $(libtss2_utils_fuzzing) |
Andreas Fuchs | 010ec60 | 2019-05-15 19:09:46 +0200 | [diff] [blame] | 37 | FUZZLDADD = $(TESTS_LDADD) $(TESTS_LDFLAGS) $(FUZZ_LDFLAGS) |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 38 | |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 39 | fuzzdir = $(srcdir) |
| 40 | fuzz-targets: $(fuzz_PROGRAMS) |
| 41 | |
| 42 | check_PROGRAMS += $(TESTS_FUZZ) |
Дилян Палаузов | 83f8981 | 2019-03-22 10:42:42 +0000 | [diff] [blame] | 43 | TESTS += $(TESTS_FUZZ) |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 44 | fuzz_PROGRAMS = $(TESTS_FUZZ) |
| 45 | FUZZ = $(check_PROGRAMS) |
| 46 | |
Дилян Палаузов | eb0ac84 | 2019-04-26 08:57:39 +0000 | [diff] [blame] | 47 | DISTCLEANFILES += Makefile-fuzz-generated.am |
Tadeusz Struk | 39d1aed | 2019-03-01 08:47:56 -0800 | [diff] [blame] | 48 | |
John Andersen | 4eab6da | 2019-01-16 13:59:16 -0800 | [diff] [blame] | 49 | include Makefile-fuzz-generated.am |
| 50 | endif # ENABLE_FUZZING |