Skip to content

Unbundle libtool #4359

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

Closed
wants to merge 1 commit into from
Closed

Unbundle libtool #4359

wants to merge 1 commit into from

Conversation

petk
Copy link
Member

@petk petk commented Jul 3, 2019

Hello, this is same as #4358 except that this unbundles libtool and uses system version. Here additional dependency is required to build PHP from Git. Release would include all needed scripts in the archive so libtool there is not needed (same as autoconf tool).


if test -z "$libtoolize_version"; then
echo "buildconf: libtoolize not found." >&2
echo " You need libtoolize version 2.4.6 or newer installed" >&2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RHEL / CentOS 7 still have 2.4.2, would be nice to accept this version

m4_include([build/m4/ltoptions.m4])
m4_include([build/m4/ltsugar.m4])
m4_include([build/m4/ltversion.m4])
m4_include([build/m4/lt~obsolete.m4])
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks pretty fragile when it comes to supporting different libtool versions. Is it necessary to explicitly include all of these?

@petk
Copy link
Member Author

petk commented Jul 18, 2019

@nikic, @remicollet, @derickr just a quick question here. July 22nd is feature freeze for PHP-7.4. I'm not sure I can make the libtool upgrade till then. I mean, I can fix these obvious mentioned issues and introduce also the aclocal tool dependency back (to not have gazillions of m4_include() usages) in the process but to properly test it might take a bit longer.

Would be upgrading libtool (and introducing two new dependencies in PHP build step) considered an issue if we extend this one after feature freeze? Here we're talking about the libtool (and its libtoolize tool) and automake (and its aclocal which can do that what is asked above a bit). Also interesting fact is that PHP build system very long time ago removed the aclocal dependency so building configure script is a bit simpler.

@derickr
Copy link
Member

derickr commented Jul 18, 2019

I would be much happier if we leave this for PHP 8. TBH, I am not sure whether it is wise to unbundle libtool at all actually.

@nikic
Copy link
Member

nikic commented Jul 18, 2019

I'd prefer to leave this to PHP 8 as well. It's a pretty big build system change and I don't think there's a strong need to land it in 7.4.

@petk
Copy link
Member Author

petk commented Jul 18, 2019

Then, I think it's best to continue with something like #4358 and target PHP 8 together with ditching the autotools completely in one of the PHP 8.x versions (migration to CMake). In any case, with unbundling we'll be introducing the libtoolize (and possibly automake) dependencies back. I'm not sure that's a good idea considering where PHP build system was trying to go from the initial steps to today.

Hopefully, current bundled libtool in PHP 7.4 will do for a minimum period of 3+ years... 🤞

@petk petk closed this Jul 19, 2019
@petk petk deleted the patch-libtoolize branch July 19, 2019 23:35
@petk petk mentioned this pull request Mar 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants