Opened 10 years ago

Closed 10 years ago

#41859 closed defect (fixed)

exo @0.3.107: build fails when libnotify is active

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: afb@…
Priority: Normal Milestone:
Component: ports Version: 2.1.99
Keywords: haspatch Cc: diekhans (Mark Diekhans), dbevans (David B. Evans)
Port: exo

Description

exo 0.3.107 fails to build for me on Mavericks when libnotify is active:

main.c:246:71: error: too many arguments to function call, expected 3, have 4
  notification = notify_notification_new (summary, message, opt_icon, NULL);
                 ~~~~~~~~~~~~~~~~~~~~~~~                              ^~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.0/include/stddef.h:74:16: note: expanded from macro 'NULL'
#  define NULL ((void*)0)
               ^~~~~~~~~~
/opt/local/include/libnotify/notification.h:114:1: note: 'notify_notification_new' declared here
NotifyNotification *notify_notification_new                  (const char         *summary,
^
1 error generated.

notification.h is provided by libnotify:

$ port provides /opt/local/include/libnotify/notification.h
/opt/local/include/libnotify/notification.h is provided by: libnotify
$ port -v installed libnotify
The following ports are currently installed:
  libnotify @0.7.6_0+universal (active) platform='darwin 13' archs='i386 x86_64'

libnofity is not in exo's dependencies:

$ port rdeps exo | grep libnotify

exo installs fine if I deactivate libnotify first. exo should either indicate this build conflict with the conflicts_build portgroup or should be fixed to install correctly even if libnotify is installed.

Attachments (2)

main.log (262.2 KB) - added by ryandesign (Ryan Carsten Schmidt) 10 years ago.
patch-exo.diff (730 bytes) - added by dbevans (David B. Evans) 10 years ago.
Proposed patch for review

Download all attachments as: .zip

Change History (7)

Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log added

comment:1 Changed 10 years ago by diekhans (Mark Diekhans)

Cc: markd@… added

Cc Me!

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

This is not really a conflict but opportunistic configuration. exo will configure to provide notifications by default if libnotify is available. Unfortunately it uses the old pre 0.7 API causing the build failure.

Solution is to either update the port to use the current libnotify API or disable notifications. Attached is a patch that does the latter.

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

Attachment: patch-exo.diff added

Proposed patch for review

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

Keywords: haspatch added

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

Cc: devans@… added

Cc Me!

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

Resolution: fixed
Status: newclosed

Patch committed, maintainer timeout, to fix build in r118145 but port really should be updated to a more current version, see #41860.

Note: See TracTickets for help on using tickets.