Opened 13 days ago

Last modified 40 hours ago

#69915 new defect

alex @3.5.1.0+universal: Error: cabal-prebuilt: unrecognized 'configure' option `--disable-dependency-tracking'

Reported by: alekitto (Alessandro Chitolina) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: alex

Description

Attempting to install alex on sonoma (14.4.1 apple silicon) results in a failure.

--->  Fetching archive for alex
--->  Attempting to fetch alex-3.5.1.0_0+haskell_cabal_use_prebuilt+universal.darwin_23.arm64-x86_64.tbz2 from https://packages.macports.org/alex
--->  Attempting to fetch alex-3.5.1.0_0+haskell_cabal_use_prebuilt+universal.darwin_23.arm64-x86_64.tbz2 from https://fra.de.packages.macports.org/alex
--->  Attempting to fetch alex-3.5.1.0_0+haskell_cabal_use_prebuilt+universal.darwin_23.arm64-x86_64.tbz2 from http://fco.it.packages.macports.org/alex
--->  Fetching distfiles for alex
--->  Attempting to fetch alex-3.5.1.0.tar.gz from https://hackage.haskell.org/package/alex-3.5.1.0
--->  Verifying checksums for alex
--->  Extracting alex
--->  Configuring alex
Error: Failed to configure alex: 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_alex/alex/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.

Attaching main.log

Attachments (1)

main.log (14.4 KB) - added by alekitto (Alessandro Chitolina) 13 days ago.

Download all attachments as: .zip

Change History (5)

Changed 13 days ago by alekitto (Alessandro Chitolina)

Attachment: main.log added

comment:1 Changed 13 days ago by ryandesign (Ryan Carsten Schmidt)

Summary: cannot compile alex (sonoma m1)alex @3.5.1.0+universal: Error: cabal-prebuilt: unrecognized 'configure' option `--disable-dependency-tracking'
:info:configure Error: cabal-prebuilt: unrecognized 'configure' option
:info:configure `--disable-dependency-tracking'

The solution will be to add configure.universal_args-delete --disable-dependency-tracking to the Portfile, or possibly to a portgroup it includes if this is a general problem for this type of software.

comment:2 Changed 3 days ago by essandess (Steve Smith)

I see this too, but only on arm64.

Is this a bug in portconfigure.tcl?

We can add this line to the haskell_cabal PG, but that's just patching over whatever underlying issue exists in portconfigure.tcl.

cc: @jmroot, @ryandesign

comment:3 Changed 2 days ago by ryandesign (Ryan Carsten Schmidt)

That's not how you Cc people in Trac. (You add their GitHub handle or email address into the Cc field.)

I'm not aware of any underlying issue. portconfigure.tcl intentionally adds --disable-dependency-tracking to configure.universal_args. Autotools-based configure scripts understand this flag. When the universal variant is enabled, the contents of configure.universal_args are intentionally passed to the configure script along with configure.args. For ports that have a universal variant and use a non-autotools build system that doesn't understand this flag, the port must remove this flag as I showed above.

comment:4 Changed 40 hours ago by kencu (Ken)

at present, portconfigure.tcl adds the flag always

https://github.com/macports/macports-base/blob/4dfabb9c0de9abfcbb4acf1ad68471b0a20983ab/src/port1.0/portconfigure.tcl#L319

and expects it to be removed if not needed/supported

the flag is only needed when doing one-pass multiarch builds with the autotools build system, which is still the most common kind of universal build I believe.

logic might someday be added to portconfigure.tcl to see what kind of build is happening and only add the flag when needed.

Note: See TracTickets for help on using tickets.