On Tue, Dec 11, 2012 at 6:36 AM, Paolo Bonzini <bonz...@gnu.org> wrote: > Il 11/12/2012 14:47, H.J. Lu ha scritto: >> On Thu, Dec 6, 2012 at 7:07 AM, H.J. Lu <hjl.to...@gmail.com> wrote: >>> On Thu, Nov 29, 2012 at 10:30 AM, H.J. Lu <hongjiu...@intel.com> wrote: >>>> Hi, >>>> >>>> Since libsanitizer is used for bootstrap and compiled with raw_cxx, >>>> we need to use explicit -I for libstdc++-v3 header files in >>>> libsanitizer. Otherwise, we will get >>>> >>>> libtool: compile: unrecognized option `-D_GNU_SOURCE' >>>> libtool: compile: Try `libtool --help' for more information. >>>> >>>> This patch fixes it. OK to install? >>>> >>>> Thanks. >>>> >>>> >>>> H.J. >>>> --- >>>> libsanitizer/Makefile.am | 2 -- >>>> libsanitizer/Makefile.in | 6 +++--- >>>> libsanitizer/aclocal.m4 | 1 + >>>> libsanitizer/asan/Makefile.am | 6 ++++-- >>>> libsanitizer/asan/Makefile.in | 14 ++++++++++---- >>>> libsanitizer/configure | 22 ++++++++++++++++++++-- >>>> libsanitizer/configure.ac | 1 + >>>> libsanitizer/interception/Makefile.am | 6 ++++-- >>>> libsanitizer/interception/Makefile.in | 14 ++++++++++---- >>>> libsanitizer/sanitizer_common/Makefile.am | 6 ++++-- >>>> libsanitizer/sanitizer_common/Makefile.in | 14 ++++++++++---- >>>> libsanitizer/tsan/Makefile.am | 6 ++++-- >>>> libsanitizer/tsan/Makefile.in | 13 +++++++++---- >>>> 14 files changed, 97 insertions(+), 31 deletions(-) >>>> create mode 100644 libsanitizer/ChangeLog.asan >>>> >>>> 2012-11-22 H.J. Lu <hongjiu...@intel.com> >>>> >>>> * Makefile.am (AM_MAKEFLAGS): Remove CC and CXX. >>>> * configure.ac (ACX_NONCANONICAL_TARGET): New. >>>> * asan/Makefile.am (AM_CXXFLAGS): Add -I for libstdc++-v3 header >>>> files. >>>> (AM_MAKEFLAGS): Remove CC and CXX. >>>> * interception/Makefile.am: Likewise. >>>> * sanitizer_common/Makefile.am: Likewise. >>>> * tsan/Makefile.am: Likewise. >>>> * Makefile.in: Regenerated. >>>> * aclocal.m4: Likewise. >>>> * configure: Likewise. >>>> * asan/Makefile.in: Likewise. >>>> * interception/Makefile.in: Likewise. >>>> * sanitizer_common/Makefile.in: Likewise. >>>> * tsan/Makefile.in: Likewise. >>>> >>>> diff --git a/libsanitizer/Makefile.am b/libsanitizer/Makefile.am >>>> index 64d3d2e..cd4e92d 100644 >>>> --- a/libsanitizer/Makefile.am >>>> +++ b/libsanitizer/Makefile.am >>>> @@ -37,8 +37,6 @@ AM_MAKEFLAGS = \ >>>> "includedir=$(includedir)" \ >>>> "AR=$(AR)" \ >>>> "AS=$(AS)" \ >>>> - "CC=$(CC)" \ >>>> - "CXX=$(CXX)" \ >>>> "LD=$(LD)" \ >>>> "LIBCFLAGS=$(LIBCFLAGS)" \ >>>> "NM=$(NM)" \ > > As a followup please check if AM_MAKEFLAGS is needed at all. > >>>> diff --git a/libsanitizer/Makefile.in b/libsanitizer/Makefile.in >>>> index 21c2711..53e0be9 100644 >>>> --- a/libsanitizer/Makefile.in >>>> +++ b/libsanitizer/Makefile.in > > Please do not include regenerated files in the patch. >
Here is a patch to remove AM_MAKEFLAGS from libsanitizer. Tested on Linux/x86-64. OK to install? Thanks. H.J. --- 2012-12-11 H.J. Lu <hongjiu...@intel.com> * Makefile.am (AM_MAKEFLAGS): Removed. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. diff --git a/libsanitizer/Makefile.am b/libsanitizer/Makefile.am index 308d438..272a218 100644 --- a/libsanitizer/Makefile.am +++ b/libsanitizer/Makefile.am @@ -10,44 +10,6 @@ if USING_MAC_INTERPOSE SUBDIRS = sanitizer_common asan endif -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "JC1FLAGS=$(JC1FLAGS)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "includedir=$(includedir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" - MAKEOVERRIDES= ## ################################################################ diff --git a/libsanitizer/interception/Makefile.am b/libsanitizer/interception/Makefile.am index 6ae59b5..aab68f0 100644 --- a/libsanitizer/interception/Makefile.am +++ b/libsanitizer/interception/Makefile.am @@ -17,44 +17,6 @@ interception_files = \ libinterception_la_SOURCES = $(interception_files) -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "JC1FLAGS=$(JC1FLAGS)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "includedir=$(includedir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" - MAKEOVERRIDES= ## ################################################################ diff --git a/libsanitizer/sanitizer_common/Makefile.am b/libsanitizer/sanitizer_common/Makefile.am index 708b2a4..8d414b3 100644 --- a/libsanitizer/sanitizer_common/Makefile.am +++ b/libsanitizer/sanitizer_common/Makefile.am @@ -29,44 +29,6 @@ sanitizer_common_files = \ libsanitizer_common_la_SOURCES = $(sanitizer_common_files) -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "JC1FLAGS=$(JC1FLAGS)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "includedir=$(includedir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" - MAKEOVERRIDES= ## ################################################################ diff --git a/libsanitizer/tsan/Makefile.am b/libsanitizer/tsan/Makefile.am index 867c152..a4e3e51 100644 --- a/libsanitizer/tsan/Makefile.am +++ b/libsanitizer/tsan/Makefile.am @@ -37,44 +37,6 @@ libtsan_la_SOURCES = $(tsan_files) libtsan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(top_builddir)/../libstdc++-v3/src/libstdc++.la libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "JC1FLAGS=$(JC1FLAGS)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "includedir=$(includedir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" - MAKEOVERRIDES= ## ################################################################