summaryrefslogtreecommitdiff
path: root/sysutils/dbus
diff options
context:
space:
mode:
authordrochner <drochner@pkgsrc.org>2008-06-13 11:28:35 +0000
committerdrochner <drochner@pkgsrc.org>2008-06-13 11:28:35 +0000
commitd42c6e47c6a024e84b2b9055301111a5610ce3ef (patch)
tree8e592402e873fb54ce9e3928e8c8aece66aa142e /sysutils/dbus
parentc628b7b1b40a4b44cb953b93b94c92f69a8d87c1 (diff)
downloadpkgsrc-d42c6e47c6a024e84b2b9055301111a5610ce3ef.tar.gz
update to 1.2.1, mostly from Blair Sadewitz
There is some stuff in the pkg which is not completed or doesn't work yet, as support for NetBSD's new atomic increment ops, but this is not essential. It is a good moment to do the update right now because gtk2 was just updated, and there is just enough time before the next branch. This is a major update, too many changes to list here.
Diffstat (limited to 'sysutils/dbus')
-rw-r--r--sysutils/dbus/Makefile81
-rw-r--r--sysutils/dbus/PLIST7
-rw-r--r--sysutils/dbus/distinfo18
-rw-r--r--sysutils/dbus/options.mk32
-rw-r--r--sysutils/dbus/patches/patch-aa43
-rw-r--r--sysutils/dbus/patches/patch-ab164
-rw-r--r--sysutils/dbus/patches/patch-ac243
-rw-r--r--sysutils/dbus/patches/patch-ag6
-rw-r--r--sysutils/dbus/patches/patch-ah50
-rw-r--r--sysutils/dbus/patches/patch-ai13
10 files changed, 398 insertions, 259 deletions
diff --git a/sysutils/dbus/Makefile b/sysutils/dbus/Makefile
index 314b0c80d86..fa057a71e7c 100644
--- a/sysutils/dbus/Makefile
+++ b/sysutils/dbus/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.28 2008/04/30 13:38:16 jmmv Exp $
+# $NetBSD: Makefile,v 1.29 2008/06/13 11:28:35 drochner Exp $
#
-DISTNAME= dbus-1.0.2
-PKGREVISION= 5
+DISTNAME= dbus-1.2.1
CATEGORIES= sysutils
MASTER_SITES= http://dbus.freedesktop.org/releases/dbus/
@@ -21,48 +20,50 @@ USE_LIBTOOL= YES
PKGCONFIG_OVERRIDE= dbus-1.pc.in
-CONFIGURE_ARGS+= --disable-abstract-sockets
-CONFIGURE_ARGS+= --disable-ansi
-CONFIGURE_ARGS+= --disable-asserts
-CONFIGURE_ARGS+= --disable-console-owner-file
-CONFIGURE_ARGS+= --disable-dnotify
-CONFIGURE_ARGS+= --disable-doxygen-docs
-CONFIGURE_ARGS+= --disable-gcov
-CONFIGURE_ARGS+= --disable-selinux
-CONFIGURE_ARGS+= --disable-tests
-CONFIGURE_ARGS+= --disable-verbose-mode
-CONFIGURE_ARGS+= --disable-xml-docs
-CONFIGURE_ARGS+= --enable-checks
+PKG_DESTDIR_SUPPORT= user-destdir
+
+.include "../../mk/bsd.prefs.mk"
+
CONFIGURE_ARGS+= --localstatedir=${VARBASE:Q}
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
-CONFIGURE_ARGS+= --with-xml=expat
-CONFIGURE_ARGS+= --with-dbus-user=${DBUS_USER}
-PKG_OPTIONS_VAR= PKG_OPTIONS.dbus
-PKG_SUPPORTED_OPTIONS+= debug nox11
+#CFLAGS.NetBSD+= -D_NETBSD_SOURCE
-.include "../../mk/bsd.options.mk"
+CONFIGURE_ARGS_GROUPS= enable disable with without
-.if !empty(PKG_OPTIONS:Mdebug)
-CONFIGURE_ARGS+= --enable-asserts
-CONFIGURE_ARGS+= --enable-tests
-CONFIGURE_ARGS+= --enable-verbose-mode
-.endif
+CONFIGURE_ARGS.Linux= abstract-sockets dnotify selinux
+CONFIGURE_ARGS.docs= doxygen-docs xml-docs
+
+CONFIGURE_ARGS.disable= ansi asserts gcov tests
+CONFIGURE_ARGS.disable+= console-owner-file verbose-mode
+CONFIGURE_ARGS.disable+= ${CONFIGURE_ARGS.docs}
+CONFIGURE_ARGS.enable= checks static
+
+CONFIGURE_ARGS.with= dbus-user=${DBUS_USER}
+CONFIGURE_ARGS.with+= test-socket-dir=${WRKDIR:Q}
+CONFIGURE_ARGS.with+= xml=expat
-.if !empty(PKG_OPTIONS:Mnox11)
-CONFIGURE_ARGS+= --without-x
-.else
-.include "../../x11/libX11/buildlink3.mk"
+PTHREAD_AUTO_VARS= yes
+
+.if ${OPSYS} != "Linux"
+CONFIGURE_ARGS.disable+=\
+ ${CONFIGURE_ARGS.Linux}
.endif
-PKG_SYSCONFSUBDIR= dbus-1
-MAKE_DIRS= ${PKG_SYSCONFDIR}/event.d
-MAKE_DIRS+= ${PKG_SYSCONFDIR}/system.d
+CONFIGURE_ARGS+=\
+ ${CONFIGURE_ARGS_GROUPS:@.g.@ \
+ ${CONFIGURE_ARGS.${.g.}:@.a.@ \
+ --${.g.}-${.a.} \
+ @} \
+ @:M*}
+
+MAKE_DIRS= ${PKG_SYSCONFDIR}/dbus-1/event.d
+MAKE_DIRS+= ${PKG_SYSCONFDIR}/dbus-1/system.d
+MAKE_DIRS+= ${PKG_SYSCONFDIR}/dbus-1/session.d
EGDIR= ${PREFIX}/share/examples/dbus
-CONF_FILES= ${EGDIR}/session.conf ${PKG_SYSCONFDIR}/session.conf
-CONF_FILES+= ${EGDIR}/system.conf ${PKG_SYSCONFDIR}/system.conf
-INSTALLATION_DIRS= ${EGDIR}
+CONF_FILES= ${EGDIR}/session.conf ${PKG_SYSCONFDIR}/dbus-1/session.conf
+CONF_FILES+= ${EGDIR}/system.conf ${PKG_SYSCONFDIR}/dbus-1/system.conf
RCD_SCRIPTS= dbus
@@ -77,6 +78,16 @@ PKG_HOME.${DBUS_USER}= ${VARBASE}/run/dbus
FILES_SUBST+= DBUS_USER=${DBUS_USER}
FILES_SUBST+= DBUS_GROUP=${DBUS_GROUP}
+
+.include "options.mk"
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/bus/rc.messagebus \
+ ${DESTDIR}${PREFIX}/share/examples/rc.d/rc.messagebus.slackware
+ ${INSTALL_DATA} ${WRKSRC}/bus/messagebus \
+ ${DESTDIR}${PREFIX}/share/examples/rc.d/messagebus.redhat
+
+.include "../../mk/pthread.buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../textproc/expat/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/sysutils/dbus/PLIST b/sysutils/dbus/PLIST
index 7fe65ba366f..0bf34ea8f34 100644
--- a/sysutils/dbus/PLIST
+++ b/sysutils/dbus/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2006/12/17 15:39:33 jmmv Exp $
+@comment $NetBSD: PLIST,v 1.10 2008/06/13 11:28:35 drochner Exp $
bin/dbus-cleanup-sockets
bin/dbus-daemon
bin/dbus-launch
@@ -24,6 +24,7 @@ include/dbus-1.0/dbus/dbus.h
lib/dbus-1.0/include/dbus/dbus-arch-deps.h
lib/libdbus-1.la
lib/pkgconfig/dbus-1.pc
+libexec/dbus-daemon-launch-helper
man/man1/dbus-cleanup-sockets.1
man/man1/dbus-daemon.1
man/man1/dbus-launch.1
@@ -36,9 +37,13 @@ share/examples/rc.d/dbus
share/examples/rc.d/messagebus.redhat
share/examples/rc.d/rc.messagebus.slackware
@dirrm share/examples/dbus
+@exec ${MKDIR} %D/share/dbus-1/system-services
+@dirrm share/dbus-1/system-services
@exec ${MKDIR} %D/share/dbus-1/services
@dirrm share/dbus-1/services
@dirrm share/dbus-1
+@exec ${MKDIR} %D/libexec/dbus-1
+@dirrm libexec/dbus-1
@dirrm lib/dbus-1.0/include/dbus
@dirrm lib/dbus-1.0/include
@dirrm lib/dbus-1.0
diff --git a/sysutils/dbus/distinfo b/sysutils/dbus/distinfo
index 5fcfacff2dc..738dcb5ebaf 100644
--- a/sysutils/dbus/distinfo
+++ b/sysutils/dbus/distinfo
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.20 2008/03/02 13:21:07 drochner Exp $
+$NetBSD: distinfo,v 1.21 2008/06/13 11:28:35 drochner Exp $
-SHA1 (dbus-1.0.2.tar.gz) = 2870efd6ea0b5b0d14e52195f560238a74bb1e0e
-RMD160 (dbus-1.0.2.tar.gz) = d5eddfb058c4c026d4a9f091ad90abcc6e54861a
-Size (dbus-1.0.2.tar.gz) = 1400278 bytes
-SHA1 (patch-aa) = 71c903a268e8ece66c39f48937c9544b7c82d1b3
-SHA1 (patch-ab) = 2fce79e3114fa5f345094e61d2513a9eb232c57a
-SHA1 (patch-ac) = eae0564535d36cb0082dd2e66d74fea808800d4e
-SHA1 (patch-ag) = 469993db97a74da50c61449454c02c8a7c69e7bd
-SHA1 (patch-ah) = db8ce2de1f1f9aa06804eacb9a7f264eb3187f36
+SHA1 (dbus-1.2.1.tar.gz) = 2c5b38d51b486e0143faf7749d298e07a8c71223
+RMD160 (dbus-1.2.1.tar.gz) = 88b20e16251e10e205fece57e6b434a7aa43b615
+Size (dbus-1.2.1.tar.gz) = 1406833 bytes
+SHA1 (patch-aa) = e527a1a1f937781ce4204a325e3ff7f31fd6afa8
+SHA1 (patch-ab) = 20253f9730a1bd1e233240e6374e30e7fe0586c8
+SHA1 (patch-ac) = afec419973f339e846dc109866148529f80998b3
+SHA1 (patch-ag) = 9539b91fb496681b03854ebdc698b53ae43e6ba6
+SHA1 (patch-ai) = 046f3a78c465b28595abf278aac942f7f0d0a297
diff --git a/sysutils/dbus/options.mk b/sysutils/dbus/options.mk
new file mode 100644
index 00000000000..65aa47d82ba
--- /dev/null
+++ b/sysutils/dbus/options.mk
@@ -0,0 +1,32 @@
+# $NetBSD: options.mk,v 1.1 2008/06/13 11:28:35 drochner Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.dbus
+PKG_SUPPORTED_OPTIONS+= debug kqueue nox11
+PKG_SUGGESTED_OPTIONS= # empty
+
+.if (${OPSYS} == "NetBSD" || \
+ ${OPSYS} == "FreeBSD" || \
+ ${OPSYS} == "OpenBSD")
+PKG_SUGGESTED_OPTIONS+= kqueue
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mdebug)
+CONFIGURE_ARGS.enable+= asserts tests verbose-mode
+.endif
+
+.if !empty(PKG_OPTIONS:Mkqueue)
+CONFIGURE_ARGS.enable+= kqueue
+.else
+CONFIGURE_ARGS.disable+= kqueue
+.endif
+
+.if !empty(PKG_OPTIONS:Mnox11)
+CONFIGURE_ARGS.without= x
+.else
+CONFIGURE_ARGS.with+= x
+. include "../../x11/libX11/buildlink3.mk"
+BUILDLINK_DEPMETHOD.libXt= build
+. include "../../x11/libXt/buildlink3.mk"
+.endif
diff --git a/sysutils/dbus/patches/patch-aa b/sysutils/dbus/patches/patch-aa
index 4ca16e49453..9a3c7ea0648 100644
--- a/sysutils/dbus/patches/patch-aa
+++ b/sysutils/dbus/patches/patch-aa
@@ -1,42 +1,23 @@
-$NetBSD: patch-aa,v 1.6 2006/12/17 15:39:33 jmmv Exp $
+$NetBSD: patch-aa,v 1.7 2008/06/13 11:28:35 drochner Exp $
---- bus/Makefile.in.orig 2006-12-12 20:41:47.000000000 +0100
+--- bus/Makefile.in.orig 2008-02-26 13:36:18.000000000 -0500
+++ bus/Makefile.in
-@@ -305,11 +305,11 @@ target_alias = @target_alias@
- target_cpu = @target_cpu@
- target_os = @target_os@
+@@ -411,7 +411,7 @@ target_os = @target_os@
target_vendor = @target_vendor@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
-configdir = $(sysconfdir)/dbus-1
+configdir = $(datadir)/examples/@PACKAGE@
- INCLUDES = -I$(top_srcdir) $(DBUS_BUS_CFLAGS) \
- -DDAEMON_NAME=\"dbus-daemon\" -DDBUS_COMPILATION \
-- -DDBUS_SYSTEM_CONFIG_FILE=\""$(configdir)/system.conf"\" \
-- -DDBUS_SESSION_CONFIG_FILE=\""$(configdir)/session.conf"\"
-+ -DDBUS_SYSTEM_CONFIG_FILE=\""$(sysconfdir)/system.conf"\" \
-+ -DDBUS_SESSION_CONFIG_FILE=\""$(sysconfdir)/session.conf"\"
-
- EFENCE =
- CONFIG_IN_FILES = \
-@@ -390,6 +390,13 @@ SCRIPT_IN_FILES = messagebus.in \
- @DBUS_INIT_SCRIPTS_SLACKWARE_TRUE@initd_SCRIPTS = \
- @DBUS_INIT_SCRIPTS_SLACKWARE_TRUE@ rc.messagebus
-
-+initddir = $(datadir)/examples/rc.d
-+initd_SCRIPTS = messagebus.redhat rc.messagebus.slackware
-+messagebus.redhat: messagebus
-+ cp messagebus messagebus.redhat
-+rc.messagebus.slackware: rc.messagebus
-+ cp rc.messagebus rc.messagebus.slackware
-+
- MAN_IN_FILES = dbus-daemon.1.in
- man_MANS = dbus-daemon.1
-
-@@ -858,8 +865,6 @@ install-data-hook:
+ INCLUDES = -I$(top_srcdir) $(DBUS_BUS_CFLAGS) @PIE_CFLAGS@ \
+ -DDBUS_SYSTEM_CONFIG_FILE=\""$(configdir)/system.conf"\" \
+ -DDAEMON_NAME=\"dbus-daemon\" -DDBUS_COMPILATION
+@@ -1291,9 +1291,6 @@ install-data-hook:
chmod 755 $(DESTDIR)$(DBUS_DAEMONDIR); \
fi
$(INSTALL_PROGRAM) dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
- $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus
- $(mkinstalldirs) $(DESTDIR)$(configdir)/system.d
+- $(mkinstalldirs) $(DESTDIR)$(configdir)/session.d
$(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
+ $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/system-services
+ $(mkinstalldirs) $(DESTDIR)$(libexecdir)/dbus-1
diff --git a/sysutils/dbus/patches/patch-ab b/sysutils/dbus/patches/patch-ab
index b5a76d6ed20..574379c6bb3 100644
--- a/sysutils/dbus/patches/patch-ab
+++ b/sysutils/dbus/patches/patch-ab
@@ -1,126 +1,64 @@
-$NetBSD: patch-ab,v 1.9 2008/02/21 01:42:13 tnn Exp $
+$NetBSD: patch-ab,v 1.10 2008/06/13 11:28:35 drochner Exp $
---- dbus/dbus-sysdeps-unix.c.orig 2006-12-11 14:21:09.000000000 -0500
+--- dbus/dbus-sysdeps-unix.c.orig 2008-04-04 11:24:08.000000000 -0400
+++ dbus/dbus-sysdeps-unix.c
-@@ -22,6 +22,10 @@
- *
- */
+@@ -35,6 +35,9 @@
+ #include "dbus-list.h"
+ #include "dbus-credentials.h"
-+#ifdef __NetBSD__
-+#define _NETBSD_SOURCE
++#ifdef DBUS_USE_NETBSD_ATOMIC_OPS
++#include <sys/atomic.h>
+#endif
-+
- #include "dbus-internals.h"
- #include "dbus-sysdeps.h"
- #include "dbus-sysdeps-unix.h"
-@@ -67,6 +71,10 @@
- #include <ucred.h>
- #endif
-
-+#ifdef __NetBSD__
-+#include <sys/un.h>
+ #include <sys/types.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -786,7 +789,9 @@ _dbus_connect_tcp_socket (const char
+ fprintf(stderr, "Family %s\n", family ? family : "none");
+ hints.ai_protocol = IPPROTO_TCP;
+ hints.ai_socktype = SOCK_STREAM;
++#ifdef AI_ADDRCONFIG
+ hints.ai_flags = AI_ADDRCONFIG;
+#endif
-+
- #ifndef O_BINARY
- #define O_BINARY 0
- #endif
-@@ -75,6 +83,33 @@
- #define socklen_t int
- #endif
-+#ifdef LOCAL_PEEREID
-+static dbus_bool_t
-+dbus_nb_getpeereid(int fd, pid_t *pid, uid_t *uid, gid_t *gid)
-+{
-+ struct unpcbid cred;
-+ socklen_t len = sizeof(cred);
-+
-+ _dbus_verbose ("dbus_nb_getpeereid: enter, fd=%d\n", fd);
-+
-+ if (getsockopt(fd, 0, LOCAL_PEEREID, &cred, &len) < 0)
-+ {
-+ _dbus_verbose ("dbus_nb_getpeereid: getsockopt LOCAL_PEEREID failed: %s\n", strerror(errno));
-+ return FALSE;
-+ }
-+ if (pid)
-+ *pid = cred.unp_pid;
-+ if (uid)
-+ *uid = cred.unp_euid;
-+ if (gid)
-+ *gid = cred.unp_egid;
-+
-+ _dbus_verbose ("dbus_nb_getpeereid: returning TRUE, pid=%d uid=%d gid=%d\n",
-+ cred.unp_pid, cred.unp_euid, cred.unp_egid);
-+ return TRUE;
-+}
+ if ((res = getaddrinfo(host, port, &hints, &ai)) != 0)
+ {
+@@ -889,7 +894,11 @@ _dbus_listen_tcp_socket (const char
+
+ hints.ai_protocol = IPPROTO_TCP;
+ hints.ai_socktype = SOCK_STREAM;
++#ifdef AI_ADDRCONFIG
+ hints.ai_flags = AI_ADDRCONFIG | AI_PASSIVE;
++#else
++ hints.ai_flags = AI_PASSIVE;
+#endif
-+
- static dbus_bool_t
- _dbus_open_socket (int *fd,
- int domain,
-@@ -517,7 +552,7 @@ _dbus_set_local_creds (int fd, dbus_bool
- {
- dbus_bool_t retval = TRUE;
--#if defined(HAVE_CMSGCRED)
-+#if defined(HAVE_CMSGCRED) || defined(LOCAL_PEEREID)
- /* NOOP just to make sure only one codepath is used
- * and to prefer CMSGCRED
- */
-@@ -955,7 +990,7 @@ _dbus_read_credentials_unix_socket (int
- msg.msg_iov = &iov;
- msg.msg_iovlen = 1;
+ redo_lookup_with_port:
+ if ((res = getaddrinfo(host, port, &hints, &ai)) != 0 || !ai)
+@@ -1753,7 +1762,19 @@ _dbus_parse_uid (const DBusString *
+ return TRUE;
+ }
--#if defined(HAVE_CMSGCRED) || defined(LOCAL_CREDS)
-+#if (defined(HAVE_CMSGCRED) || defined(LOCAL_CREDS)) && !defined(LOCAL_PEEREID)
- memset (&cmsg, 0, sizeof (cmsg));
- msg.msg_control = &cmsg;
- msg.msg_controllen = sizeof (cmsg);
-@@ -980,7 +1015,7 @@ _dbus_read_credentials_unix_socket (int
- return FALSE;
- }
++#ifdef DBUS_USE_NETBSD_ATOMIC_OPS
++dbus_int32_t
++_dbus_atomic_inc (DBusAtomic *atomic)
++{
++ return (atomic_inc_32_nv(DBusAtomic));
++}
--#if defined(HAVE_CMSGCRED) || defined(LOCAL_CREDS)
-+#if (defined(HAVE_CMSGCRED) || defined(LOCAL_CREDS)) && !defined(LOCAL_PEEREID)
- if (cmsg.hdr.cmsg_len < sizeof (cmsg) || cmsg.hdr.cmsg_type != SCM_CREDS)
- {
- dbus_set_error (error, DBUS_ERROR_FAILED,
-@@ -1012,6 +1047,19 @@ _dbus_read_credentials_unix_socket (int
- credentials->pid = cmsg.cred.cmcred_pid;
- credentials->uid = cmsg.cred.cmcred_euid;
- credentials->gid = cmsg.cred.cmcred_groups[0];
-+#elif defined(LOCAL_PEEREID)
-+ pid_t sockpid, sockuid, sockgid;
-+ if (dbus_nb_getpeereid(client_fd, &sockpid, &sockuid, &sockgid) == TRUE)
-+ {
-+ credentials->pid = sockpid;
-+ credentials->uid = sockuid;
-+ credentials->gid = sockgid;
-+ }
-+ else
-+ {
-+ _dbus_verbose ("Failed to dbus_nb_getpeereid() credentials\n");
-+ }
-+
- #elif defined(LOCAL_CREDS)
- credentials->pid = DBUS_PID_UNSET;
- credentials->uid = cmsg.cred.sc_uid;
-@@ -2311,8 +2359,18 @@ int
- _dbus_printf_string_upper_bound (const char *format,
- va_list args)
- {
-+#if defined(__hpux) || defined(__sgi)
-+/* this code from libnbcompat's vsnprintf */
-+ static FILE *devnull = 0;
-+ if (!devnull) {
-+ devnull = fopen("/dev/null", "w");
-+ if (!devnull) return -1;
-+ }
-+ return vfprintf(devnull, format, args);
++dbus_int32_t
++_dbus_atomic_dec (DBusAtomic *atomic)
++{
++ return (atomic_dec_32_nv(DBusAtomic));
++}
+#else
- char c;
- return vsnprintf (&c, 1, format, args);
-+#endif
+ _DBUS_DEFINE_GLOBAL_LOCK (atomic);
+
+ #if DBUS_USE_ATOMIC_INT_486_COND
+@@ -1818,6 +1839,7 @@ _dbus_atomic_dec (DBusAtomic *atomic)
+ return res;
+ #endif
}
++#endif /* DBUS_USE_NETBSD_ATOMIC_OPS */
- /**
+ #ifdef DBUS_BUILD_TESTS
+ /** Gets our GID
diff --git a/sysutils/dbus/patches/patch-ac b/sysutils/dbus/patches/patch-ac
index af03718f9f5..71533a45902 100644
--- a/sysutils/dbus/patches/patch-ac
+++ b/sysutils/dbus/patches/patch-ac
@@ -1,20 +1,229 @@
-$NetBSD: patch-ac,v 1.7 2006/12/12 13:45:07 dmcmahill Exp $
+$NetBSD: patch-ac,v 1.8 2008/06/13 11:28:35 drochner Exp $
-https://bugs.freedesktop.org/show_bug.cgi?id=9280
-
---- tools/run-with-tmp-session-bus.sh.orig 2006-10-01 05:18:47.000000000 +0200
-+++ tools/run-with-tmp-session-bus.sh
-@@ -38,9 +38,11 @@ if ! test -e "$DBUS_TOP_BUILDDIR"/bus/db
- die "$DBUS_TOP_BUILDDIR/bus/dbus-daemon does not exist"
- fi
+--- configure.orig 2008-04-04 14:23:44.000000000 -0400
++++ configure
+@@ -5996,6 +5996,224 @@ esac
+
+ need_locks="$enable_libtool_lock"
+
++if test "${ac_cv_header_sys_atomic_h+set}" = set; then
++ { echo "$as_me:$LINENO: checking for sys/atomic.h" >&5
++echo $ECHO_N "checking for sys/atomic.h... $ECHO_C" >&6; }
++if test "${ac_cv_header_sys_atomic_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_atomic_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_atomic_h" >&6; }
++else
++ # Is the header compilable?
++{ echo "$as_me:$LINENO: checking sys/atomic.h usability" >&5
++echo $ECHO_N "checking sys/atomic.h usability... $ECHO_C" >&6; }
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++#include <sys/atomic.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (ac_try="$ac_compile"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
++ (eval "$ac_compile") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && {
++ test -z "$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ } && test -s conftest.$ac_objext; then
++ ac_header_compiler=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_compiler=no
++fi
++
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6; }
++
++# Is the header present?
++{ echo "$as_me:$LINENO: checking sys/atomic.h presence" >&5
++echo $ECHO_N "checking sys/atomic.h presence... $ECHO_C" >&6; }
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <sys/atomic.h>
++_ACEOF
++if { (ac_try="$ac_cpp conftest.$ac_ext"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
++ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null && {
++ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ }; then
++ ac_header_preproc=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_preproc=no
++fi
++
++rm -f conftest.err conftest.$ac_ext
++{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6; }
++
++# So? What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++ yes:no: )
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: sys/atomic.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: sys/atomic.h: proceeding with the compiler's result" >&2;}
++ ac_header_preproc=yes
++ ;;
++ no:yes:* )
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: sys/atomic.h: present but cannot be compiled" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: sys/atomic.h: check for missing prerequisite headers?" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: sys/atomic.h: see the Autoconf documentation" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: sys/atomic.h: section \"Present But Cannot Be Compiled\"" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: sys/atomic.h: proceeding with the preprocessor's result" >&2;}
++ { echo "$as_me:$LINENO: WARNING: sys/atomic.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: sys/atomic.h: in the future, the compiler will take precedence" >&2;}
++
++ ;;
++esac
++{ echo "$as_me:$LINENO: checking for sys/atomic.h" >&5
++echo $ECHO_N "checking for sys/atomic.h... $ECHO_C" >&6; }
++if test "${ac_cv_header_sys_atomic_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_header_sys_atomic_h=$ac_header_preproc
++fi
++{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_atomic_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_atomic_h" >&6; }
++
++fi
++if test $ac_cv_header_sys_atomic_h = yes; then
++ { echo "$as_me:$LINENO: checking for atomic_inc_32_nv" >&5
++echo $ECHO_N "checking for atomic_inc_32_nv... $ECHO_C" >&6; }
++if test "${ac_cv_func_atomic_inc_32_nv+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++/* Define atomic_inc_32_nv to an innocuous variant, in case <limits.h> declares atomic_inc_32_nv.
++ For example, HP-UX 11i <limits.h> declares gettimeofday. */
++#define atomic_inc_32_nv innocuous_atomic_inc_32_nv
++
++/* System header to define __stub macros and hopefully few prototypes,
++ which can conflict with char atomic_inc_32_nv (); below.
++ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++ <limits.h> exists even on freestanding compilers. */
++
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++
++#undef atomic_inc_32_nv
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char atomic_inc_32_nv ();
++/* The GNU C library defines this for functions which it implements
++ to always fail with ENOSYS. Some functions are actually named
++ something starting with __ and the normal name is an alias. */
++#if defined __stub_atomic_inc_32_nv || defined __stub___atomic_inc_32_nv
++choke me
++#endif
++
++int
++main ()
++{
++return atomic_inc_32_nv ();
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (ac_try="$ac_link"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
++ (eval "$ac_link") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && {
++ test -z "$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ } && test -s conftest$ac_exeext &&
++ $as_test_x conftest$ac_exeext; then
++ ac_cv_func_atomic_inc_32_nv=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_cv_func_atomic_inc_32_nv=no
++fi
++
++rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
++ conftest$ac_exeext conftest.$ac_ext
++fi
++{ echo "$as_me:$LINENO: result: $ac_cv_func_atomic_inc_32_nv" >&5
++echo "${ECHO_T}$ac_cv_func_atomic_inc_32_nv" >&6; }
++if test $ac_cv_func_atomic_inc_32_nv = yes; then
++
++cat >>confdefs.h <<\_ACEOF
++#define HAVE_NETBSD_ATOMIC_OPS 1
++_ACEOF
++
++fi
++
++fi
++
++
--export PATH="$DBUS_TOP_BUILDDIR"/bus:$PATH
-+PATH="$DBUS_TOP_BUILDDIR"/bus:$PATH
-+export PATH
- ## the libtool script found by the path search should already do this, but
--export LD_LIBRARY_PATH=$DBUS_TOP_BUILDDIR/dbus/.libs:$LD_LIBRARY_PATH
-+LD_LIBRARY_PATH=$DBUS_TOP_BUILDDIR/dbus/.libs:$LD_LIBRARY_PATH
-+export LD_LIBRARY_PATH
+ # On IRIX 5.3, sys/types and inttypes.h are conflicting.
- unset DBUS_SESSION_BUS_ADDRESS
- unset DBUS_SESSION_BUS_PID
diff --git a/sysutils/dbus/patches/patch-ag b/sysutils/dbus/patches/patch-ag
index 0ca91e08552..6b4d1dda5f0 100644
--- a/sysutils/dbus/patches/patch-ag
+++ b/sysutils/dbus/patches/patch-ag
@@ -1,8 +1,8 @@
-$NetBSD: patch-ag,v 1.1 2006/11/13 15:16:20 drochner Exp $
+$NetBSD: patch-ag,v 1.2 2008/06/13 11:28:35 drochner Exp $
---- tools/dbus-monitor.c.orig 2006-11-09 00:10:48.000000000 +0100
+--- tools/dbus-monitor.c.orig 2008-02-26 11:02:28.000000000 -0500
+++ tools/dbus-monitor.c
-@@ -265,8 +265,10 @@ main (int argc, char *argv[])
+@@ -295,8 +295,10 @@ main (int argc, char *argv[])
exit (1);
}
diff --git a/sysutils/dbus/patches/patch-ah b/sysutils/dbus/patches/patch-ah
deleted file mode 100644
index a180258b98a..00000000000
--- a/sysutils/dbus/patches/patch-ah
+++ /dev/null
@@ -1,50 +0,0 @@
-$NetBSD: patch-ah,v 1.1 2008/03/02 13:21:07 drochner Exp $
-
---- bus/policy.c.orig 2006-12-11 20:21:22.000000000 +0100
-+++ bus/policy.c
-@@ -931,9 +931,19 @@ bus_client_policy_check_can_send (BusCli
-
- if (rule->d.send.interface != NULL)
- {
-- if (dbus_message_get_interface (message) != NULL &&
-- strcmp (dbus_message_get_interface (message),
-- rule->d.send.interface) != 0)
-+ /* The interface is optional in messages. For allow rules, if the message
-+ * has no interface we want to skip the rule (and thus not allow);
-+ * for deny rules, if the message has no interface we want to use the
-+ * rule (and thus deny).
-+ */
-+ dbus_bool_t no_interface;
-+
-+ no_interface = dbus_message_get_interface (message) == NULL;
-+
-+ if ((no_interface && rule->allow) ||
-+ (!no_interface &&
-+ strcmp (dbus_message_get_interface (message),
-+ rule->d.send.interface) != 0))
- {
- _dbus_verbose (" (policy) skipping rule for different interface\n");
- continue;
-@@ -1117,9 +1127,19 @@ bus_client_policy_check_can_receive (Bus
-
- if (rule->d.receive.interface != NULL)
- {
-- if (dbus_message_get_interface (message) != NULL &&
-- strcmp (dbus_message_get_interface (message),
-- rule->d.receive.interface) != 0)
-+ /* The interface is optional in messages. For allow rules, if the message
-+ * has no interface we want to skip the rule (and thus not allow);
-+ * for deny rules, if the message has no interface we want to use the
-+ * rule (and thus deny).
-+ */
-+ dbus_bool_t no_interface;
-+
-+ no_interface = dbus_message_get_interface (message) == NULL;
-+
-+ if ((no_interface && rule->allow) ||
-+ (!no_interface &&
-+ strcmp (dbus_message_get_interface (message),
-+ rule->d.receive.interface) != 0))
- {
- _dbus_verbose (" (policy) skipping rule for different interface\n");
- continue;
diff --git a/sysutils/dbus/patches/patch-ai b/sysutils/dbus/patches/patch-ai
new file mode 100644
index 00000000000..255e09fbc41
--- /dev/null
+++ b/sysutils/dbus/patches/patch-ai
@@ -0,0 +1,13 @@
+$NetBSD: patch-ai,v 1.1 2008/06/13 11:28:35 drochner Exp $
+
+--- config.h.in.orig 2008-04-04 14:24:08.000000000 -0400
++++ config.h.in
+@@ -86,6 +86,8 @@
+ for 486, else 0 */
+ #undef DBUS_USE_ATOMIC_INT_486_COND
+
++#undef DBUS_USE_NETBSD_ATOMIC_OPS
++
+ /* A 'va_copy' style function */
+ #undef DBUS_VA_COPY
+