Opened 10 years ago

Closed 10 years ago

Last modified 8 months ago

#43804 closed enhancement (fixed)

girara @0.2.0 build fails on SL

Reported by: harciga Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: haspatch maintainer Cc: cooljeanius (Eric Gallager)
Port: girara

Description

Default compiler on SL fails to build the port #43794

Made a change so on SL and earlier macports-gcc-4.6 is used while disabling universal_variant. Unless somebody opens a ticket requesting +universal on those platforms I'll leave it at that.

Attachments (9)

Portfile-girara.diff (862 bytes) - added by harciga 10 years ago.
Portfile-girara.2.diff (898 bytes) - added by harciga 10 years ago.
patch-session.c.diff (1.2 KB) - added by harciga 10 years ago.
Portfile-girara.3.diff (987 bytes) - added by harciga 10 years ago.
patch-getline.h.diff (1.2 KB) - added by harciga 10 years ago.
patch-getline.c.diff (1.2 KB) - added by harciga 10 years ago.
patch-getdelim.h.diff (1.2 KB) - added by harciga 10 years ago.
patch-getdelim.c.diff (2.9 KB) - added by harciga 10 years ago.
Portfile-girara.4.diff (1.7 KB) - added by harciga 10 years ago.
diff against r120388

Download all attachments as: .zip

Change History (18)

Changed 10 years ago by harciga

Attachment: Portfile-girara.diff added

comment:1 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: haspatch maintainer added

Thanks but that is not the solution we would usually want to use.

We would want to use "compiler.blacklist" to specify the compilers that do not work for this port.

If none of the compilers in "compiler.fallback" work, additional compilers that work can be added to that list.

There is no need to increase the port's revision if this only fixes a build failure (as opposed to a runtime failure, for which a revision increase is necessary).

Changed 10 years ago by harciga

Attachment: Portfile-girara.2.diff added

comment:2 Changed 10 years ago by harciga

How about we just make sure to use a newer Xcode?

comment:3 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

The version of Xcode is not tied to the version of the Xcode command line tools in all cases. Users can forget to update one or the other. On Snow Leopard, although they are tied together, Xcode 3.2.6, which is the latest free version and therefore the recommended version for Snow Leopard, uses gcc-4.2; Xcode 4.x for Snow Leopard is not free, and can only be obtained by paying Apple for a developer membership. compiler.blacklist is the correct solution for this issue.

Changed 10 years ago by harciga

Attachment: patch-session.c.diff added

comment:4 Changed 10 years ago by harciga

This should fix the build on SL too, if it doesn't then I'll blacklist gcc < 4.6

Changed 10 years ago by harciga

Attachment: Portfile-girara.3.diff added

comment:5 Changed 10 years ago by dbevans (David B. Evans)

Most recent fix committed in r120388. This fixes the compiler issue but build still fails on SL as follows

ar rcs libgirara-gtk3.a callbacks.o commands.o completion.o config.o datastructures.o input-history-io.o input-history.o session.o settings.o shortcuts.o statusbar.o tabs.o utils.o
/usr/bin/gcc-4.2 -Wl,-dylib_install_name,/opt/local/lib/libgirara-gtk3.1.dylib -dynamiclib -current_version 1.1 -compatibility_version 1 -arch x86_64 -fPIC -fno-common -o libgirara-gtk3.1.1.dylib callbacks.o commands.o completion.o config.o datastructures.o input-history-io.o input-history.o session.o settings.o shortcuts.o statusbar.o tabs.o utils.o -L/opt/local/lib -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lm -lfontconfig -lfreetype -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl  -lm
Undefined symbols:
  "_getline", referenced from:
      _girara_file_read_line in utils.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libgirara-gtk3.so.1.1] Error 1
make: Leaving directory `/opt/local/var/macports/build/_opt_mports_dports_devel_girara/girara/work/girara-0.2.0'

Function getline() is not available on 10.6 and earlier (introduced in 10.7).

Buildbot log is here https://build.macports.org/builders/buildports-snowleopard-x86_64/builds/26605/steps/compile/logs/stdio/text

Last edited 10 years ago by dbevans (David B. Evans) (previous) (diff)

comment:6 Changed 10 years ago by dbevans (David B. Evans)

One way to fix this is illustrated here in port gnome-session.

Version 0, edited 10 years ago by dbevans (David B. Evans) (next)

Changed 10 years ago by harciga

Attachment: patch-getline.h.diff added

Changed 10 years ago by harciga

Attachment: patch-getline.c.diff added

Changed 10 years ago by harciga

Attachment: patch-getdelim.h.diff added

Changed 10 years ago by harciga

Attachment: patch-getdelim.c.diff added

Changed 10 years ago by harciga

Attachment: Portfile-girara.4.diff added

diff against r120388

comment:7 Changed 10 years ago by harciga

This should provide _getline for SL.

comment:8 Changed 10 years ago by dbevans (David B. Evans)

Resolution: fixed
Status: newclosed

getline patch committed in r120397, build on SL buildbot now successful.

comment:9 Changed 10 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

Note: See TracTickets for help on using tickets.