HEASARC / cfitsio

C and Fortran library for reading and writing FITS files
24 stars 9 forks source link

Changes to start 'libtoolizing' CFITSIO, made with the utilities and … #20

Closed bryanirby closed 2 months ago

bryanirby commented 5 months ago

…m4 files from glibtoolize 2.4.7, aclocal 1.16.5, automake 1.16.5, autoconf 2.72

Further changes are needed, including handling of shared library version numbers

bryanirby commented 5 months ago

Thanks Leo. I'm working the next iterations of the configure.ac & Makefile.am.

Rather than put the files generated by autoconf under version control, what if you excluded them from version control and had your GitHub Actions workflow run autoreconf etc. in order to make release tarballs?

I assume that's doable, but could you elaborate on this issue, i.e. what problem is being addressed? Thanks.

lpsinger commented 5 months ago

Thanks Leo. I'm working the next iterations of the configure.ac & Makefile.am.

Rather than put the files generated by autoconf under version control, what if you excluded them from version control and had your GitHub Actions workflow run autoreconf etc. in order to make release tarballs?

I assume that's doable, but could you elaborate on this issue, i.e. what problem is being addressed? Thanks.

You would never actually edit these files; they are generated by the build system. Opinions vary on whether you should include automatically generated code under version control. I tend not to.

A more compelling reason to exclude them from version control and to generate them for source release assets in your CI pipeline is so that these files are generated in a controlled, clean-room build environment, rather than generated on someone's personal workstation.

bryanirby commented 4 months ago

You would never actually edit these files; they are generated by the build system. Opinions vary on whether you should include automatically generated code under version control. I tend not to.

A more compelling reason to exclude them from version control and to generate them for source release assets in your CI pipeline is so that these files are generated in a controlled, clean-room build environment, rather than generated on someone's personal workstation.

Thanks for clarifying, I thought you were suggesting that their inclusion was problematic for someone downstream. We prefer to leave them in for now as that's preferable for our internal workflow, but may consider omitting them in the future.

I'm reasonably happy with the current state of this branch, but we're not necessarily ready for a new release just yet. Could you clarify what else HEALPy needs from CFITSIO in order for the issue raised in their #914 to be considered resolved?

lpsinger commented 4 months ago

I'm reasonably happy with the current state of this branch, but we're not necessarily ready for a new release just yet. Could you clarify what else HEALPy needs from CFITSIO in order for the issue raised in their #914 to be considered resolved?

Stand by. I'm working on testing this at https://github.com/healpy/healpy/pull/942.

lpsinger commented 4 months ago

The build is still failing. Would you please rerun autoreconf and commit the updated generated configure and Makefile.in files?

bryanirby commented 4 months ago

The build is still failing. Would you please rerun autoreconf and commit the updated generated configure and Makefile.in files?

I pushed over the new Makefile.in, but auto[re]conf isn't generating a new configure since the .ac hasn't changed.

lpsinger commented 4 months ago

Thanks, @bryanirby. The build is still running, but this looks like it is working now.

bryanirby commented 2 months ago

cfitsio_libtool branch was merged into 'develop'