Thanks Robert,

onlytcmod = True

works for me ('toolchainopts' doesn't)

  Oliver





From: [email protected] [[email protected]] on 
behalf of Robert Schmidt [[email protected]]
Sent: Tuesday, July 21, 2015 3:55 PM
To: [email protected]
Subject: Re: [easybuild] EasyBuild ignores unwanted_env_vars option

And here might give you a better idea of the nuanced options:

https://github.com/hpcugent/easybuild-framework/blob/d1387c5847ef3e6d4ffe4c3fba2a0eb8e02ebb46/easybuild/tools/toolchain/compiler.py

I think noopt: True will cause the compiler to set -O0, whcih is probably a bit 
different than opt: False, which probably drops the O2 (but I'm kinda guessing 
:) ).

I think a bunch of people who know better than me are on vacation :)

On Tue, Jul 21, 2015 at 9:42 AM Robert Schmidt 
<[email protected]<mailto:[email protected]>> wrote:
Actually if you are just trying to disable O2 you probably want something like:

toolchainopts = {'opt': False}

I'm not sure how well documented it is... I found it here:

https://hpcugent.github.io/easybuild/files/EasyBuild_introduction_hackathon-Vienna-Jun14.pdf



On Tue, Jul 21, 2015 at 9:33 AM Robert Schmidt 
<[email protected]<mailto:[email protected]>> wrote:
Yeah I don't think that applies to compiler environment variables unfortunately.

The best I can find is onlytcmod

onlymod: Boolean/string to indicate if the toolchain should only load the 
environment
        with module (True) or also set all other variables (False) like 
compiler CC etc
        (If string: comma separated list of variables that will be ignored).

https://easybuild.readthedocs.org/en/latest/eb_a.html



On Tue, Jul 21, 2015 at 9:10 AM Stolpe, Oliver 
<[email protected]<mailto:[email protected]>> wrote:
Hello mailinglist,

we wanted to use the option "unwanted_env_vars" to remove CXXFLAGS in our 
easyconfig file. Unfortunately it ignores this option during execution. What 
are we doing wrong?

Easyconfig file:
-----
easyblock = 'MakeCp'

name = 'vcflib'
version = '1.0.0-rc0'

homepage = 'https://github.com/ekg/vcflib'
description = """vcflib provides methods to manipulate and interpret sequence 
variation as it can be described by VCF."""

toolchain = {'name': 'foss', 'version': '2015a'}

sources = ['%(name)s-%(version)s.tar.gz']
source_urls = []

dependencies = [('zlib', '1.2.8')]

unwanted_env_vars = ['CXXFLAGS']

files_to_copy = 
[(['bin/vcfregionreduce','bin/vcfindelproximity','bin/vcfvarstats','bin/vcfnosnps','bin/vcfmultiwayscripts','bin/vcfmultiallelic','bin/vcfregionreduce_uncompressed','bin/vcfnoindels','bin/vcfregionreduce_pipe','bin/vcfplotaltdiscrepancy.r','bin/vcfclearinfo','bin/vcfcomplex','bin/vcf2bed.py','bin/vcfsort','bin/bed2region','bin/vcfmultiway','bin/vcfnulldotslashdot','bin/vcfgtcompare.sh','bin/vcfremovenonATGC','bin/vcfplottstv.sh','bin/vcf_strip_extra_headers','bin/vcfplotsitediscrepancy.r','bin/vcfregionreduce_and_cut','bin/vcfnobiallelicsnps','bin/vcfplotaltdiscrepancy.sh','bin/vcfclearid','bin/vcffirstheader','bin/vcfprintaltdiscrepancy.sh','bin/vcfsnps','bin/vcfqualfilter','bin/vcf2sqlite.py','bin/vcfprintaltdiscrepancy.r','bin/plot_roc.r','bin/vcfbiallelic','bin/vcfindels'],
 'bin'), 'LICENSE', 'README.md']

sanity_check_paths = {
    'files': 
['bin/vcfregionreduce','bin/vcfindelproximity','bin/vcfvarstats','bin/vcfnosnps','bin/vcfmultiwayscripts','bin/vcfmultiallelic','bin/vcfregionreduce_uncompressed','bin/vcfnoindels','bin/vcfregionreduce_pipe','bin/vcfplotaltdiscrepancy.r','bin/vcfclearinfo','bin/vcfcomplex','bin/vcf2bed.py','bin/vcfsort','bin/bed2region','bin/vcfmultiway','bin/vcfnulldotslashdot','bin/vcfgtcompare.sh','bin/vcfremovenonATGC','bin/vcfplottstv.sh','bin/vcf_strip_extra_headers','bin/vcfplotsitediscrepancy.r','bin/vcfregionreduce_and_cut','bin/vcfnobiallelicsnps','bin/vcfplotaltdiscrepancy.sh','bin/vcfclearid','bin/vcffirstheader','bin/vcfprintaltdiscrepancy.sh','bin/vcfsnps','bin/vcfqualfilter','bin/vcf2sqlite.py','bin/vcfprintaltdiscrepancy.r','bin/plot_roc.r','bin/vcfbiallelic','bin/vcfindels',
 'LICENSE', 'README.md'],
    'dirs': [],
}

moduleclass = 'bio'
-----

From log file:
-----
== 2015-07-21 15:00:34,131 main.EasyConfig INFO setting config option 
unwanted_env_vars: value ['CXXFLAGS'] (type: <type 'list'>)
== 2015-07-21 15:00:35,188 main.environment INFO Environment variable CXXFLAGS 
set to -O2 -march=native (previously undefined)
-----

Thanks,
  Oliver

Reply via email to