Skip to content

Conversation

@lpsinger
Copy link
Contributor

@lpsinger lpsinger commented Mar 25, 2025

This will fix build errors that we have observed with healpy. See healpy/healpy#991 (comment).

lpsinger added a commit to lpsinger/healpy that referenced this pull request Mar 25, 2025
@lpsinger
Copy link
Contributor Author

@bryanirby, would you please review this?

@bryanirby
Copy link
Collaborator

I need to think about this for a while. CFITSIO is a subtree of the HEASoft repository, for which it's preferable for us to have all of these files in place. So, I need time to consider options.

@lpsinger
Copy link
Contributor Author

If you keep these in the source tree, then you need to update them whenever you make changes to configure.ac or Makefile.am. They are out of date now.

@bryanirby
Copy link
Collaborator

Duly noted, thanks.

@lpsinger
Copy link
Contributor Author

I'm not sure why this only just now started being a problem for Healpy, but since this has broken our ability to do a release it is also indirectly a release-critical issue for Debian (see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1100222). Please fix this ASAP.

@bryanirby
Copy link
Collaborator

Ok, I've updated the config files on the develop branch and hope this helps.

@lpsinger
Copy link
Contributor Author

Ok, I've updated the config files on the develop branch and hope this helps.

That worked (see healpy/healpy#998). Can you do a point release?

@lpsinger lpsinger force-pushed the remove-generated-autotools-files branch from c48b752 to b90b213 Compare March 25, 2025 19:57
@bryanirby
Copy link
Collaborator

Yes, working on 4.6.1 now.

@bryanirby
Copy link
Collaborator

4.6.1 is published now.

@lpsinger lpsinger force-pushed the remove-generated-autotools-files branch from b90b213 to 83bab1c Compare March 25, 2025 21:01
lpsinger added a commit to lpsinger/healpy that referenced this pull request Mar 25, 2025
@lpsinger
Copy link
Contributor Author

I'm sorry, I spoke too soon. The healpy build is still failing with the same error as before:

CDPATH="${ZSH_VERSION+.}:" && cd /home/docs/checkouts/readthedocs.org/user_builds/healpy/checkouts/996/cextern/cfitsio && /bin/bash '/home/docs/checkouts/readthedocs.org/user_builds/healpy/checkouts/996/cextern/cfitsio/config/missing' aclocal-1.17
[554](https://app.readthedocs.org/projects/healpy/builds/27635307/#265254068--554)	      /home/docs/checkouts/readthedocs.org/user_builds/healpy/checkouts/996/cextern/cfitsio/config/missing: line 85: aclocal-1.17: command not found
[555](https://app.readthedocs.org/projects/healpy/builds/27635307/#265254068--555)	      WARNING: 'aclocal-1.17' is missing on your system.
[556](https://app.readthedocs.org/projects/healpy/builds/27635307/#265254068--556)	               You should only need it if you modified 'acinclude.m4' or
[557](https://app.readthedocs.org/projects/healpy/builds/27635307/#265254068--557)	               'configure.ac' or m4 files included by 'configure.ac'.
[558](https://app.readthedocs.org/projects/healpy/builds/27635307/#265254068--558)	      make: *** [Makefile:706: /home/docs/checkouts/readthedocs.org/user_builds/healpy/checkouts/996/cextern/cfitsio/aclocal.m4] Error 127

See https://app.readthedocs.org/projects/healpy/builds/27635307/.

@bryanirby
Copy link
Collaborator

Ok, unfortunately I don't really know what to do here. When I re-run all of the autotools, nothing changes, so I have nothing new to commit.

@bryanirby
Copy link
Collaborator

Does it help if you "touch aclocal.m4 configure Makefile.am Makefile.in" before the build?

lpsinger added a commit to lpsinger/healpy that referenced this pull request Mar 26, 2025
@lpsinger
Copy link
Contributor Author

Does it help if you "touch aclocal.m4 configure Makefile.am Makefile.in" before the build?

That does prevent it from regenerating and rerunning configure when you run make, but I have no simple way to add a touch command to our CI/CD pipeline.

What you could do is add the macro AM_MAINTAINER_MODE (no arguments) to your configure.ac file, right below AM_INIT_AUTOMAKE. This will disable automatically regenerating the build system unless the user invokes ./configure with the flag --enable-maintainer-mode.

Would you please try that? This is becoming urgent because I am getting nastygrams from fellow Debian maintainers.

@bryanirby
Copy link
Collaborator

Ok, I just pushed changes to the develop branch to use AM_MAINTAINER_MODE. It works okay for me, let me know if it fixes things for you.

@lpsinger
Copy link
Contributor Author

Ok, I just pushed changes to the develop branch to use AM_MAINTAINER_MODE. It works okay for me, let me know if it fixes things for you.

That works. Please release that.

@bryanirby
Copy link
Collaborator

Ok, it's released. Before future releases we'll plan to check in with you first to try to avoid any urgent scenarios.

@wrp
Copy link

wrp commented Dec 24, 2025

I'm not really sure where (if anywhere) this conversation is taking place, but this is a change that needs to happen. Distributing autoconf generated metafiles in git is not a good idea. That is what distribution tarballs are for. AM_MAINTAINER_MODE is not a good solution, and was abandoned decades ago. (Jim Meyering, the author of the macro, stopped using it "several years ago" as of 2006!!). If there are structural issues preventing these files from being removed from git, those are deeper issues that need to be resolved.

@bryanirby
Copy link
Collaborator

Hi @wrp - Thanks for the note. There are structural issues underlying our historical preference for keeping the autotools-generated files in the distribution, and we weren't aware of any reasons other than aesthetic ones for removing them. However, we will revisit this issue as soon as possible. Thanks again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants