From patchwork Thu Oct 31 22:02:06 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Iyer, Balaji V" X-Patchwork-Id: 287678 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 63A342C03F3 for ; Fri, 1 Nov 2013 09:02:21 +1100 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:content-type:mime-version; q=dns; s=default; b=PCUfbpUrxC7T8y4C7qA4dbP5lYsJSznte/exdECHYvZ/heemCo Dr03p18oEZ41oGUevUvtQTGOhETS2mJqG94QUGaQRk9a4t7UiFeNzvzbeIqtbtrZ mkSS5KS4A2sJkZeAF9PQHFZwDll8NAJr2JgXGFrge7DFIUgY0bftZyFQw= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:content-type:mime-version; s= default; bh=c/S00/Gjh2Bz6eU7UI4t4h0bljM=; b=i7ppTC1EF4XJqznbpj8L wHzCxSO5N7RchT1BYJqIVzZXv4le4EURawE/pdR5QsT7OREphKi2+zvFM3KhGOD5 ttFTKjM2vokoFrewrX38XjhBeuOs1AXMLCLweVQMBUmWTZX9MbqwqzeryYWFZin7 649xC1IDoJux8U1eKK8Icuc= Received: (qmail 31247 invoked by alias); 31 Oct 2013 22:02:14 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 31230 invoked by uid 89); 31 Oct 2013 22:02:12 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mga09.intel.com Received: from mga09.intel.com (HELO mga09.intel.com) (134.134.136.24) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 31 Oct 2013 22:02:10 +0000 Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP; 31 Oct 2013 14:58:43 -0700 X-ExtLoop1: 1 Received: from fmsmsx103.amr.corp.intel.com ([10.19.9.34]) by orsmga002.jf.intel.com with ESMTP; 31 Oct 2013 15:02:07 -0700 Received: from FMSMSX109.amr.corp.intel.com (10.18.116.9) by FMSMSX103.amr.corp.intel.com (10.19.9.34) with Microsoft SMTP Server (TLS) id 14.3.123.3; Thu, 31 Oct 2013 15:02:07 -0700 Received: from fmsmsx101.amr.corp.intel.com ([169.254.1.24]) by FMSMSX109.amr.corp.intel.com ([169.254.5.191]) with mapi id 14.03.0123.003; Thu, 31 Oct 2013 15:02:07 -0700 From: "Iyer, Balaji V" To: "gcc-patches@gcc.gnu.org" CC: "ebotcazou@adacore.com" , "octoploid@yandex.com" , "schwab@linux-m68k.org" Subject: [PATCH] Fix for PR 58925 Date: Thu, 31 Oct 2013 22:02:06 +0000 Message-ID: MIME-Version: 1.0 X-IsSubscribed: yes Hello Everyone, Attached, please find a fix for PR 58925. The issue is summarized below. I will commit this patch tonight since it is trivial, obvious and all the change is in libcilkrts. If anyone has any objections please let me know and I am willing to fix them. Thanks, Balaji V. Iyer. -----Original Message----- From: Iyer, Balaji V Sent: Thursday, October 31, 2013 11:36 AM To: 'gcc@gcc.gnu.org' Cc: Jeff Law Subject: Question about a fix for PR 58925 Hello Everyone, I am currently looking to fix the bug reported in PR 58925. Here is the issue, When the user configures using the following command: ../gcc/configure --enable-version-specific-runtime-libs --disable-bootstrap --disable-werror --disable-multilib --enable-languages=c,c++ Make is OK, but when they do make install: here is the output we get /include" "AR=/usr/x86_64-pc-linux-gnu/bin/ar" "AS=/var/tmp/gcc_build_dir/./gcc/as" "LD=/var/tmp/gcc_build_dir/./gcc/collect-ld" "LIBCFLAGS=-g -O2" "NM=/var/tmp/gcc_build_dir/./gcc/nm" "PICFLAG=" "RANLIB=/usr/x86_64-pc-linux-gnu/bin/ranlib" "DESTDIR=" DO=install multi-do # make test -z "/usr/lib/gcc/x86_64-pc-linux-gnu/" || /bin/mkdir -p "/usr/lib/gcc/x86_64-pc-linux-gnu/" /bin/sh ./libtool --mode=install /usr/bin/install -c libcilkrts.la '/usr/lib/gcc/x86_64-pc-linux-gnu/' libtool: install: error: cannot install `libcilkrts.la' to a directory not ending in /usr/lib/gcc/x86_64-pc-linux-gnu/ I googled the error, but most of them seem to say the issue is in libtool and doing a make clean before make would fix it. I tried that and it is not fixing it. Can someone please give me a suggestion as to where/what I should look for? Thanks, Balaji V. Iyer. diff --git a/libcilkrts/ChangeLog b/libcilkrts/ChangeLog index 3427243..f87be65 100644 --- a/libcilkrts/ChangeLog +++ b/libcilkrts/ChangeLog @@ -1,3 +1,13 @@ +2013-10-31 Balaji V. Iyer + + PR other/58925 + * configure.ac: Added target_alias and GCC_LIBSTDCXX_RAW_CXX_FLAGS + fields. + * configure: Regenerated. + * aclocal.m4: Likewise. + * Makefile.in: Likewise. + * Makefile.am: Added gcc_version field. + 2013-10-30 Balaji V. Iyer * configure.ac: Changed a case statement to include i386. diff --git a/libcilkrts/Makefile.am b/libcilkrts/Makefile.am index f332cfb..a3b07ef 100644 --- a/libcilkrts/Makefile.am +++ b/libcilkrts/Makefile.am @@ -47,6 +47,9 @@ AM_CFLAGS = $(GENERAL_FLAGS) -std=c99 AM_CPPFLAGS = $(GENERAL_FLAGS) AM_LDFLAGS = -lpthread -ldl +# May be used by toolexeclibdir. +gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) + # Target list. toolexeclib_LTLIBRARIES = libcilkrts.la diff --git a/libcilkrts/Makefile.in b/libcilkrts/Makefile.in index 35e2705..9f459cc 100644 --- a/libcilkrts/Makefile.in +++ b/libcilkrts/Makefile.in @@ -122,8 +122,10 @@ DIST_COMMON = $(srcdir)/include/internal/rev.mk README ChangeLog \ @MAC_LINKER_SCRIPT_TRUE@am__append_2 = -Wl,-exported_symbols_list,$(srcdir)/runtime/mac-symbols.txt subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \ +am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ + $(top_srcdir)/../config/depstand.m4 \ $(top_srcdir)/../config/lead-dot.m4 \ + $(top_srcdir)/../config/libstdc++-raw-cxx.m4 \ $(top_srcdir)/../config/multi.m4 \ $(top_srcdir)/../config/override.m4 \ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ @@ -243,6 +245,8 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ 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@ @@ -323,6 +327,7 @@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ +target_noncanonical = @target_noncanonical@ target_os = @target_os@ target_vendor = @target_vendor@ toolexecdir = @toolexecdir@ @@ -346,6 +351,9 @@ AM_CFLAGS = $(GENERAL_FLAGS) -std=c99 AM_CPPFLAGS = $(GENERAL_FLAGS) AM_LDFLAGS = -lpthread -ldl +# May be used by toolexeclibdir. +gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) + # Target list. toolexeclib_LTLIBRARIES = libcilkrts.la libcilkrts_la_SOURCES = \ diff --git a/libcilkrts/aclocal.m4 b/libcilkrts/aclocal.m4 index 68107ca..c24d0b6 100644 --- a/libcilkrts/aclocal.m4 +++ b/libcilkrts/aclocal.m4 @@ -968,8 +968,10 @@ AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR +m4_include([../config/acx.m4]) m4_include([../config/depstand.m4]) m4_include([../config/lead-dot.m4]) +m4_include([../config/libstdc++-raw-cxx.m4]) m4_include([../config/multi.m4]) m4_include([../config/override.m4]) m4_include([../libtool.m4]) diff --git a/libcilkrts/configure b/libcilkrts/configure index a2dd79c..41deb9f 100644 --- a/libcilkrts/configure +++ b/libcilkrts/configure @@ -681,6 +681,9 @@ am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM +LIBSTDCXX_RAW_CXX_LDFLAGS +LIBSTDCXX_RAW_CXX_CXXFLAGS +target_noncanonical target_os target_vendor target_cpu @@ -2366,6 +2369,36 @@ test -n "$target_alias" && NONENONEs,x,x, && program_prefix=${target_alias}- +target_alias=${target_alias-$host_alias} + + case ${build_alias} in + "") build_noncanonical=${build} ;; + *) build_noncanonical=${build_alias} ;; +esac + + case ${host_alias} in + "") host_noncanonical=${build_noncanonical} ;; + *) host_noncanonical=${host_alias} ;; +esac + + case ${target_alias} in + "") target_noncanonical=${host_noncanonical} ;; + *) target_noncanonical=${target_alias} ;; +esac + + + + + + 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="\ + \$(top_builddir)/../libstdc++-v3/src/libstdc++.la" + + + am__api_version='1.11' # Find a good install program. We prefer a C program (faster), @@ -4878,7 +4911,7 @@ case ${enable_version_specific_runtime_libs} in # and header files if --enable-version-specific-runtime-libs option # is selected. toolexecdir='$(libdir)/gcc/$(target_alias)' - toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' + toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' ;; no) if test -n "$with_cross_host" && @@ -11024,7 +11057,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11027 "configure" +#line 11060 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11130,7 +11163,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11133 "configure" +#line 11166 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/libcilkrts/configure.ac b/libcilkrts/configure.ac index d322616..4582d80 100644 --- a/libcilkrts/configure.ac +++ b/libcilkrts/configure.ac @@ -37,6 +37,9 @@ AC_PREREQ([2.64]) # Needed to define ${target}. Needs to be very early to avoid annoying # warning about calling AC_ARG_PROGRAM before AC_CANONICAL_SYSTEM AC_CANONICAL_SYSTEM +target_alias=${target_alias-$host_alias} +AC_SUBST(target_alias) +GCC_LIBSTDCXX_RAW_CXX_FLAGS AM_INIT_AUTOMAKE(foreign no-dist) AM_MAINTAINER_MODE @@ -86,7 +89,7 @@ case ${enable_version_specific_runtime_libs} in # and header files if --enable-version-specific-runtime-libs option # is selected. toolexecdir='$(libdir)/gcc/$(target_alias)' - toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' + toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' ;; no) if test -n "$with_cross_host" &&