Bug 26421

Summary: dbus 1.2.20 does not compile without kqueue/inotify/dnotify
Product: dbus Reporter: Brian Cameron <brian.cameron>
Component: coreAssignee: Havoc Pennington <hp>
Status: RESOLVED FIXED QA Contact: John (J5) Palmieri <johnp>
Severity: normal    
Priority: medium CC: walters
Version: unspecified   
Hardware: SPARC   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: patch fixing problem
updated patch

Description Brian Cameron 2010-02-03 15:22:39 UTC
Created attachment 33045 [details] [review]
patch fixing problem

On Solaris, the kqueue, inotify and dnotify interfaces are not yet supported.  So, the bus/Makefile.am uses bus/dir-watch-default.c.  The link fails because the
symbol bus_set_watched_dirs is missing.  The attached patch adds a stub for this function, which allows the build to complete.

Can this go upstream?
Comment 1 Colin Walters 2010-02-03 15:46:10 UTC
Hm, OK.  Note you should delete bus_drop_all_directory_watches since it isn't used anymore.  Can you make a patch that does that in "git am" format?

Do: 
$ git commit -a
$ git format-patch HEAD^

then attach the resultingfile.
Comment 2 Brian Cameron 2010-02-03 19:42:42 UTC
Created attachment 33049 [details] [review]
updated patch

Updated patch as requested.  I built 1.2.20 with a patch that adds the bus_set_watched_dirs stub function removes the bus_drop_all-directory_watches stub function from dir-watch-default.c and verified it also compiles okay.
Comment 3 Colin Walters 2010-02-18 07:42:06 UTC
Pushed to dbus-1.2, thanks!

Comment 4 Colin Walters 2010-02-18 07:44:00 UTC
I will say though that you *really* want to have a file monitoring backend if you're using DBus, otherwise installing new applications or services won't be noticed unless the bus is manually poked with SIGHUP.

(Which may be a viable mechanism given a sane uniform software installation system that could do so automatically, but...)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.