HenrikBengtsson / CBI-software

A Scientific Software Stack for HPC (CentOS oriented)
https://wynton.ucsf.edu/hpc/software/software-repositories.html
5 stars 2 forks source link

Question for my own education #54

Closed hgputnam closed 2 years ago

hgputnam commented 2 years ago

I was able to figure out how to make prior versions (than the current pull) of scl-devtoolset and scl-rh=python. Since the version specific lua files are present, all I did was change the version in config.mk.

First off, is that the correct way to do this?

I don't see such an easy way to get prior versions of r though, like we have on C4. I have no real need to do this, I just want to understand how it all works.

HenrikBengtsson commented 2 years ago

You can specify make VERSION=<version> for all software tools. That's override what's in the config.mk file (which provides the default version). For example,

$ cd CBI/r
$ make VERSION=3.6.3

Everything is designed so that you would not have to edit any files, other than fixing typos or bugs. This works for me most of the time, but sometimes there is an upstream update that breaks the current Makefile, e.g. moving the download URL or adding a new dependency.

hgputnam commented 2 years ago

Very nice, easy to forget editing something like that...

hgputnam commented 2 years ago

For the -gcc8 bit, are we loading scl-devtoolset8 before typing make VERSION=?

HenrikBengtsson commented 2 years ago

The Makefile should detect that

https://github.com/HenrikBengtsson/CBI-software/blob/aad1b828f8072b5f392b6d3d6f83c86b90e65ad6/CBI/r/config.mk#L8

is set in the config.mk file, and configure make to automatically load that module before building R;

https://github.com/HenrikBengtsson/CBI-software/blob/aad1b828f8072b5f392b6d3d6f83c86b90e65ad6/CBI/r/Makefile#L13-L20

HenrikBengtsson commented 2 years ago

The goal is for all make calls to be independent of what modules you have loaded outside. It's meant to call module purge so everything starts out the same way (but it could be that I've missed it somewhere).

hgputnam commented 2 years ago

Got it, given a chance I will always overthink this type of stuff...