Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: [wip new] geo/eccodes [was: installing symlink fails]
To:
Marco van Hulten <marco@hulten.org>
Cc:
ports@openbsd.org, Martin Reindl <martin@catai.org>
Date:
Thu, 4 Sep 2025 12:10:57 +0100

Download raw body.

Thread
On 2025/09/04 12:01, Marco van Hulten wrote:
> On Wed, 3 Sep 2025 13:00:50 +0100 Stuart Henderson wrote:
> > On 2025/09/03 13:46, Marco van Hulten wrote:
> > > On Tue, 2 Sep 2025 14:40:04 +0100 Stuart Henderson wrote:  
> > > > On 2025/09/02 14:48, Marco van Hulten wrote:  
> > > > > On Tue, 2 Sep 2025 11:23:02 +0100 Stuart Henderson wrote:    
> > > > > > attached with some cleanup. I think this is looking to be in reasonable
> > > > > > shape now.    
> > > > > 
> > > > > Thanks.  I tried to make test, but tests fail (log attached).    
> > > > 
> > > > worked for me, but I had it installed. alternatively I think adding this may help 
> > > > 
> > > > TEST_ENV =	LD_LIBRARY_PATH=${WRKBUILD}/lib  
> > > 
> > > This works.  All tests for netcdf (including Martin's update + minor
> > > changes), hdf5, libaec, eccodes and cdo work and CDO can read GRIB2 (as
> > > well as GRIB1 and netCDF):
> > > 
> > > mvanhult@detekti:~/data/grib$ cdo -infon icon-eu_europe_regular-lat-lon_single-level_2025063000_120_T_2M.grib2 
> > >     -1 :       Date     Time   Level Gridsize    Miss :     Minimum        Mean     Maximum : Parameter name
> > >      1 : 2025-07-05 00:00:00       2   904689       0 :      269.95      289.78      313.96 : 2t            
> > > cdo    infon: Processed 904689 values from 1 variable over 1 timestep [0.30s 81MB]
> > >   
> > > > > > while loooking into what it wants Python for, I found memfs - do you
> > > > > > have a handle on this? it seems that it may be another way to load the
> > > > > > definitions that doesn't need the huge file tree...    
> > > > > 
> > > > > No, I know hardly anything about memfs.    
> > > > 
> > > > I have no idea about use of this software but the definitions account
> > > > for a *lot* of files; 22k entries in the PLIST before flattening, 27k
> > > > after, so it would be nice to avoid them if they aren't really needed
> > > > 
> > > >  * MEMFS, eccodes(OFF): 'Memory based access to definitions/samples'
> > > > 
> > > >   
> > > > > I cannot look into this anytime soon.  Will add an XXX comment before
> > > > > the post-install rule as a reminder.  
> > > 
> > > I realise that 20k+ entries are a lot and even saving only about 5k
> > > would be a good thing.  I can compile with memfs and probably need to
> > > set some variable when linking [1].  With memfs it creates a
> > > libeccodes_memfs.so of size 36 MiB, which is surely better than tens of
> > > thousands of files.  More news later.  
> > 
> > thanks.
> > 
> > you'll probably need this, to get the file versioned correctly:
> > 
> > SHARED_LIBS +=  eccodes_memfs     0.0
> > 
> > (+ plist regen after rebuilding)
> > [...]
> 
> Thanks, here is an improved port, good to go (from my side).

Great, thanks.  This is OK sthen@ to import.

> There is still this TEST_ENV in.  Is that okay, or should it work
> without?

It's slightly surprising but not worth doing anything more than this
for the port imho.