reducing identical builds?

Let's say I

 cd 
 /configure -build i686-pc-cygwin -host i686-pc-cygwin -target i686-pc-cygwin 
 make 
 make install  
 cd 
 /configure -build i686-pc-cygwin -host i686-pc-cygwin -target 
sparc-sun-solaris2.10 
 make 
 make install  
 cd 
 /configure -build i686-pc-cygwin -host i686-pc-cygwin -target 
sparc64-sun-solaris2.10 
 make 
 make install  
 cd 
 /configure -build i686-pc-cygwin -host sparc-sun-solaris2.10 -target 
sparc-sun-solaris2.10 
 make 
 make install DESTDIR=... 
 cd 
 /configure -build i686-pc-cygwin -host sparc64-sun-solaris2.10 -target 
sparc64-sun-solaris2.10 
 make 
 make install DESTDIR=... 


 This does the same thing many times, in the interest of doing a few different 
things. 
 It builds gmp, mpfr, libiberty many times. 
 Libiberty is built multiple times even with just one configure. 


 Has anyone done work to reduce the waste here? 
 In particular, to automate and optimize building multiple configurations? 


 I started something but it's not very far along, and the stuff I turned up 
 with libiberty's configure points out a danger -- compiling for a platform 
 is different depending on if the platform is build vs. host vs. target. 
 host=i686-pc-cygwin libiberty does not necessarily equal target=i686-pc-cygwin 
libiberty, etc. 
 Still in the above example, one can be conservative about that and still 
reduce a lot. 
 As long as build, host, target are really independent. 


 Maybe just something very general like ccache? I haven't tried that yet. I 
think I will now.


Thanks,
 - Jay

Reply via email to