blob: fc406419a98697b7d79462db16f2173902b7249f [file] [log] [blame]
Peter Huewe9f7cc082019-05-02 18:16:28 +02001# SPDX-License-Identifier: BSD-2-Clause
John Andersen443455b2019-01-16 12:58:36 -08002# Copyright (c) 2019 Intel Corporation
3# All rights reserved.
4
John Andersen4eab6da2019-01-16 13:59:16 -08005TEST_EXTENSIONS += .fuzz
6FUZZ_LOG_COMPILER = $(srcdir)/script/fuzz-log-compiler.sh
John Andersen443455b2019-01-16 12:58:36 -08007INCLUDE_DIRS += -I$(srcdir)/test/fuzz/tcti
Tadeusz Struk39d1aed2019-03-01 08:47:56 -08008TESTS_LIBADD = $(lib_LTLIBRARIES) $(libtss2_mu) $(libtss2_sys) $(libutil)
John Andersen443455b2019-01-16 12:58:36 -08009
Дилян Палаузов6e2d04d2019-03-22 13:22:52 +000010EXTRA_DIST += test/fuzz/main-sapi.cpp
John Andersen443455b2019-01-16 12:58:36 -080011# tcti library used for fuzzing
12if ENABLE_TCTI_FUZZING
13libtss2_tcti_fuzzing = test/fuzz/tcti/libtss2-tcti-fuzzing.la
Дилян Палаузов83f89812019-03-22 10:42:42 +000014check_LTLIBRARIES += $(libtss2_tcti_fuzzing)
John Andersen443455b2019-01-16 12:58:36 -080015
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080016test_fuzz_tcti_libtss2_tcti_fuzzing_la_LIBADD = $(TESTS_LIBADD)
John Andersen443455b2019-01-16 12:58:36 -080017test_fuzz_tcti_libtss2_tcti_fuzzing_la_SOURCES = \
18 src/tss2-tcti/tcti-common.c src/tss2-tcti/tcti-common.h \
Дилян Палаузов6e2d04d2019-03-22 13:22:52 +000019 test/fuzz/tcti/tcti-fuzzing.c test/fuzz/tcti/tcti-fuzzing.h \
20 test/fuzz/tcti/tss2_tcti_fuzzing.h
John Andersen443455b2019-01-16 12:58:36 -080021endif # ENABLE_TCTI_FUZZING
John Andersen4eab6da2019-01-16 13:59:16 -080022
23if ENABLE_FUZZING
24FUZZ_CFLAGS = $(TESTS_CFLAGS) -I$(srcdir)/test/integration
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080025FUZZ_CPPFLAGS = $(INCLUDE_DIRS) -I$(srcdir)/test/integration $(LIB_FUZZING_ENGINE)
John Andersen4eab6da2019-01-16 13:59:16 -080026
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080027libtss2_utils_fuzzing = test/fuzz/libfuzz_utils.la
Дилян Палаузов83f89812019-03-22 10:42:42 +000028check_LTLIBRARIES += $(libtss2_utils_fuzzing)
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080029test_fuzz_libfuzz_utils_la_LDFLAGS = $(TESTS_LDFLAGS)
30test_fuzz_libfuzz_utils_la_LIBADD = $(TESTS_LIBADD)
John Andersen4eab6da2019-01-16 13:59:16 -080031test_fuzz_libfuzz_utils_la_CFLAGS = $(AM_CFLAGS) $(FUZZ_CFLAGS)
32test_fuzz_libfuzz_utils_la_SOURCES = \
Дилян Палаузов18a11112019-03-22 20:56:30 +000033 test/integration/sapi-context-util.c \
34 test/integration/sapi-test-options.c
John Andersen4eab6da2019-01-16 13:59:16 -080035
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080036TESTS_LDADD += $(libtss2_utils_fuzzing)
Andreas Fuchs010ec602019-05-15 19:09:46 +020037FUZZLDADD = $(TESTS_LDADD) $(TESTS_LDFLAGS) $(FUZZ_LDFLAGS)
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080038
John Andersen4eab6da2019-01-16 13:59:16 -080039fuzzdir = $(srcdir)
40fuzz-targets: $(fuzz_PROGRAMS)
41
42check_PROGRAMS += $(TESTS_FUZZ)
Дилян Палаузов83f89812019-03-22 10:42:42 +000043TESTS += $(TESTS_FUZZ)
John Andersen4eab6da2019-01-16 13:59:16 -080044fuzz_PROGRAMS = $(TESTS_FUZZ)
45FUZZ = $(check_PROGRAMS)
46
Дилян Палаузовeb0ac842019-04-26 08:57:39 +000047DISTCLEANFILES += Makefile-fuzz-generated.am
Tadeusz Struk39d1aed2019-03-01 08:47:56 -080048
John Andersen4eab6da2019-01-16 13:59:16 -080049include Makefile-fuzz-generated.am
50endif # ENABLE_FUZZING