Hi list,

A colleague and I have noticed that the Perl easyblock forces inclusion of the 
“-Dusethreads” compiler directive. This has caused us some difficulty in which 
a package requiring threads, forks and MPI dies a gruesome death to do with 
pthreads. An experimental build of Perl without “-Dusethreads” doesn’t exhibit 
the same problem. We’re therefore looking at ways of using Easybuild to build a 
non-threaded Perl, and can think of two options: removing “-Dusethreads” as a 
default configuration option and allowing maintainers of easyconfig to add it 
in within configopts, or adding an extra option with a corresponding new if 
condition in the easyblock itself.

I would prefer the first option. Use of interpreter-based threads in Perl is 
noted to be discouraged (http://perldoc.perl.org/threads.html), and the former 
option will be easier for writers of new easyconfigs to implement insofar as 
they won’t have to consult a strange custom option. However, removing 
“-Dusethreads” as the default would affect backwards compatibility, so I was 
interested in getting feedback before I commit to one option or the other.

Any thoughts or opinions on the subject?

Thanks,
Ben

Reply via email to