public inbox for bfd@sourceware.org
 help / color / mirror / Atom feed
From: Manfred Hollstein <manfred@s-direktnet.de>
To: jbuck@synopsys.com
Cc: jason@cygnus.com, bfd@cygnus.com, egcs@cygnus.com
Subject: Re: installing c++filt
Date: Sat, 14 Feb 1998 04:36:00 -0000	[thread overview]
Message-ID: <199802141101.MAA00972@saturn.s-direktnet.de> (raw)
In-Reply-To: <199802132055.MAA26497@atrus.synopsys.com>

On Fri, 13 February 1998, 12:55:58, jbuck@synopsys.com wrote:

 > 
 > > It makes much more sense for the compiler to install c++filt, since it
 > > knows about the latest changes to the mangling code.  Any reason not to
 > > stop installing c++filt from bfd?
 > 
 > c++filt should be installed with the compiler, not with bfd.  (Though if
 > there is a skew between binutils and g++'s idea of what the name mangling
 > scheme is, reports from GNU ld will be wrong).
 > 

I started a  discussion about this on egcs-bugs  in early October last
year  (look  for `egcs-970929:  Install   c++filt' in  the archive for
details about it); we didn't come to a final agreement ;-(

Anyway,  here is an updated version  of the patch I submitted relative
to the CVS tree as of 1998/02/13 16:33:18:

Sat Feb 14 11:50:51 1998  Manfred Hollstein  <manfred@s-direktnet.de>

	* Make-lang.in (DEMANGLER_INSTALL_NAME, DEMANGLER_CROSS_NAME): New macros.
	(c++.install-common): Install c++filt properly as native or as cross
	variant.
	(c++.uninstall): Add c++filt.

diff -u -p egcs/gcc/cp/Make-lang.in.orig egcs/gcc/cp/Make-lang.in
--- egcs/gcc/cp/Make-lang.in.orig	Fri Feb 13 01:30:27 1998
+++ egcs/gcc/cp/Make-lang.in	Sat Feb 14 11:56:11 1998
@@ -45,10 +45,12 @@ CXX_FLAGS_TO_PASS = \
 # Actual names to use when installing a native compiler.
 CXX_INSTALL_NAME = `t='$(program_transform_name)'; echo c++ | sed $$t`
 GXX_INSTALL_NAME = `t='$(program_transform_name)'; echo g++ | sed $$t`
+DEMANGLER_INSTALL_NAME = `t='$(program_transform_name)'; echo c++filt | sed $$t`
 
 # Actual names to use when installing a cross-compiler.
 CXX_CROSS_NAME = `t='$(program_transform_cross_name)'; echo c++ | sed $$t`
 GXX_CROSS_NAME = `t='$(program_transform_cross_name)'; echo g++ | sed $$t`
+DEMANGLER_CROSS_NAME = `t='$(program_transform_cross_name)'; echo c++filt | sed $$t`
 
 # The name to use for the demangler program.
 DEMANGLER_PROG = c++filt$(exeext)
@@ -225,8 +227,17 @@ c++.install-common:
 	    rm -f $(bindir)/$(CXX_INSTALL_NAME)$(exeext); \
 	    $(LN) $(bindir)/$(GXX_INSTALL_NAME)$(exeext) $(bindir)/$(CXX_INSTALL_NAME)$(exeext); \
 	  fi ; \
-	  rm -f $(bindir)/$(DEMANGLER_PROG) ; \
-	  $(INSTALL_PROGRAM) $(DEMANGLER_PROG) $(bindir)/$(DEMANGLER_PROG) ; \
+	  if [ x$(DEMANGLER_PROG) != x ] && [ -x "$(DEMANGLER_PROG)" ]; then \
+	    if [ -f g++-cross$(exeext) ] ; then \
+	      rm -f $(bindir)/$(DEMANGLER_CROSS_NAME)$(exeext); \
+	      $(INSTALL_PROGRAM) $(DEMANGLER_PROG) $(bindir)/$(DEMANGLER_CROSS_NAME)$(exeext); \
+	      chmod a+x $(bindir)/$(DEMANGLER_CROSS_NAME)$(exeext); \
+	    else \
+	      rm -f $(bindir)/$(DEMANGLER_INSTALL_NAME)$(exeext); \
+	      $(INSTALL_PROGRAM) $(DEMANGLER_PROG) $(bindir)/$(DEMANGLER_INSTALL_NAME)$(exeext); \
+	      chmod a+x $(bindir)/$(DEMANGLER_INSTALL_NAME)$(exeext); \
+	    fi ; \
+	  fi ; \
 	fi
 
 c++.install-info:
@@ -249,6 +260,8 @@ c++.uninstall:
 	-rm -rf $(bindir)/$(CXX_CROSS_NAME)$(exeext)
 	-rm -rf $(bindir)/$(GXX_INSTALL_NAME)$(exeext)
 	-rm -rf $(bindir)/$(GXX_CROSS_NAME)$(exeext)
+	-rm -rf $(bindir)/$(DEMANGLER_INSTALL_NAME)$(exeext)
+	-rm -rf $(bindir)/$(DEMANGLER_CROSS_NAME)$(exeext)
 	-rm -rf $(mandir)/$(GXX_INSTALL_NAME)$(manext)
 	-rm -rf $(mandir)/$(GXX_CROSS_NAME)$(manext)
 #\f

      reply	other threads:[~1998-02-14  4:36 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-02-13 10:19 Jason Merrill
1998-02-13 12:56 ` Joe Buck
1998-02-14  4:36   ` Manfred Hollstein [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=199802141101.MAA00972@saturn.s-direktnet.de \
    --to=manfred@s-direktnet.de \
    --cc=bfd@cygnus.com \
    --cc=egcs@cygnus.com \
    --cc=jason@cygnus.com \
    --cc=jbuck@synopsys.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).