Opened 8 weeks ago

Closed 10 days ago

#69915 closed defect (fixed)

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

Reported by: alekitto (Alessandro Chitolina) Owned by: essandess (Steve Smith)
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) 8 weeks ago.

Download all attachments as: .zip

Change History (6)

Changed 8 weeks ago by alekitto (Alessandro Chitolina)

Attachment: main.log added

comment:1 Changed 8 weeks 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 6 weeks 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 6 weeks 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 6 weeks 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.

comment:5 Changed 10 days ago by essandess (Steve Smith)

Owner: set to essandess
Resolution: fixed
Status: newclosed

In 73ae3a3b793eff1326917b68966aa2c42351802e/macports-ports (master):

PG haskell_cabal: Fix configure.universal_args

Fixes: #69915

Note: See TracTickets for help on using tickets.