+2012-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * libstdc++-raw-cxx.m4 (GCC_LIBSTDCXX_RAW_CXX_FLAGS): Also
+ AC_SUBST LIBSTDCXX_RAW_CXX_LDFLAGS.
+
2012-12-11 H.J. Lu <hongjiu.lu@intel.com>
PR sanitizer/55533
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
-# Define compiler flags, LIBSTDCXX_RAW_CXX_CXXFLAGS, for libstdc++-v3
-# header files to compile libraries in C++ with raw_cxx=true.
+# Define flags, LIBSTDCXX_RAW_CXX_CXXFLAGS and # LIBSTDCXX_RAW_CXX_LDFLAGS,
+# for libstdc++-v3 header files to compile and link libraries in C++ with
+# raw_cxx=true.
AC_DEFUN([GCC_LIBSTDCXX_RAW_CXX_FLAGS], [
AC_REQUIRE([ACX_NONCANONICAL_TARGET])
LIBSTDCXX_RAW_CXX_CXXFLAGS="\
-I\$(top_builddir)/../libstdc++-v3/include \
-I\$(top_builddir)/../libstdc++-v3/include/\$(target_noncanonical) \
-I\$(top_srcdir)/../libstdc++-v3/libsupc++"
+ LIBSTDCXX_RAW_CXX_LDFLAGS="\
+ -I\$(top_builddir)/../libstdc++-v3/src/libstdc++.la"
AC_SUBST(LIBSTDCXX_RAW_CXX_CXXFLAGS)
+ AC_SUBST(LIBSTDCXX_RAW_CXX_LDFLAGS)
])
+2012-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.am (lib_gnu_awt_xlib_la_CPPFLAGS): Use
+ $(LIBSTDCXX_RAW_CXX_CXXLAGS).
+ (lib_gnu_awt_xlib_la_LDFLAGS): Use $(LIBSTDCXX_RAW_CXX_LDLAGS).
+ * configure.ac (GCC_LIBSTDCXX_RAW_CXX_FLAGS): New.
+ * aclocal.m4: Regenerated.
+ * Makefile.in:Likewise.
+ * configure: Likewise.
+
2012-11-19 Matthias Klose <doko@ubuntu.com>
* libtool-version: Bump soversion.
if BUILD_SUBLIBS
lib_gnu_awt_xlib_la_DEPENDENCIES += libgcj-noncore.la
endif
-## We require libstdc++-v3 to be in the same build tree.
lib_gnu_awt_xlib_la_CPPFLAGS = \
$(AM_CPPFLAGS) \
- -I../libstdc++-v3/include \
- -I../libstdc++-v3/include/$(target_noncanonical) \
- -I$(srcdir)/../libstdc++-v3/libsupc++
+ $(LIBSTDCXX_RAW_CXX_CXXFLAGS)
## The mysterious backslash in the grep pattern is consumed by make.
-lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \
+lib_gnu_awt_xlib_la_LDFLAGS = $(LIBSTDCXX_RAW_CXX_LDLAGS) \
@X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
-rpath $(toolexeclibdir) $(LIBJAVA_LDFLAGS_NOUNDEF) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
$(top_srcdir)/../config/lib-ld.m4 \
$(top_srcdir)/../config/lib-link.m4 \
$(top_srcdir)/../config/lib-prefix.m4 \
+ $(top_srcdir)/../config/libstdc++-raw-cxx.m4 \
$(top_srcdir)/../config/lthostflags.m4 \
$(top_srcdir)/../config/multi.m4 \
$(top_srcdir)/../config/no-executables.m4 \
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXXSPEC = @LIBSTDCXXSPEC@
+LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
$(lib_gnu_awt_xlib_la_LIBADD) $(am__append_21)
lib_gnu_awt_xlib_la_CPPFLAGS = \
$(AM_CPPFLAGS) \
- -I../libstdc++-v3/include \
- -I../libstdc++-v3/include/$(target_noncanonical) \
- -I$(srcdir)/../libstdc++-v3/libsupc++
+ $(LIBSTDCXX_RAW_CXX_CXXFLAGS)
-lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \
+lib_gnu_awt_xlib_la_LDFLAGS = $(LIBSTDCXX_RAW_CXX_LDLAGS) \
@X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
-rpath $(toolexeclibdir) $(LIBJAVA_LDFLAGS_NOUNDEF) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
m4_include([../config/lib-ld.m4])
m4_include([../config/lib-link.m4])
m4_include([../config/lib-prefix.m4])
+m4_include([../config/libstdc++-raw-cxx.m4])
m4_include([../config/lthostflags.m4])
m4_include([../config/multi.m4])
m4_include([../config/no-executables.m4])
ANTLR_JAR
mkinstalldirs
LN_S
+LIBSTDCXX_RAW_CXX_LDFLAGS
+LIBSTDCXX_RAW_CXX_CXXFLAGS
target_noncanonical
target_os
target_vendor
+
+
+
+
+ LIBSTDCXX_RAW_CXX_CXXFLAGS="\
+ -I\$(top_builddir)/../libstdc++-v3/include \
+ -I\$(top_builddir)/../libstdc++-v3/include/\$(target_noncanonical) \
+ -I\$(top_srcdir)/../libstdc++-v3/libsupc++"
+ LIBSTDCXX_RAW_CXX_LDFLAGS="\
+ -I\$(top_builddir)/../libstdc++-v3/src/libstdc++.la"
+
+
+
+
# This works around the fact that libtool configuration may change LD
# for this particular configuration, but some shells, instead of
# keeping the changes in LD private, export them just because LD is
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 13369 "configure"
+#line 13385 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 13475 "configure"
+#line 13491 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
enableval=$enable_sjlj_exceptions; :
else
cat > conftest.$ac_ext << EOF
-#line 19470 "configure"
+#line 19486 "configure"
struct S { ~S(); };
void bar();
void foo()
AC_SUBST(target_noncanonical)
+GCC_LIBSTDCXX_RAW_CXX_FLAGS
+
# This works around the fact that libtool configuration may change LD
# for this particular configuration, but some shells, instead of
# keeping the changes in LD private, export them just because LD is
2012-12-12 H.J. Lu <hongjiu.lu@intel.com>
+ * asan/Makefile.am (libasan_la_LIBADD): Use $(LIBSTDCXX_RAW_CXX_LDLAGS).
+ * tsan/Makefile.am (libtsan_la_LIBADD): Likewise.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+ * asan/Makefile.in: Likewise.
+ * interception/Makefile.in: Likewise.
+ * sanitizer_common/Makefile.in: Likewise.
+ * tsan/Makefile.in: Likewise.
+
+2012-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
* Makefile.am (AM_MAKEFLAGS): Removed.
(MAKEOVERRIDES): Likewise.
* asan/Makefile.am: Likewise.
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
libasan_la_SOURCES = $(asan_files)
if USING_MAC_INTERPOSE
libasan_la_SOURCES += dynamic/asan_interceptors_dynamic.cc
-libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/../libstdc++-v3/src/libstdc++.la
+libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la
else
-libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(top_builddir)/../libstdc++-v3/src/libstdc++.la
+libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la
endif
+libasan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDLAGS)
libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
@USING_MAC_INTERPOSE_FALSE@libasan_la_DEPENDENCIES = $(top_builddir)/sanitizer_common/libsanitizer_common.la \
-@USING_MAC_INTERPOSE_FALSE@ $(top_builddir)/interception/libinterception.la \
-@USING_MAC_INTERPOSE_FALSE@ $(top_builddir)/../libstdc++-v3/src/libstdc++.la
-@USING_MAC_INTERPOSE_TRUE@libasan_la_DEPENDENCIES = $(top_builddir)/sanitizer_common/libsanitizer_common.la \
-@USING_MAC_INTERPOSE_TRUE@ $(top_builddir)/../libstdc++-v3/src/libstdc++.la
+@USING_MAC_INTERPOSE_FALSE@ $(top_builddir)/interception/libinterception.la
+@USING_MAC_INTERPOSE_TRUE@libasan_la_DEPENDENCIES = $(top_builddir)/sanitizer_common/libsanitizer_common.la
am__libasan_la_SOURCES_DIST = asan_allocator.cc asan_interceptors.cc \
asan_mac.cc asan_malloc_mac.cc asan_new_delete.cc \
asan_posix.cc asan_rtl.cc asan_stats.cc \
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
asan_win.cc
libasan_la_SOURCES = $(asan_files) $(am__append_2)
-@USING_MAC_INTERPOSE_FALSE@libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(top_builddir)/../libstdc++-v3/src/libstdc++.la
-@USING_MAC_INTERPOSE_TRUE@libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/../libstdc++-v3/src/libstdc++.la
+@USING_MAC_INTERPOSE_FALSE@libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la \
+@USING_MAC_INTERPOSE_FALSE@ $(top_builddir)/interception/libinterception.la \
+@USING_MAC_INTERPOSE_FALSE@ $(LIBSTDCXX_RAW_CXX_LDLAGS)
+@USING_MAC_INTERPOSE_TRUE@libasan_la_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la \
+@USING_MAC_INTERPOSE_TRUE@ $(LIBSTDCXX_RAW_CXX_LDLAGS)
libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
all: all-am
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
+LIBSTDCXX_RAW_CXX_LDFLAGS
LIBSTDCXX_RAW_CXX_CXXFLAGS
target_noncanonical
target_os
-I\$(top_builddir)/../libstdc++-v3/include \
-I\$(top_builddir)/../libstdc++-v3/include/\$(target_noncanonical) \
-I\$(top_srcdir)/../libstdc++-v3/libsupc++"
+ LIBSTDCXX_RAW_CXX_LDFLAGS="\
+ -I\$(top_builddir)/../libstdc++-v3/src/libstdc++.la"
+
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11110 "configure"
+#line 11114 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11216 "configure"
+#line 11220 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
tsan_symbolize_addr2line_linux.cc
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_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(LIBSTDCXX_RAW_CXX_LDLAGS)
libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
## ################################################################
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
libtsan_la_DEPENDENCIES = \
$(top_builddir)/sanitizer_common/libsanitizer_common.la \
- $(top_builddir)/interception/libinterception.la \
- $(top_builddir)/../libstdc++-v3/src/libstdc++.la
+ $(top_builddir)/interception/libinterception.la
am__objects_1 = tsan_clock.lo tsan_interface_atomic.lo tsan_mutex.lo \
tsan_report.lo tsan_rtl_thread.lo tsan_symbolize.lo \
tsan_flags.lo tsan_interface.lo tsan_platform_linux.lo \
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBSTDCXX_RAW_CXX_CXXFLAGS = @LIBSTDCXX_RAW_CXX_CXXFLAGS@
+LIBSTDCXX_RAW_CXX_LDFLAGS = @LIBSTDCXX_RAW_CXX_LDFLAGS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
tsan_symbolize_addr2line_linux.cc
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_LIBADD = $(top_builddir)/sanitizer_common/libsanitizer_common.la $(top_builddir)/interception/libinterception.la $(LIBSTDCXX_RAW_CXX_LDLAGS)
libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lpthread -ldl
all: all-am