| # © 2019 and later: Unicode, Inc. and others. |
| # License & terms of use: http://www.unicode.org/copyright.html |
| #****************************************************************************** |
| ## Makefile.in for ICU - test/fuzzer |
| |
| ## Source directory information |
| srcdir = @srcdir@ |
| top_srcdir = @top_srcdir@ |
| |
| top_builddir = ../.. |
| |
| ## All the flags and other definitions are included here. |
| include $(top_builddir)/icudefs.mk |
| |
| ## Build directory information |
| subdir = test/fuzzer |
| |
| ## Extra files to remove for 'make clean' |
| CLEANFILES = *~ $(DEPS) $(TESTXML) |
| |
| ## Target information |
| TARGET = all_fuzzers |
| |
| BUILDDIR := $(CURR_SRCCODE_FULL_DIR)/../../ |
| # Simplify the path for Unix |
| BUILDDIR := $(BUILDDIR:test/fuzzer/../../=) |
| # Simplify the path for Windows |
| BUILDDIR := $(BUILDDIR:test\\fuzzer/../../=) |
| # Simplify the path for Windows 98 |
| BUILDDIR := $(BUILDDIR:TEST\\FUZZER/../../=) |
| |
| CPPFLAGS += -I$(srcdir) -I$(top_srcdir)/common -I$(top_srcdir)/i18n -I$(top_srcdir)/tools/ctestfw -I$(top_srcdir)/io |
| DEFS += -D'U_TOPSRCDIR="$(top_srcdir)/"' -D'U_TOPBUILDDIR="$(BUILDDIR)"' |
| LIBS = $(LIBCTESTFW) $(LIBICUTOOLUTIL) $(LIBICUIO) $(LIBICUI18N) $(LIBICUUC) $(DEFAULT_LIBS) $(LIB_M) |
| |
| FUZZER_TARGETS = break_iterator_fuzzer collator_compare_fuzzer collator_rulebased_fuzzer converter_fuzzer locale_fuzzer number_format_fuzzer ucasemap_fuzzer uloc_canonicalize_fuzzer uloc_for_language_tag_fuzzer uloc_get_name_fuzzer uloc_is_right_to_left_fuzzer uloc_open_keywords_fuzzer unicode_string_codepage_create_fuzzer uregex_open_fuzzer |
| |
| OBJECTS = $(FUZZER_TARGETS:%=%.o) |
| OBJECTS += fuzzer_driver.o locale_util.o |
| |
| DEPS = $(OBJECTS:.o=.d) |
| |
| -include Makefile.local |
| |
| ## List of phony targets |
| .PHONY : all all-local install install-local clean clean-local \ |
| distclean distclean-local dist dist-local check check-local xcheck \ |
| check-exhaustive check-exhaustive-local all_fuzzers |
| |
| ## Clear suffix list |
| .SUFFIXES : |
| |
| ## List of standard targets |
| all: all-local |
| install: install-local |
| clean: clean-local |
| distclean : distclean-local |
| dist: dist-local |
| check: all check-local |
| xcheck: all xcheck-local |
| |
| all-local: $(TARGET) |
| |
| install-local: |
| |
| dist-local: |
| |
| clean-local: |
| test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) |
| $(RMV) $(OBJECTS) $(TARGET) $(FUZZER_TARGETS) |
| |
| distclean-local: clean-local |
| $(RMV) Makefile |
| |
| check-local: all-local |
| $(foreach trgt,$(FUZZER_TARGETS), echo $(trgt); $(INVOKE) ./$(trgt) \ |
| $(TEST_OUTPUT_OPTS) || exit \ |
| $(IOTEST_OPTS);) |
| |
| xcheck-local: check-local |
| |
| Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status |
| cd $(top_builddir) \ |
| && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status |
| |
| all_fuzzers: $(FUZZER_TARGETS) |
| |
| %_fuzzer: %_fuzzer.o fuzzer_driver.o locale_util.o |
| $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) |
| |
| ifeq (,$(MAKECMDGOALS)) |
| -include $(DEPS) |
| else |
| ifneq ($(patsubst %clean,,$(MAKECMDGOALS)),) |
| ifneq ($(patsubst %install,,$(MAKECMDGOALS)),) |
| -include $(DEPS) |
| endif |
| endif |
| endif |