1 1.1 mrg AM_CPPFLAGS = -I $(top_srcdir)/include -I $(top_srcdir) 2 1.1 mrg 3 1.1 mrg # May be used by toolexeclibdir. 4 1.6 mrg gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) 5 1.1 mrg 6 1.9 mrg DEFS = -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DASAN_HAS_EXCEPTIONS=1 -DASAN_NEEDS_SEGV=1 -DCAN_SANITIZE_UB=0 -DASAN_HAS_CXA_RETHROW_PRIMARY_EXCEPTION=0 7 1.1 mrg if USING_MAC_INTERPOSE 8 1.9 mrg DEFS += -DMAC_INTERPOSE_FUNCTIONS -DMISSING_BLOCKS_SUPPORT 9 1.1 mrg endif 10 1.3 mrg AM_CXXFLAGS = -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -fno-ipa-icf 11 1.1 mrg AM_CXXFLAGS += $(LIBSTDCXX_RAW_CXX_CXXFLAGS) 12 1.9 mrg AM_CXXFLAGS += -std=gnu++14 13 1.7 mrg AM_CXXFLAGS += $(EXTRA_CXXFLAGS) 14 1.9 mrg AM_CCASFLAGS = $(EXTRA_ASFLAGS) 15 1.1 mrg ACLOCAL_AMFLAGS = -I $(top_srcdir) -I $(top_srcdir)/config 16 1.1 mrg 17 1.1 mrg toolexeclib_LTLIBRARIES = libasan.la 18 1.1 mrg nodist_toolexeclib_HEADERS = libasan_preinit.o 19 1.1 mrg 20 1.1 mrg asan_files = \ 21 1.9 mrg asan_activation.cpp \ 22 1.9 mrg asan_allocator.cpp \ 23 1.9 mrg asan_debugging.cpp \ 24 1.9 mrg asan_descriptions.cpp \ 25 1.9 mrg asan_errors.cpp \ 26 1.9 mrg asan_fake_stack.cpp \ 27 1.9 mrg asan_flags.cpp \ 28 1.9 mrg asan_globals.cpp \ 29 1.9 mrg asan_interceptors.cpp \ 30 1.9 mrg asan_interceptors_memintrinsics.cpp \ 31 1.9 mrg asan_linux.cpp \ 32 1.9 mrg asan_mac.cpp \ 33 1.9 mrg asan_malloc_linux.cpp \ 34 1.9 mrg asan_malloc_mac.cpp \ 35 1.9 mrg asan_malloc_win.cpp \ 36 1.9 mrg asan_memory_profile.cpp \ 37 1.9 mrg asan_new_delete.cpp \ 38 1.9 mrg asan_poisoning.cpp \ 39 1.9 mrg asan_posix.cpp \ 40 1.9 mrg asan_premap_shadow.cpp \ 41 1.9 mrg asan_report.cpp \ 42 1.9 mrg asan_rtl.cpp \ 43 1.9 mrg asan_shadow_setup.cpp \ 44 1.9 mrg asan_stack.cpp \ 45 1.9 mrg asan_stats.cpp \ 46 1.9 mrg asan_suppressions.cpp \ 47 1.9 mrg asan_thread.cpp \ 48 1.9 mrg asan_win.cpp \ 49 1.9 mrg asan_win_dll_thunk.cpp \ 50 1.9 mrg asan_win_dynamic_runtime_thunk.cpp \ 51 1.9 mrg asan_interceptors_vfork.S 52 1.1 mrg 53 1.1 mrg libasan_la_SOURCES = $(asan_files) 54 1.3 mrg libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/lsan/libsanitizer_lsan.la 55 1.3 mrg if !USING_MAC_INTERPOSE 56 1.3 mrg libasan_la_LIBADD += $(top_builddir)/interception/libinterception.la 57 1.3 mrg endif 58 1.3 mrg if LIBBACKTRACE_SUPPORTED 59 1.3 mrg libasan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la 60 1.1 mrg endif 61 1.1 mrg libasan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS) 62 1.1 mrg 63 1.3 mrg libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libasan) 64 1.1 mrg 65 1.1 mrg libasan_preinit.o: asan_preinit.o 66 1.1 mrg cp $< $@ 67 1.1 mrg 68 1.1 mrg # Work around what appears to be a GNU make bug handling MAKEFLAGS 69 1.1 mrg # values defined in terms of make variables, as is the case for CC and 70 1.1 mrg # friends when we are called from the top level Makefile. 71 1.1 mrg AM_MAKEFLAGS = \ 72 1.1 mrg "AR_FLAGS=$(AR_FLAGS)" \ 73 1.1 mrg "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ 74 1.1 mrg "CFLAGS=$(CFLAGS)" \ 75 1.1 mrg "CXXFLAGS=$(CXXFLAGS)" \ 76 1.1 mrg "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ 77 1.1 mrg "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ 78 1.1 mrg "INSTALL=$(INSTALL)" \ 79 1.1 mrg "INSTALL_DATA=$(INSTALL_DATA)" \ 80 1.1 mrg "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ 81 1.1 mrg "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ 82 1.1 mrg "JC1FLAGS=$(JC1FLAGS)" \ 83 1.1 mrg "LDFLAGS=$(LDFLAGS)" \ 84 1.1 mrg "LIBCFLAGS=$(LIBCFLAGS)" \ 85 1.1 mrg "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ 86 1.1 mrg "MAKE=$(MAKE)" \ 87 1.1 mrg "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ 88 1.1 mrg "PICFLAG=$(PICFLAG)" \ 89 1.1 mrg "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ 90 1.1 mrg "SHELL=$(SHELL)" \ 91 1.1 mrg "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ 92 1.1 mrg "exec_prefix=$(exec_prefix)" \ 93 1.1 mrg "infodir=$(infodir)" \ 94 1.1 mrg "libdir=$(libdir)" \ 95 1.1 mrg "prefix=$(prefix)" \ 96 1.1 mrg "includedir=$(includedir)" \ 97 1.1 mrg "AR=$(AR)" \ 98 1.1 mrg "AS=$(AS)" \ 99 1.1 mrg "LD=$(LD)" \ 100 1.1 mrg "LIBCFLAGS=$(LIBCFLAGS)" \ 101 1.1 mrg "NM=$(NM)" \ 102 1.1 mrg "PICFLAG=$(PICFLAG)" \ 103 1.1 mrg "RANLIB=$(RANLIB)" \ 104 1.1 mrg "DESTDIR=$(DESTDIR)" 105 1.1 mrg 106 1.1 mrg MAKEOVERRIDES= 107 1.1 mrg 108 1.1 mrg ## ################################################################ 109 1.1 mrg 110