On Sat, Aug 31, 2013 at 04:04:03PM +0100, Iain Sandoe wrote:
> OK for trunk?
Ok with the suggested s/sanitise/sanitize/g change.
> gcc:
> * config/darwin.h (LINK_COMMAND_SPEC_A): Revise sanitiser specs to
> include sanitise(undefined).
>
> libsanitiser:
>
> * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit
> libinterception.la
> for Darwin.
> * ubsan/Makefile.in: Regenerate.
>
> Index: gcc/config/darwin.h
> ===================================================================
> --- gcc/config/darwin.h (revision 202118)
> +++ gcc/config/darwin.h (working copy)
> @@ -178,10 +178,11 @@ extern GTY(()) int darwin_ms_struct;
> %{L*} %(link_libgcc) %o
> %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} \
> %{fopenmp|ftree-parallelize-loops=*: \
> %{static|static-libgcc|static-libstdc++|static-libgfortran:
> libgomp.a%s; : -lgomp } } \
> - %{%:sanitize(address): -lasan } \
> %{fgnu-tm: \
> %{static|static-libgcc|static-libstdc++|static-libgfortran:
> libitm.a%s; : -litm } } \
> %{!nostdlib:%{!nodefaultlibs:\
> + %{%:sanitize(address): -lasan } \
> + %{%:sanitize(undefined): -lubsan } \
> %(link_ssp) %(link_gcc_c_sequence)\
> }}\
> %{!nostdlib:%{!nostartfiles:%E}} %{T*} %{F*} }}}}}}}"
>
> Index: libsanitizer/ubsan/Makefile.am
> ===================================================================
> --- libsanitizer/ubsan/Makefile.am (revision 202118)
> +++ libsanitizer/ubsan/Makefile.am (working copy)
> @@ -18,7 +18,11 @@ ubsan_files = \
> ubsan_value.cc
>
> libubsan_la_SOURCES = $(ubsan_files)
> -libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la
> $(top_builddir)/interception/libinterception.la $(LIBSTDCXX_RAW_CXX_LDFLAGS)
> +libubsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la
> +if !USING_MAC_INTERPOSE
> +libubsan_la_LIBADD += $(top_builddir)/interception/libinterception.la
> +endif
> +libubsan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
> libubsan_la_LDFLAGS = -version-info `grep -v '^\#'
> $(srcdir)/libtool-version` -lpthread -ldl
>
> # Work around what appears to be a GNU make bug handling MAKEFLAGS
Jakub