Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modernize autotools bootstrapping #336

Merged
merged 2 commits into from May 14, 2023
Merged

Modernize autotools bootstrapping #336

merged 2 commits into from May 14, 2023

Conversation

ghost
Copy link

@ghost ghost commented May 9, 2023

This PR:

  1. Updates the autoconf syntax in bootstrap and configure.ac and updates all obsolete macros.
  2. Fixes the make check error that occurs when AM_INIT_AUTOMAKE([subdir-objects]) is present in configure.ac.

@ghost ghost mentioned this pull request May 9, 2023
bootstrap Show resolved Hide resolved
@rdmark
Copy link
Member

rdmark commented May 9, 2023

Great job figuring this out! My eyes go watery every time I try to wrap my head around bootstrap syntax. ;)

Did you test if / how much this breaks backwards compatibility with older autotools? It might be helpful to mention this in future release notes.

@rdmark
Copy link
Member

rdmark commented May 9, 2023

Additionally, these changes reveal the following warnings on Debian Bullseye:

doc/manpages/man1/Makefile.am:35: warning: '%'-style pattern rules are a GNU make extension
doc/manpages/man5/Makefile.am:21: warning: '%'-style pattern rules are a GNU make extension
doc/manpages/man8/Makefile.am:21: warning: '%'-style pattern rules are a GNU make extension

This page talks about pattern rules.

Of course this code change didn't introduce the offending syntax, but it would be a plus to address it for the sake of portability.

@ghost
Copy link
Author

ghost commented May 9, 2023

Additionally, these changes reveal the following warnings on Debian Bullseye:

doc/manpages/man1/Makefile.am:35: warning: '%'-style pattern rules are a GNU make extension
doc/manpages/man5/Makefile.am:21: warning: '%'-style pattern rules are a GNU make extension
doc/manpages/man8/Makefile.am:21: warning: '%'-style pattern rules are a GNU make extension

This page talks about pattern rules.

Of course this code change didn't introduce the offending syntax, but it would be a plus to address it for the sake of portability.

Fixed in latest force-push

@rdmark
Copy link
Member

rdmark commented May 9, 2023

It is possible to bootstrap, configure and build on recent OpenIndiana, FreeBSD, CentOS, and Debian Bookworm / Bullseye. I think this syntax is good.

@rdmark
Copy link
Member

rdmark commented May 9, 2023

@dgsga May I ask you to squash the commits and mention the GitHub ticket # (#331) in the commit description? It's helpful to have that traceability.

See also: https://github.com/Netatalk/netatalk/wiki/Developer-Notes#commit-messages

@rdmark
Copy link
Member

rdmark commented May 10, 2023

BTW I learned about autoupdate today, which modernizes the autotools syntax, and it found only one minor recommended tweak:

dmark@rasp32:~/dev/netatalk $ autoupdate
dmark@rasp32:~/dev/netatalk $ git diff
diff --git a/configure.ac b/configure.ac
index 324ca503..6be04d09 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
 dnl configure.ac for netatalk

-AC_INIT([netatalk],m4_normalize(m4_include([VERSION])))
+AC_INIT([netatalk],[m4_normalize(m4_include(VERSION))])
 AC_CONFIG_SRCDIR([etc/afpd/main.c])

 NETATALK_VERSION=`cat $srcdir/VERSION`

@ghost
Copy link
Author

ghost commented May 12, 2023

@dgsga May I ask you to squash the commits and mention the GitHub ticket # (#331) in the commit description? It's helpful to have that traceability.

See also: https://github.com/Netatalk/netatalk/wiki/Developer-Notes#commit-messages

Done

@rdmark
Copy link
Member

rdmark commented May 12, 2023

@dgsga The macOS job is failing with ld: library not found for -lzlib now...

@ghost
Copy link
Author

ghost commented May 12, 2023

@dgsga The macOS job is failing with ld: library not found for -lzlib now...

Yes, something unpleasant has happened. Looking into it...

@rdmark
Copy link
Member

rdmark commented May 13, 2023

Still failing on Monterey? What's going on!

@ghost
Copy link
Author

ghost commented May 14, 2023

Hi @rdmark. It turns out the issue is with a bug in upstream mysql version 8.0.33. A bug fix request has been submitted to the maintainers. In the meantime the macOS workflow installs mysql version 8.0.32, a temporary workaround until the mysql issue is fixed.

@rdmark rdmark merged commit d2ef15c into Netatalk:main May 14, 2023
@ghost ghost deleted the autoconf_fix branch May 14, 2023 17:06
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.

1 participant