Blame fuzz/Makefile.am

Packit 0af36a
AM_CFLAGS = $(WERROR_CFLAGS) $(WARN_CFLAGS)
Packit 0af36a
AM_CPPFLAGS = -I$(top_srcdir)/include -I$(srcdir) -DSRCDIR=\"$(abs_srcdir)\" -DTEST_RUN
Packit 0af36a
#AM_LDFLAGS = -static
Packit 0af36a
AM_LDFLAGS = -no-install
Packit 0af36a
LDADD = ../src/libpsl.la $(LIBICU_LIBS) $(LIBIDN_LIBS) $(LIBIDN2_LIBS)
Packit 0af36a
Packit 0af36a
if WITH_LIBICU
Packit 0af36a
  XLIBS = $(LIBICU_LIBS)
Packit 0af36a
  XTYPE = _icu
Packit 0af36a
  libpsl_icu_fuzzer_SOURCES = libpsl_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_icu_load_fuzzer_SOURCES = libpsl_load_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_icu_load_dafsa_fuzzer_SOURCES = libpsl_load_dafsa_fuzzer.c main.c fuzzer.h
Packit 0af36a
  PSL_TESTS = \
Packit 0af36a
   libpsl_icu_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_icu_load_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_icu_load_dafsa_fuzzer$(EXEEXT)
Packit 0af36a
else
Packit 0af36a
if WITH_LIBIDN2
Packit 0af36a
  XLIBS = -lidn2 -lunistring
Packit 0af36a
  XTYPE = _idn2
Packit 0af36a
  libpsl_idn2_fuzzer_SOURCES = libpsl_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_idn2_load_fuzzer_SOURCES = libpsl_load_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_idn2_load_dafsa_fuzzer_SOURCES = libpsl_load_dafsa_fuzzer.c main.c fuzzer.h
Packit 0af36a
  PSL_TESTS = \
Packit 0af36a
   libpsl_idn2_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_idn2_load_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_idn2_load_dafsa_fuzzer$(EXEEXT)
Packit 0af36a
else
Packit 0af36a
if WITH_LIBIDN
Packit 0af36a
  XLIBS = -lidn -lunistring
Packit 0af36a
  XTYPE = _idn
Packit 0af36a
  libpsl_idn_fuzzer_SOURCES = libpsl_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_idn_load_fuzzer_SOURCES = libpsl_load_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_idn_load_dafsa_fuzzer_SOURCES = libpsl_load_dafsa_fuzzer.c main.c fuzzer.h
Packit 0af36a
  PSL_TESTS = \
Packit 0af36a
   libpsl_idn_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_idn_load_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_idn_load_dafsa_fuzzer$(EXEEXT)
Packit 0af36a
else
Packit 0af36a
  XLIBS =
Packit 0af36a
  XTYPE =
Packit 0af36a
  libpsl_fuzzer_SOURCES = libpsl_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_load_fuzzer_SOURCES = libpsl_load_fuzzer.c main.c fuzzer.h
Packit 0af36a
  libpsl_load_dafsa_fuzzer_SOURCES = libpsl_load_dafsa_fuzzer.c main.c fuzzer.h
Packit 0af36a
  PSL_TESTS = \
Packit 0af36a
   libpsl_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_load_fuzzer$(EXEEXT) \
Packit 0af36a
   libpsl_load_dafsa_fuzzer$(EXEEXT)
Packit 0af36a
endif
Packit 0af36a
endif
Packit 0af36a
endif
Packit 0af36a
Packit 0af36a
check_PROGRAMS = $(PSL_TESTS)
Packit 0af36a
Packit 0af36a
dist-hook:
Packit 0af36a
	find . -name '*.options' -exec cp -v '{}' $(distdir) ';'
Packit 0af36a
	find . -name '*.dict' -exec cp -v '{}' $(distdir) ';'
Packit 0af36a
	find . -name '*.in' -exec cp -vr '{}' $(distdir) ';'
Packit 0af36a
	find . -name '*.repro' -exec cp -vr '{}' $(distdir) ';'
Packit 0af36a
Packit 0af36a
TESTS_ENVIRONMENT = TESTS_VALGRIND="@VALGRIND_ENVIRONMENT@"
Packit 0af36a
TESTS = $(PSL_TESTS)
Packit 0af36a
Packit 0af36a
clean-local:
Packit 0af36a
	rm -rf *.gc?? *.log lcov coverage.info *_fuzzer *.o
Packit 0af36a
Packit 0af36a
fuzz-coverage: $(PSL_TESTS)
Packit 0af36a
	find . -name '*_fuzzer' -exec ./coverage.sh '{}' ';'
Packit 0af36a
Packit 0af36a
CXX ?= clang-5.0
Packit 0af36a
CXXFLAGS ?= $(CFLAGS)
Packit 0af36a
Packit 0af36a
oss-fuzz:
Packit 0af36a
	if test "$$OUT" != ""; then \
Packit 0af36a
	for cfile in `ls *_fuzzer.c`; do \
Packit 0af36a
	fuzzer="libpsl$(XTYPE)_"$$(basename $$cfile .c|cut -d'_' -f2-); \
Packit 0af36a
	$$CXX $$CXXFLAGS $$CPPFLAGS -I$(top_srcdir)/include -I$(top_srcdir) \
Packit 0af36a
	"$${cfile}" -o "$${fuzzer}" \
Packit 0af36a
	../src/.libs/libpsl.a $${LIB_FUZZING_ENGINE} \
Packit 0af36a
	-Wl,-Bstatic \
Packit 0af36a
	$(XLIBS) \
Packit 0af36a
	-Wl,-Bdynamic; \
Packit 0af36a
	done; \
Packit 0af36a
	fi
Packit 0af36a
Packit 0af36a
.PHONY: oss-fuzz