Those subdirectories as part of the filenames are unusual. Perhaps this is
what's causing problems (I can't easily check things right now)

I would just do

source_urls = [
    'ftp://cola.gmu.edu/grads/%(version_major_minor)s/',
    'ftp://cola.gmu.edu/grads/Subblibs/%(version_major_minor)s/builds/',
]
sources = [
    %(namelower)s-%(version)s-bin-centos7.4-x86_64.tar.gz',
    {'download_filename'': supplibs-centos7.4-x86_64.tar.gz', 'filename':
'supplibs-%(version)s-centos7.4-x86_64.tar.gz'}
]

I'd probably also use -centos7.4-x86_64 as the version suffix, if you plan
to submit this easyconfig upstream.

Best regards, Mikael

On Fri, Aug 9, 2019 at 2:55 PM Loris Bennett <[email protected]>
wrote:

> Hi Kenneth,
>
> Kenneth Hoste <[email protected]> writes:
>
> > Hi Loris,
> >
> > On 08/08/2019 09:52, Loris Bennett wrote:
> >> Hi,
> >>
> >> I am trying to write an easyconfig for the binary version of GrADS
> >> (http://cola.gmu.edu/grads/).  The version I am interested in comprises
> >> a tgz of the main program plus a tgz of "supplementary libraries".  As I
> >> understand it, I just need to unpack both and then set an environment
> >> for the main program which points to the directory containing the
> >> supplementary libraries.
> >>
> >> I can obviously just write two easyconfigs, but is there a better way of
> >> doing it?
> >
> > You can just list both tgz's in sources, and maybe enable the
> > 'build-in-installdir' mode so they get unpacked straight into the
> installation
> > directory:
> >
> > buildininstalldir = True
> >
> >
> > Does that help?
>
> Thanks, that got me a bit further.  However, eb fails with
>
>   == FAILED: Installation ended unsuccessfully (build directory:
>   /trinity/shared/easybuild/software/GrADS/2.2.1): build failed (first
>   300 chars): Failed to copy grads-2.2.1 to
>   /trinity/shared/easybuild/software/GrADS/2.2.1: [Errno 2] No such file
>   or directory: 'grads-2.2.1'
>
> The sources directory looks like this:
>
>   [build@admin eco]$ ll /trinity/shared/easybuild/sources/g/GrADS/
>   total 0
>   drwxr-xr-x 2 build staff 53 Aug  9 14:46 2.2
>   drwxr-xr-x 3 build staff 25 Aug  9 14:46 Supplibs
>
> So I guess there is a problem because the version directory in the
> tarball is 2.2 rather than 2.2.1.
>
> My easyconfig looks like this:
>
>   easyblock = 'PackedBinary'
>
>   name = 'GrADS'
>   version = '2.2.1'
>
>   homepage = 'http://cola.gmu.edu/grads/'
>   description = "Grid Analysis and Display System"
>
>   toolchain = {'name': 'dummy', 'version': ''}
>
>   # ftp://cola.gmu.edu/grads/2.2/grads-2.2.1-bin-centos7.4-x86_64.tar.gz
>   # ftp://cola.gmu.edu/grads/Supplibs/2.2/builds/
>   source_urls = ['ftp://cola.gmu.edu/grads/']
>   sources =
> ['%(version_major_minor)s/%(namelower)s-%(version)s-bin-centos7.4-x86_64.tar.gz',
>
>  'Supplibs/%(version_major_minor)s/builds/supplibs-centos7.4-x86_64.tar.gz']
>   checksums = [
>       '85b657e0088ab8f782a8570574b4a128358a29f6f262e95a4c36ddd04c850c39',
> # grads-2.2.1-bin-centos7.4-x86_64.tar.gz
>       '6d7da926cb4536b892f70f38b364361c77af02987bc14a73e178408350caca33',
> # supplibs-centos7.4-x86_64.tar.gz
>   ]
>
>   buildininstalldir = True
>
>   sanity_check_paths = {
>       'files': ['bin/grads', 'lib/libgxdummy.so'],
>       'dirs': ['bin', 'lib'],
>   }
>
>   modextravars = {'GADDIR': '%(installdir)s',
>                   }
>
>   moduleclass = 'geo'
>
> Any thoughts?
>
> Cheers,
>
> Loris
>
> --
> Dr. Loris Bennett (Mr.)
> ZEDAT, Freie Universität Berlin         Email [email protected]
>

Reply via email to