1# SPDX-License-Identifier: BSD-2-Clause 2# Copyright (c) 2019 Intel Corporation 3# All rights reserved. 4 5TEST_EXTENSIONS += .fuzz 6FUZZ_LOG_COMPILER = $(srcdir)/script/fuzz-log-compiler.sh 7INCLUDE_DIRS += -I$(srcdir)/test/fuzz/tcti 8TESTS_LIBADD = $(lib_LTLIBRARIES) $(libtss2_mu) $(libtss2_sys) $(libutil) 9 10EXTRA_DIST += test/fuzz/main-sapi.cpp 11# tcti library used for fuzzing 12if ENABLE_TCTI_FUZZING 13libtss2_tcti_fuzzing = test/fuzz/tcti/libtss2-tcti-fuzzing.la 14check_LTLIBRARIES += $(libtss2_tcti_fuzzing) 15 16test_fuzz_tcti_libtss2_tcti_fuzzing_la_LIBADD = $(TESTS_LIBADD) 17test_fuzz_tcti_libtss2_tcti_fuzzing_la_SOURCES = \ 18 src/tss2-tcti/tcti-common.c src/tss2-tcti/tcti-common.h \ 19 test/fuzz/tcti/tcti-fuzzing.c test/fuzz/tcti/tcti-fuzzing.h \ 20 test/fuzz/tcti/tss2_tcti_fuzzing.h 21endif # ENABLE_TCTI_FUZZING 22 23if ENABLE_FUZZING 24FUZZ_CFLAGS = $(TESTS_CFLAGS) -I$(srcdir)/test/integration 25FUZZ_CPPFLAGS = $(INCLUDE_DIRS) -I$(srcdir)/test/integration $(LIB_FUZZING_ENGINE) 26 27libtss2_utils_fuzzing = test/fuzz/libfuzz_utils.la 28check_LTLIBRARIES += $(libtss2_utils_fuzzing) 29test_fuzz_libfuzz_utils_la_LDFLAGS = $(TESTS_LDFLAGS) 30test_fuzz_libfuzz_utils_la_LIBADD = $(TESTS_LIBADD) 31test_fuzz_libfuzz_utils_la_CFLAGS = $(AM_CFLAGS) $(FUZZ_CFLAGS) 32test_fuzz_libfuzz_utils_la_SOURCES = \ 33 test/integration/sapi-context-util.c \ 34 test/integration/sapi-test-options.c 35 36TESTS_LDADD += $(libtss2_utils_fuzzing) 37FUZZLDADD = $(TESTS_LDADD) $(TESTS_LDFLAGS) $(FUZZ_LDFLAGS) 38 39fuzzdir = $(srcdir) 40fuzz-targets: $(fuzz_PROGRAMS) 41 42check_PROGRAMS += $(TESTS_FUZZ) 43TESTS += $(TESTS_FUZZ) 44fuzz_PROGRAMS = $(TESTS_FUZZ) 45FUZZ = $(check_PROGRAMS) 46 47DISTCLEANFILES += Makefile-fuzz-generated.am 48 49include Makefile-fuzz-generated.am 50endif # ENABLE_FUZZING 51