make behaviour

73 views
Skip to first unread message

Ralf Stephan

unread,
Nov 3, 2014, 4:07:04 AM11/3/14
to sage-...@googlegroups.com
Hello,
Up to one of the last beta versions, 'make' only built new libraries once.
Now, each time I switch branches to an older one and merge develop,
'make' will rebuild python-2.7.8, ATLAS and whatnot, taking half an hour
just for a branch switch on a 6-core, 8GB desktop machine.

As make is still recommended in the documentation, I consider this a bug.

But, noone else complained, so what am I missing?

Regards,

Francois Bissey

unread,
Nov 3, 2014, 4:10:42 AM11/3/14
to sage-...@googlegroups.com
Well, “we” decided that was the only sane behaviour and made it the default.
I’ll try to find the thread for you.

François
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

Francois Bissey

unread,
Nov 3, 2014, 4:13:25 AM11/3/14
to sage-...@googlegroups.com
see https://groups.google.com/forum/#!topic/sage-devel/tyXJC2rtsag

> On 3/11/2014, at 22:07, Ralf Stephan <gtr...@gmail.com> wrote:
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.


This email may be confidential and subject to legal privilege, it may
not reflect the views of the University of Canterbury, and it is not
guaranteed to be virus free. If you are not an intended recipient,
please notify the sender immediately and erase all copies of the message
and any attachments.

Please refer to http://www.canterbury.ac.nz/emaildisclaimer for more
information.

Ralf Stephan

unread,
Nov 3, 2014, 4:23:54 AM11/3/14
to sage-devel
Thanks, I should use sage -f more often.

So, what became of Jeroen's idea of using the
"order only dependency" feature of GNU make?


--
You received this message because you are subscribed to a topic in the Google Groups "sage-devel" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/sage-devel/CZ5HNKsOmSk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to sage-devel+...@googlegroups.com.

Jeroen Demeyer

unread,
Nov 3, 2014, 4:29:10 AM11/3/14
to sage-...@googlegroups.com
On 2014-11-03 10:23, Ralf Stephan wrote:
> Thanks, I should use sage -f more often.
>
> So, what became of Jeroen's idea of using the
> "order only dependency" feature of GNU make?

Still a good idea. If Volker considers it a good idea for Sage-6.4, I'll
make a patch quickly.

Volker Braun

unread,
Nov 3, 2014, 4:37:51 AM11/3/14
to sage-...@googlegroups.com
This probably needs a bunch of testing to figure out which dependencies are not really compiled-in, so I wouldn't want to rush it into 6.4. 

A better long-term plan is IMHO to use hashdist, which solves both the "compile time when switching branches" and LD_LIBRARY_PATH issues.

Jeroen Demeyer

unread,
Nov 3, 2014, 4:44:10 AM11/3/14
to sage-...@googlegroups.com
On 2014-11-03 10:37, Volker Braun wrote:
> A better long-term plan is IMHO to use hashdist, which solves both the
> "compile time when switching branches" and LD_LIBRARY_PATH issues.
I don't know about hashdist, but I don't see how it could magically fix
the "compile time when switching branches" issue.

Anyway, make does a lot of things right (more so than
distutils/setuptools/scons/... IMHO), we just need to use it well.

Jeroen.

Volker Braun

unread,
Nov 3, 2014, 6:15:26 AM11/3/14
to sage-...@googlegroups.com
On Monday, November 3, 2014 9:44:10 AM UTC, Jeroen Demeyer wrote:
I don't know about hashdist, but I don't see how it could magically fix
the "compile time when switching branches" issue.

By caching properly, and using tarball + build script + variables as hash key. So you never have to recompile anything that you have already compiled once before.
 

kcrisman

unread,
Nov 3, 2014, 8:47:16 AM11/3/14
to sage-...@googlegroups.com
Huh, I noticed that, but figured I had just been doing something wrong. 

Jeroen Demeyer

unread,
Nov 4, 2014, 7:18:22 AM11/4/14
to sage-...@googlegroups.com
So is it comparable to ccache then (caching all build output, not just
from .c files)?

Jeroen Demeyer

unread,
Nov 4, 2014, 7:18:41 AM11/4/14
to sage-...@googlegroups.com
On 2014-11-03 10:23, Ralf Stephan wrote:
> Thanks, I should use sage -f more often.
>
> So, what became of Jeroen's idea of using the
> "order only dependency" feature of GNU make?

I created

http://trac.sagemath.org/ticket/17286

Volker Braun

unread,
Nov 4, 2014, 9:00:21 AM11/4/14
to sage-...@googlegroups.com
On Tuesday, November 4, 2014 12:18:22 PM UTC, Jeroen Demeyer wrote:
So is it comparable to ccache then (caching all build output, not just
from .c files)?

Yes except that ccache doesn't cache the building, tuning, and linking...


Reply all
Reply to author
Forward
0 new messages