diff options
author | drochner <drochner@pkgsrc.org> | 2008-06-13 11:28:35 +0000 |
---|---|---|
committer | drochner <drochner@pkgsrc.org> | 2008-06-13 11:28:35 +0000 |
commit | d42c6e47c6a024e84b2b9055301111a5610ce3ef (patch) | |
tree | 8e592402e873fb54ce9e3928e8c8aece66aa142e | |
parent | c628b7b1b40a4b44cb953b93b94c92f69a8d87c1 (diff) | |
download | pkgsrc-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.
-rw-r--r-- | sysutils/dbus/Makefile | 81 | ||||
-rw-r--r-- | sysutils/dbus/PLIST | 7 | ||||
-rw-r--r-- | sysutils/dbus/distinfo | 18 | ||||
-rw-r--r-- | sysutils/dbus/options.mk | 32 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-aa | 43 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-ab | 164 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-ac | 243 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-ag | 6 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-ah | 50 | ||||
-rw-r--r-- | sysutils/dbus/patches/patch-ai | 13 |
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 + |