Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

required changes for toolchain which replaces toolkit + cleanups/enhancements #7

Merged
merged 21 commits into from
Nov 5, 2012

Conversation

boegel
Copy link
Member

@boegel boegel commented Nov 3, 2012

No description provided.

opts = {
'mpicc': "%s %s" % (os.getenv('MPICC'), os.getenv('CFLAGS')),
'mpif77': "%s %s" % (os.getenv('MPIF77'), os.getenv('FFLAGS')),
'f77': os.getenv('F77'),
'cc': os.getenv('CC'),
'builddir': os.getcwd(),
'base': base,
'mpilib': mpilib
'mpidir': os.path.dirname(os.getenv('MPI_LIB_DIR')),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

at some point we will have to specify what the best way is to do this: through environment or through toolchain instance

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

with best i meant "recommended"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel environment variables are easier, no API for people to get familiar with, they just need to know which environment variable to use. It also allows us to make changes to toolchain, if needed.

The biggest downside is that something else may be setting the environment variables as well, outside of EasyBuild, I guess.

Is there currently an easy way to access stuff like CC, MPICC and things like CFLAGS and MPI_LIB_DIR via toolchain?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't understand the question. str(self.toolchain.variables['CC']) ? you could write a tiny function (get_variable) to do just that.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't realize it was that simple. :) But it does make a lot of sense in retrospect.

Having a get_variable function makes sense, it hides the guts of toolchain, which is a good thing (because then we can change it without affecting outsiders).

So... Should we change this everywhere? That's going to be a fun exercise... Hard to test if we got them all too.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ask feedback and make the preferred method known. actual work can be done later and in seperate issue.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See easybuilders/easybuild-framework#298 for a discussion on this.

boegel added a commit that referenced this pull request Nov 5, 2012
required changes for toolchain which replaces toolkit + cleanups/enhancements
@boegel boegel merged commit 4685a21 into easybuilders:develop Nov 5, 2012
boegel pushed a commit that referenced this pull request Jun 3, 2015
boegel pushed a commit that referenced this pull request Dec 12, 2015
parse output of 'g++ --print-search-dirs' in Python
boegel pushed a commit that referenced this pull request May 13, 2016
style fixes for SuiteSparse easyblock
boegel pushed a commit that referenced this pull request Dec 3, 2016
add back missing import for LooseVersion in MCR easyblock
boegel added a commit that referenced this pull request Dec 22, 2016
prepare release notes for eb302
boegel pushed a commit that referenced this pull request Jan 13, 2018
…pi-support

don't use -static for AmberTools + fix sanity check
boegel pushed a commit that referenced this pull request Apr 28, 2021
use self.version rather than 'latest' symlink to point to correct subdirectory in impi build dir
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants