This is the mail archive of the gcc@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]

patch: a few Makefile improvements for egcs


Hi!

I've just been working a bit on egcs's Makefiles.

The first thing that annoyed me was that `make check' would leave lots 
of files behind on /tmp.  Furthermore, this would sometimes prevent me 
from running concurrent tests, so I thought it would be nice to be
able to override the default choice of /tmp.  The first attached patch 
does just that.

The second thing that annoyed me was that, if some host crashed during 
a build, I'd not be able to continue the build with -lean; it would
have to take much more disk space.  The second attached patch provides 
for bootstrap[234]-lean targets.

Finally, there's Robert Lipe's suggestion of running tests for all
multilibs.  The third patch is a tentative implementation of that.  It 
requires CHECK_MULTI to be defined to something different from empty,
`n' or `no' in order to pass to runtest the appropriate target_board
argument.  It does not take care of adding -fpic/-fPIC for each
individual multilib, as I had intended originally, primarily because
I don't know of any good way to check whether -fpic and -fPIC are
synonymous or not (so as to avoid checking both unnecessarily).

If we didn't care about unnecessary testing, a possible implementation 
of this would require modifying SET_TARGET_BOARD as follows:

	sed -e 's/.*\;//' -e 's/@/-/' -e 's/@/ -/g' | \
+	while read f; do \
+	    case "$f" in \
+	    *-fpic*|*-fPIC*) echo "$f";; \
+	    *) for pic in "" $(AVAILABLE_PIC_FLAGS); do \
+		   echo "$pic $f"; \
+	       done;; \
+	    esac; \
+	done | sed -e 's/^ //' -e 's/ $$//' | sort -u | \
	tr '\012' ',' | \

If only there were a simple way to define AVAILABLE_PIC_FLAGS...  Does 
anyone know any?

-- 
Alexandre Oliva
mailto:oliva@dcc.unicamp.br mailto:aoliva@acm.org
http://www.dcc.unicamp.br/~oliva
Universidade Estadual de Campinas, SP, Brasil

testsuite-tmp.diff

bootstrapN-lean.diff

checkmulti.diff


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