This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RFC: Do not install specs file


Zack suggested that we might win by not installing the specs file,
and, in fact, this turns out to be surprisingly true.  I measured a
0.3% improvement in Qt builds simply by making that change.  Some
combination of reduced work on the part of the driver, and reduced
disk access, makes this worthwhile.  Furthermore, in internal
discussions, we couldn't see any reason that people need the specs
file to be installed, especially since it can be recreated with
-dumpspecs.

Does anyone object to this change (which I have tested on
i686-pc-linux-gnu, but not installed)?

--
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com

Index: Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Makefile.in,v
retrieving revision 1.1433
diff -c -5 -p -r1.1433 Makefile.in
*** Makefile.in	16 Dec 2004 17:31:51 -0000	1.1433
--- Makefile.in	20 Dec 2004 02:27:39 -0000
*************** install-common: native $(EXTRA_PARTS) la
*** 3230,3245 ****
  	    rm -f $(DESTDIR)$(libsubdir)/$$file; \
  	    $(INSTALL_DATA) $$file $(DESTDIR)$(libsubdir)/$$file; \
  	    chmod a-x $(DESTDIR)$(libsubdir)/$$file; \
  	  else true; fi; \
  	done
! # Don't mess with specs if it doesn't exist yet.
! 	-if [ -f specs ] ; then \
! 	  rm -f $(DESTDIR)$(libsubdir)/specs; \
! 	  $(INSTALL_DATA) $(SPECS) $(DESTDIR)$(libsubdir)/specs; \
! 	  chmod a-x $(DESTDIR)$(libsubdir)/specs; \
! 	fi
  # Install protoize if it was compiled.
  	-if [ -f protoize$(exeext) ]; then \
  	  rm -f $(DESTDIR)$(bindir)/$(PROTOIZE_INSTALL_NAME)$(exeext); \
  	  $(INSTALL_PROGRAM) protoize$(exeext) $(DESTDIR)$(bindir)/$(PROTOIZE_INSTALL_NAME)$(exeext); \
  	  rm -f $(DESTDIR)$(bindir)/$(UNPROTOIZE_INSTALL_NAME)$(exeext); \
--- 3230,3244 ----
  	    rm -f $(DESTDIR)$(libsubdir)/$$file; \
  	    $(INSTALL_DATA) $$file $(DESTDIR)$(libsubdir)/$$file; \
  	    chmod a-x $(DESTDIR)$(libsubdir)/$$file; \
  	  else true; fi; \
  	done
! # Remove any specs file installed by a previous version of GCC.  
! # We no longer install the specs file because its presence makes the 
! # driver slower, and because people who need it can recreate it with 
! # -dumpspecs.
! 	rm -f $(DESTDIR)$(libsubdir)/specs
  # Install protoize if it was compiled.
  	-if [ -f protoize$(exeext) ]; then \
  	  rm -f $(DESTDIR)$(bindir)/$(PROTOIZE_INSTALL_NAME)$(exeext); \
  	  $(INSTALL_PROGRAM) protoize$(exeext) $(DESTDIR)$(bindir)/$(PROTOIZE_INSTALL_NAME)$(exeext); \
  	  rm -f $(DESTDIR)$(bindir)/$(UNPROTOIZE_INSTALL_NAME)$(exeext); \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]