#54112 closed defect (fixed)

autogen stuck on guile-2.0, refuses rebuild with guile-2.2.2

Reported by: mouse07410 (Mouse) Owned by: kencu (Ken)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: maehne (Torsten Maehne)
Port: autogen

Description

macOS Sierra 10.12.4, Xcode-8.3.2, everything current/latest.

$ port installed guile
The following ports are currently installed:
  guile @2.2.2_0 (active)
$ sudo port rev-upgrade
--->  Scanning binaries for linking errors
--->  Found 2 broken files, matching files to ports
--->  Found 1 broken port, determining rebuild order
You can always run 'port rev-upgrade' again to fix errors.
The following ports will be rebuilt: autogen @5.18.12
Continue? [Y/n]: y
--->  Computing dependencies for autogen
--->  Cleaning autogen
--->  Scanning binaries for linking errors
--->  Found 2 broken files, matching files to ports
--->  Found 1 broken port, determining rebuild order
--->  Rebuilding in order
     autogen @5.18.12 
--->  Computing dependencies for autogen
--->  Fetching distfiles for autogen
--->  Verifying checksums for autogen
--->  Extracting autogen
--->  Applying patches to autogen
--->  Configuring autogen
Error: Failed to configure autogen, consult /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_autogen/autogen/work/autogen-5.18.12/config.log
Error: Failed to configure autogen: configure failure: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_autogen/autogen/main.log for details.
Error: rev-upgrade failed: Error rebuilding autogen
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
$

log excerpt:

. . . . .
:info:configure configure: checking for guile 2.0
:info:configure configure: checking for guile 1.8
:info:configure configure: error: 
:info:configure No Guile development packages were found.
:info:configure Please verify that you have Guile installed.
. . . . .

Attachments (6)

autogen.log.txt (18.7 KB) - added by mouse07410 (Mouse) 23 months ago.
main.log
autogen.config.log (82.7 KB) - added by mouse07410 (Mouse) 23 months ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_autogen/autogen/work/autogen-5.18.12/config.log
Portfile (1.7 KB) - added by jwhowse4 23 months ago.
port file
patch-configure.diff (347 bytes) - added by jwhowse4 23 months ago.
patch one
patch-agen5_guile-iface.h.diff (695 bytes) - added by jwhowse4 23 months ago.
patch two
Portfile.2 (4.6 KB) - added by gnw3 22 months ago.
guile version 2.0.14 Portfile

Download all attachments as: .zip

Change History (22)

Changed 23 months ago by mouse07410 (Mouse)

Attachment: autogen.log.txt added

main.log

Changed 23 months ago by mouse07410 (Mouse)

Attachment: autogen.config.log added

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_autogen/autogen/work/autogen-5.18.12/config.log

comment:1 Changed 23 months ago by ryandesign (Ryan Schmidt)

comment:2 Changed 23 months ago by mouse07410 (Mouse)

Thank you!

In the meanwhile, it would be nice if Macports added this patch to the autogen package.

Last edited 23 months ago by mouse07410 (Mouse) (previous) (diff)

comment:3 Changed 23 months ago by jwhowse4

Attached is a Portfile and a pair of patch files based on the Homebrew patch which I used to successfully build autogen on MacOS 10.10.5 with XCode 7.2.1.

Changed 23 months ago by jwhowse4

Attachment: Portfile added

port file

Changed 23 months ago by jwhowse4

Attachment: patch-configure.diff added

patch one

Changed 23 months ago by jwhowse4

patch two

comment:4 Changed 23 months ago by ballapete (Peter Dyballa)

The patches work on Mac OS X 10.6.8, Snow Leopard.

comment:5 Changed 23 months ago by mf2k (Frank Schima)

Thanks. Per the guidelines, please instead attach a unified diff of the Portfile so we can easily see what changes you are proposing.

Changed 22 months ago by gnw3

Attachment: Portfile.2 added

guile version 2.0.14 Portfile

comment:6 Changed 22 months ago by gnw3

The autogen tarball was created using guile-2.0 and the binary package for autogen was linked against guile-2.0:

$ otool -L /opt/local/bin/autogen 
/opt/local/bin/autogen:
	/opt/local/lib/libopts.25.dylib (compatibility version 42.0.0, current version 42.1.0)
	/opt/local/lib/libguile-2.0.22.dylib (compatibility version 31.0.0, current version 31.1.0)
	/opt/local/lib/libgc.1.dylib (compatibility version 2.0.0, current version 2.3.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
	/opt/local/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.5.0)

I looked at what versions of guile and autogen are used elsewhere in my lab:

Ubuntu 14.04 and RHEL7 use autogen-5.18 and guile-2.0.9. Msys2 uses autogen-5.18.12 and guile-2.0.14.

In my view, we need a guile20 until GNU tarballs have moved to guile-2.2. Hacking a configured package to use newer tools puts macports outside the widely used toolchains so has the potential for introducing bugs not found in systems that stick with the release configurations.

I have attached a guile20 Portfile that allows the binary autogen to run.

comment:7 Changed 22 months ago by mf2k (Frank Schima)

See also #54293.

comment:8 Changed 22 months ago by mouse07410 (Mouse)

In my view, we need a guile20 until GNU tarballs have moved to guile-2.2

Respectfully disagree.

In my view we need an autogen configurator that correctly detects guile, and does not barf if guile is of a higher version than 2.0. Especially since it does not seem to matter for the code...

As for Ubuntu 14.04 packages - who cares?

comment:9 Changed 22 months ago by kencu (Ken)

I suppose if somebody put together a PR, this might be fixed already. - Ah, no maintainer. Well that might be good - once the PR is up there, any of the team can go ahead and commit it.

Last edited 22 months ago by kencu (Ken) (previous) (diff)

comment:10 Changed 21 months ago by maehne (Torsten Maehne)

Cc: maehne added

comment:11 Changed 19 months ago by johnty (johnty wang)

this is still not working? just pulled a fresh install of macports, did an update, and then tried to add autogen. guile 2.2.2 gets installed and the autogen build fails.

comment:12 Changed 19 months ago by mouse07410 (Mouse)

Since nobody seems keen on fixing it, I'm not surprised it isn't working.

Since I'm not keen on fixing this port's config as I don't have a clue how to do it, my workaround was uninstalling autogen, and getting by without that tool. So far so good.

comment:13 Changed 19 months ago by kencu (Ken)

PR in place; if it passes all the Travis builds I'll add it. Works on all my system tests so far.

Last edited 19 months ago by kencu (Ken) (previous) (diff)

comment:14 Changed 19 months ago by kencu (Ken)

Summary: autopen stuck on guile-2.0, refuses rebuild with guile-2.2.2autogen stuck on guile-2.0, refuses rebuild with guile-2.2.2

comment:15 Changed 19 months ago by kencu (Ken)

Looks like the patches in this ticket and on homebrew are incomplete. If the Port is reconfigured with use_autoreconf yes then it still fails. There is a better patch that fixes this issue here <http://savannah.gnu.org/support/?109347> that would be more appropriate to use instead.

Also, notably, the author of autogen has not exactly certified autogen to work properly with guile-2.2 see <http://mac-os-forge.2317878.n4.nabble.com/autogen-install-or-upgrade-fails-td336506.html> but suggests a warning be used in case there are as-yet undiscovered problems. Hmm.

I don't see any reports out there that issues have been found with autogen & guile 2.2. It's broken the way it is. I just checked the development website <http://git.savannah.gnu.org/cgit/autogen.git/log/> and there's no indication that this issue with guile-2.2 is being fixed in the autogen source code at the moment.

I'll update the fix to use the new patch, and add a note that it hasn't been officially verified as the autogen author suggests.

comment:16 Changed 19 months ago by kencu (Ken)

Owner: set to kencu
Resolution: fixed
Status: newclosed

In 13f33d093b4b7dde9dd17a6a250c79a6e68ff207/macports-ports:

autogen: fix build against newer guile 2.2.2

closes: #54112
use autoreconf as patch changes an m4 file
revbump as builds against new library

Note: See TracTickets for help on using tickets.