2012/10/15 Mathieu Blondel <[email protected]>: > > > On Tue, Oct 16, 2012 at 12:07 AM, Gael Varoquaux > <[email protected]> wrote: >> >> Not a problem with me, but I don't see the benefit as in my opinion, it >> should _not_ be run: I don't want to see the repo being flooded with >> changes in Cython-generated files that are due to people running make >> with different Cython versions. > > > Indeed, needless recompilations may occur if pulled files are written by git > at slightly different times (the generated .c file and .pyx file may have > slightly different last-modification time, which would confuse "make"). The > solution is to *not* have a global make task that automatically recompiles > all necessary .pyx file but only file-specific tasks per file. People would > then need to call make for example as follows: > > make sklearn/linear_model/sgd_fast.c > > What's the advantage over calling cython directly? It handles dependencies > and you don't need to remember whether you need to pass the --cplus option > to Cython or not. In Makefile, something like this should work: > > %.c: %.pyx > cython $< > > > %.cpp: %.pyx > cython --cplus $< > > with a few additional file-specific tasks for files that have dependencies. > For example: > > sklearn/linear_model/sgd_fast.c: sklearn/linear_model/sgd_fast.pyx > sklearn/utils/seq_dataset.c > cython sklearn/linear_model/sgd_fast.pyx
Looks good to me. -- Olivier http://twitter.com/ogrisel - http://github.com/ogrisel ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Scikit-learn-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
