#11959: build spkgs in parallel by default
---------------------------+------------------------------------------------
   Reporter:  jhpalmieri   |          Owner:  GeorgSWeber                       
     
       Type:  enhancement  |         Status:  needs_review                      
     
   Priority:  minor        |      Milestone:  sage-4.7.3                        
     
  Component:  build        |       Keywords:  SAGE_PARALLEL_SPKG_BUILD MAKE -j 
--jobs
Work_issues:               |       Upstream:  N/A                               
     
   Reviewer:               |         Author:  John Palmieri                     
     
     Merged:               |   Dependencies:                                    
     
---------------------------+------------------------------------------------

Comment(by leif):

 Replying to [comment:9 leif]:
 > (Or provide some [other] way to enable and disable that feature -- by an
 environment variable or an easier command; the only odd thing is that
 `deps` is under revision control and hence you get uncommitted changes in
 the ''Sage root repository'' :-) whenever that file is modified.  As an
 alternative, we could include some other "temporary" or volatile
 [make]file which is in `.hgignore`, and is either empty or contains just
 `.NOTPARALLEL`.)

 We could easily achieve that by changing `spkg/install` to
 {{{
 #!sh
 ...

 if [[ ${SAGE_PARALLEL_SPKG_BUILD:-yes} = no ]]; then
     # Disable just building multiple packages at the same time; individual
     # spkgs still get built in parallel if they support it and '--jobs'
     # in $MAKE is greater than one (and at all specified):
     echo ".NOTPARALLEL:" > "$SAGE_ROOT"/spkg/standard/parallel_make.cfg
 else
     # Create an (almost) empty file, s.t. including it from
 spkg/standard/deps
     # doesn't raise an error, thereby also invalidating any previous
 setting:
     echo > "$SAGE_ROOT"/spkg/standard/parallel_make.cfg
 fi

 time ${MAKE:-make} -f standard/deps $1

 ...
 }}}
 adding `spkg/standard/parallel_make.cfg` to `$SAGE_ROOT/.hgignore`, and
 adding the line
 {{{
 #!make
 include parallel_make.cfg
 }}}
 to `spkg/standard/deps`.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11959#comment:10>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to