Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#62428 closed defect (fixed)

gobject-introspection @1.60.2_5 fails to configure (with fixes)

Reported by: dsteck Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: michaelld (Michael Dickens)
Port: gobject-introspection

Description (last modified by dsteck)

Configure failed in two ways. Tested on macports with everything uninstalled, Big Sur 11.2.3 (20D91), CLI tools 12.4.0.0.1.1610135815, as x86_64 (everything current as of now, 10 March 2021).

  1. configure complains that it can't find gtkdocize

(see gobject-introspection-fail1.log)

solution: add port gtk-doc as a dependency

  1. configure complains that it can't find Python.h; the issue is that CPP='', so the test is run without specifying a preprocessor

(see gobject-introspection-fail2.log)

solution: add two lines to portfile (not sure if this is the right fix, but it's how I was able to make it work):
configure.cpp 'gcc -E'
configure.post_args CPP=${configure.cpp}

Attachments (2)

gobject-introspection-fail1.log (88.5 KB) - added by dsteck 3 years ago.
config.log for first problem
gobject-introspection-fail2.log (107.5 KB) - added by dsteck 3 years ago.
config.log for second problem

Download all attachments as: .zip

Change History (14)

Changed 3 years ago by dsteck

config.log for first problem

Changed 3 years ago by dsteck

config.log for second problem

comment:1 Changed 3 years ago by dsteck

Description: modified (diff)

comment:2 Changed 3 years ago by kencu (Ken)

autoconf was updated a few days ago after about 8 years, and adds the gtkdocize problem.

We may see 1000 ports that need gtk-doc added as a build dep. Or perhaps we sort out how to add it to autoconf directly, but unfortunately at present there is a circular dependency issue (gtk-doc depends on glib2 which depends on autoconf which (maybe) depends on gtk-doc). There is another ticket tracking this issue.

For now you can activate the previous autoconf to get rid of this particular headache until more ports are fixed.

no idea about the cpp issue, but I would not be surprised if that also comes from the new autoconf.

We have only just begun to feel the pain coming from this autoconf upgrade I fear...

comment:3 Changed 3 years ago by jmroot (Joshua Root)

Cc: devans@… removed
Owner: set to dbevans
Status: newassigned

No need to be dramatic, Ken. The change only affects ports that have a configure script that uses the GTK_DOC_CHECK macro, are running autoreconf, and specify the -i/--install option. There are only around 180 ports that could possibly be affected based on the latter two conditions. Of those, only the gnome-related ones are likely to actually be using GTK_DOC_CHECK.

If completely regenerating the build system is desired, adding the dependency is correct. If not, autoreconf -fvi isn't the command you're looking for, and either not using -i or only running a subset of the commands that autoreconf would run is the appropriate approach.

Last edited 3 years ago by jmroot (Joshua Root) (previous) (diff)

comment:4 Changed 3 years ago by dsteck

Thanks for the info Ken and Joshua, and sorry to hear that a lot of maintenance work may lie ahead. That explains why I didn't have any trouble building this port a few weeks ago (I assumed it was related to the Xcode update). I'll leave it to people wiser than me to decide how to best deal with the issues here...

comment:5 Changed 3 years ago by dsteck

Description: modified (diff)

comment:6 in reply to:  3 Changed 3 years ago by kencu (Ken)

Replying to jmroot:

No need to be dramatic, Ken.

Thanks, Josh. I guess we'll see, as time goes by.

comment:7 Changed 3 years ago by michaelld (Michael Dickens)

I just bumped into this issue when working on https://trac.macports.org/ticket/62391 ... reverting the "autoconf" port did the trick to unblock for what I need here. Seems like some pretty specific conditions need to be met for the issue to be present, yet even 180 ports will induce some reasonable pain! I'm glad y'all are on top of this issue, and I hope it's fixed expeditiously :)

comment:8 Changed 3 years ago by jmroot (Joshua Root)

Cc: michaelld added

You're likely in a better position to see if gobject-introspection works correctly after changes than I am, Michael—would you mind checking if it really needs a full autoreconf, or if use_autoconf plus use_automake is sufficient? If not, try autoreconf.args -fv (i.e. remove the -i)?

comment:9 Changed 3 years ago by jmroot (Joshua Root)

Try this for the CPP issue:

  • configure.ac

    old new  
    4848# Checks for programs.
    4949AC_PROG_CC
    5050AM_PROG_CC_C_O
     51AC_PROG_CPP
    5152AC_PROG_MKDIR_P
    5253
    5354# Initialize libtool

comment:10 Changed 3 years ago by michaelld (Michael Dickens)

@jmroot: this last change works nicely & makes a lot of sense. Seems like an oversight on the part of the upstream project: the function AM_CHECK_PYTHON_HEADERS calls a project-internal script m4/python.m4 where CPP is required in AC_TRY_CPP, but neither script actually checks for AC_PROG_CPP as you added there.

comment:11 Changed 3 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: assignedclosed

In c8fd287b58e089ee06fb0e12aa141d8c7169cc44/macports-ports (master):

gobject-introspection: fix configure failure

Closes: #62428

comment:12 Changed 3 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In fa4675525fb6dde4832fb9adc8419268af94858c/macports-ports (master):

seed: fix configure failure

For a similar problem, see #62428

Note: See TracTickets for help on using tickets.