Closed timj closed 6 years ago
I'd rather you didn't cherry pick commits to the pull request. When we merge this in we'll end up with lots of duplicate commits in the history. I'd prefer it if the PR was rebased on master as needed so we get a clean merge when done (I'd like a merge commit when we do merge so it's obvious how the HDS changes are related).
ok
I really am starting to worry about this pull request becoming a PR for "rewrite NDF in C and switch HDS to HDF5". These are distinct independent work packages that could be released on different timescales. ARY can be done independently of NDF if the Fortran APIs for ARY continue to work even if the internals are C.
The problem is C ARY uses the new thread-locking functions I've added to HDS5, but I can't merge HDS5 into master yet because it's had very little testing at EAO. I'll be talking about testing HDS5 with the rest of scicom, but in the meantime it seemed simple enough just to treat the HDS5 branch as a "New data system" branch and include C ARY and NDF in there. I suppose I could make C ARY a branch off the hds5 branch... Or maybe I could just add some stubs for the new HDS thread-locking functions into HDS4 (i.e. master) and then I could make C ARY a simple branch of master.
I'm hoping I've sorted this. I've modified hds on master so that the new C version of ARY will build and link with it, and I've moved the commits related to CARY from the hdsv5 branch to a new branch called "cary". Fingers crossed...
dsberry commented on this pull request.
@@ -49,6 +49,7 @@ hds_test_LDADD = libhdsf.la
hdsTest_SOURCES = hdsTest.c hdsTest_LDADD = libhds.la +hdsTest_CFLAGS = $(AM_CFLAGS) -DHDS_INTERNAL_INCLUDES
@grahambell Why is -DHDS_INTERNAL_INCLUDES needed here, given it is supposed to be testing the installed stuff?
Because hds-v4 or hds-v5 were installing a hds_types.h which would cause the test to fail if they were built more recently than hds.
However I also stopped them from doing that, so maybe we don't need HDS_INTERNAL_INCLUDES at all for anything any more.
This pull request allows for an HDSv5 to coexist with the existing HDSv4. v5 is based on HDF.