pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
dbus-dfbsd: Replace dbus adding FreeBSD DragonFly fixes
Module Name: pkgsrc-wip
Committed By: David Shao <davshao%gmail.com@localhost>
Pushed By: dshao
Date: Tue Jan 17 00:01:42 2017 -0800
Changeset: d1696f41107de413e6a01330cb93caef6f7a254e
Modified Files:
Makefile
Added Files:
dbus-dfbsd/DESCR
dbus-dfbsd/INSTALL
dbus-dfbsd/MESSAGE
dbus-dfbsd/MESSAGE.launchd
dbus-dfbsd/Makefile
dbus-dfbsd/PLIST
dbus-dfbsd/TODO
dbus-dfbsd/buildlink3.mk
dbus-dfbsd/distinfo
dbus-dfbsd/files/dbus.sh
dbus-dfbsd/files/smf/dbus.sh
dbus-dfbsd/files/smf/manifest.xml
dbus-dfbsd/hacks.mk
dbus-dfbsd/options.mk
dbus-dfbsd/patches/patch-ak
dbus-dfbsd/patches/patch-al
dbus-dfbsd/patches/patch-am
dbus-dfbsd/patches/patch-dbus_dbus-sysdeps-util-unix.c
dbus-dfbsd/patches/patch-tools_dbus-print-message.c
Log Message:
dbus-dfbsd: Replace dbus adding FreeBSD DragonFly fixes
FreeBSD and DragonFly changes discussed in pkg/50075
(Making dbus actually work on FreeBSD, DragonFly, and probably more)
Generated dbus script can be copied to /etc/rc.d/ and started with
dbus_enable=YES
in /etc/rc.conf
User can specify owner, group, and pidfile name in etc/mk.conf
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=d1696f41107de413e6a01330cb93caef6f7a254e
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
dbus-dfbsd/DESCR | 12 +++
dbus-dfbsd/INSTALL | 9 ++
dbus-dfbsd/MESSAGE | 17 ++++
dbus-dfbsd/MESSAGE.launchd | 20 ++++
dbus-dfbsd/Makefile | 112 +++++++++++++++++++++
dbus-dfbsd/PLIST | 64 ++++++++++++
dbus-dfbsd/TODO | 6 ++
dbus-dfbsd/buildlink3.mk | 21 ++++
dbus-dfbsd/distinfo | 11 ++
dbus-dfbsd/files/dbus.sh | 41 ++++++++
dbus-dfbsd/files/smf/dbus.sh | 40 ++++++++
dbus-dfbsd/files/smf/manifest.xml | 46 +++++++++
dbus-dfbsd/hacks.mk | 4 +
dbus-dfbsd/options.mk | 65 ++++++++++++
dbus-dfbsd/patches/patch-ak | 15 +++
dbus-dfbsd/patches/patch-al | 27 +++++
dbus-dfbsd/patches/patch-am | 28 ++++++
.../patches/patch-dbus_dbus-sysdeps-util-unix.c | 57 +++++++++++
.../patches/patch-tools_dbus-print-message.c | 16 +++
20 files changed, 612 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index a3a29d0..77cba04 100644
--- a/Makefile
+++ b/Makefile
@@ -463,6 +463,7 @@ SUBDIR+= dates
SUBDIR+= davical-git
SUBDIR+= db1
SUBDIR+= dbf
+SUBDIR+= dbus-dfbsd
SUBDIR+= dbus-explorer
SUBDIR+= ddate
SUBDIR+= deadbeef
diff --git a/dbus-dfbsd/DESCR b/dbus-dfbsd/DESCR
new file mode 100644
index 0000000..2a2988e
--- /dev/null
+++ b/dbus-dfbsd/DESCR
@@ -0,0 +1,12 @@
+D-BUS is a message bus, used for sending messages between applications.
+Conceptually, it fits somewhere in between raw sockets and CORBA in terms
+of complexity.
+
+D-BUS supports broadcast messages, asynchronous messages (thus decreasing
+latency), authentication, and more. It is designed to be low-overhead;
+messages are sent using a binary protocol, not using XML. D-BUS also
+supports a method call mapping for its messages, but it is not required;
+this makes using the system quite simple.
+
+This package provides the D-BUS core library and daemon, as well as
+some utilities that complement it.
diff --git a/dbus-dfbsd/INSTALL b/dbus-dfbsd/INSTALL
new file mode 100644
index 0000000..a4c44cd
--- /dev/null
+++ b/dbus-dfbsd/INSTALL
@@ -0,0 +1,9 @@
+# $NetBSD: INSTALL,v 1.1 2008/09/24 11:37:31 taca Exp $
+
+DBUS_UUIDGEN="@PREFIX@/bin/dbus-uuidgen"
+
+case ${STAGE} in
+POST-INSTALL)
+ ${DBUS_UUIDGEN} --ensure
+ ;;
+esac
diff --git a/dbus-dfbsd/MESSAGE b/dbus-dfbsd/MESSAGE
new file mode 100644
index 0000000..ca65271
--- /dev/null
+++ b/dbus-dfbsd/MESSAGE
@@ -0,0 +1,17 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.2 2014/12/02 05:20:24 snj Exp $
+
+You should enable the dbus system-wide daemon for correct operation. You
+can do this by using one of the three start-up scripts installed by the
+package. Use:
+
+* ${PREFIX}/share/examples/rc.d/dbus:
+ if you are using NetBSD's and pkgsrc's rc.subr start-up framework.
+
+* ${PREFIX}/share/examples/rc.d/messagebus.redhat:
+ if you are using a Red-Hat based system (such as Fedora).
+
+* ${PREFIX}/share/examples/rc.d/rc.messagebus.slackware:
+ if you are using a Slackware-like system.
+
+===========================================================================
diff --git a/dbus-dfbsd/MESSAGE.launchd b/dbus-dfbsd/MESSAGE.launchd
new file mode 100644
index 0000000..12285e3
--- /dev/null
+++ b/dbus-dfbsd/MESSAGE.launchd
@@ -0,0 +1,20 @@
+===========================================================================
+$NetBSD: MESSAGE.launchd,v 1.1 2015/01/21 05:38:59 pho Exp $
+
+A launchd agent configuration file has been installed at:
+ ${PREFIX}/Library/LaunchAgents/org.freedesktop.dbus-session.plist
+
+You need to manually load it to auto-start a session bus. Without
+loading it, no applications can start a bus nor find an existing one:
+ % sudo launchctl load \
+ ${PREFIX}/Library/LaunchAgents/org.freedesktop.dbus-session.plist
+
+Or alternatively, you can copy it under the system default path to
+automatically load it on system boot:
+ % sudo cp \
+ ${PREFIX}/Library/LaunchAgents/org.freedesktop.dbus-session.plist \
+ /Library/LaunchAgents/
+ % sudo launchctl load \
+ /Library/LaunchAgents/org.freedesktop.dbus-session.plist
+
+===========================================================================
diff --git a/dbus-dfbsd/Makefile b/dbus-dfbsd/Makefile
new file mode 100644
index 0000000..609eaa7
--- /dev/null
+++ b/dbus-dfbsd/Makefile
@@ -0,0 +1,112 @@
+# $NetBSD: Makefile,v 1.104 2016/12/12 13:57:44 wiz Exp $
+
+DISTNAME= dbus-1.10.14
+CATEGORIES= sysutils
+MASTER_SITES= http://dbus.freedesktop.org/releases/dbus/
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= http://www.freedesktop.org/Software/dbus
+COMMENT= Message bus system
+LICENSE= gnu-gpl-v2
+
+CONFLICTS+= dbus-glib<0.71
+CONFLICTS+= py27-dbus<0.71
+
+BUILD_DEPENDS+= xmlto-[0-9]*:../../textproc/xmlto
+
+GNU_CONFIGURE= YES
+USE_TOOLS+= gmake msgfmt pkg-config
+USE_LIBTOOL= YES
+
+PKGCONFIG_OVERRIDE= dbus-1.pc.in
+
+BUILD_DEFS+= VARBASE PKG SYSCONFBASE DBUS_USER DBUS_GROUP DBUS_SYSTEM_PID_FILE
+
+OWN_DIRS_PERMS+= ${VARBASE}/db/dbus ${DBUS_USER} ${DBUS_GROUP} 0755
+SPECIAL_PERMS+= libexec/dbus-daemon-launch-helper ${REAL_ROOT_USER} ${DBUS_GROUP} 4511
+
+SMF_METHODS= dbus
+SMF_NAME= dbus
+
+MESSAGE_SRC+= MESSAGE
+
+.include "../../mk/bsd.prefs.mk"
+
+CONFIGURE_ARGS+= --localstatedir=${VARBASE:Q}
+
+# Prevent the configure script from picking up a per-user tmp
+# directory. See the commit message on revision 1.35
+CONFIGURE_ARGS+= --with-session-socket-dir=/tmp
+
+CONFIGURE_ARGS+= --without-init-scripts
+CONFIGURE_ARGS+= --disable-ansi
+CONFIGURE_ARGS+= --disable-console-owner-file
+CONFIGURE_ARGS+= --disable-doxygen-docs
+CONFIGURE_ARGS+= --enable-checks
+CONFIGURE_ARGS+= --enable-static
+
+###
+### XXX the spawn test hangs, and some of these tests may be bogus
+###
+#.if !empty(PKGSRC_RUN_TEST:M[Yy][Ee][Ss])
+#PKG_OPTIONS.dbus+= debug
+#TEST_TARGET= check
+#.endif
+
+CONFIGURE_ARGS+= --with-dbus-user=${DBUS_USER}
+CONFIGURE_ARGS+= --with-test-socket-dir=${WRKDIR:Q}
+CONFIGURE_ARGS+= --with-system-pid-file=${VARBASE}/run/dbus/${DBUS_SYSTEM_PID_FILE}
+
+PTHREAD_AUTO_VARS= yes
+
+.if ${OPSYS} == "Linux"
+PLIST.linux= yes
+.else
+CONFIGURE_ARGS+= --disable-abstract-sockets
+CONFIGURE_ARGS+= --disable-selinux
+.endif
+
+PLIST_VARS+= linux launchd
+
+DBUS_CONF_DIR= ${PKG_SYSCONFBASE}/dbus-1
+OWN_DIRS+= ${DBUS_CONF_DIR}/services
+OWN_DIRS+= ${DBUS_CONF_DIR}/system-services
+OWN_DIRS+= ${DBUS_CONF_DIR}/session.d
+OWN_DIRS+= ${DBUS_CONF_DIR}/system.d
+
+RCD_SCRIPTS= dbus
+
+PKG_GROUPS_VARS+= DBUS_GROUP
+PKG_USERS_VARS+= DBUS_USER
+
+PKG_GROUPS= ${DBUS_GROUP}
+PKG_USERS= ${DBUS_USER}:${DBUS_GROUP}
+PKG_GECOS.${DBUS_USER}= System message bus
+# Modern dbus does not need a home directory for its user
+# Or should this be moved to being an option?
+# PKG_HOME.${DBUS_USER}= ${VARBASE}/run/dbus
+
+FILES_SUBST+= DBUS_USER_SH=${DBUS_USER}
+FILES_SUBST+= DBUS_GROUP_SH=${DBUS_GROUP}
+FILES_SUBST+= DBUS_SYSTEM_PID_FILE_SH=${DBUS_SYSTEM_PID_FILE}
+
+BUILDLINK_TRANSFORM+= rm:-Wl,--gc-sections
+# Package tries to use these if gcc accepts them, but that doesn't
+# mean that we universally can *run* the executables
+BUILDLINK_TRANSFORM+= rm:-fPIE
+BUILDLINK_TRANSFORM+= rm:-pie
+
+BUILDLINK_TRANSFORM.OpenBSD+= rm:-lrt
+
+.include "options.mk"
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/doc/introspect.* \
+ ${DESTDIR}${PREFIX}/share/doc/dbus/
+ ${RM} -f ${DESTDIR}${PREFIX}/etc/dbus-1/s*.conf
+ ${RMDIR} ${DESTDIR}${PREFIX}/etc/dbus-1 || ${TRUE}
+
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/dbus-dfbsd/PLIST b/dbus-dfbsd/PLIST
new file mode 100644
index 0000000..9f2d075
--- /dev/null
+++ b/dbus-dfbsd/PLIST
@@ -0,0 +1,64 @@
+@comment $NetBSD: PLIST,v 1.20 2015/08/30 15:08:00 wiz Exp $
+${PLIST.launchd}Library/LaunchAgents/org.freedesktop.dbus-session.plist
+bin/dbus-cleanup-sockets
+bin/dbus-daemon
+bin/dbus-launch
+bin/dbus-monitor
+bin/dbus-run-session
+bin/dbus-send
+bin/dbus-test-tool
+bin/dbus-update-activation-environment
+bin/dbus-uuidgen
+include/dbus-1.0/dbus/dbus-address.h
+include/dbus-1.0/dbus/dbus-bus.h
+include/dbus-1.0/dbus/dbus-connection.h
+include/dbus-1.0/dbus/dbus-errors.h
+include/dbus-1.0/dbus/dbus-macros.h
+include/dbus-1.0/dbus/dbus-memory.h
+include/dbus-1.0/dbus/dbus-message.h
+include/dbus-1.0/dbus/dbus-misc.h
+include/dbus-1.0/dbus/dbus-pending-call.h
+include/dbus-1.0/dbus/dbus-protocol.h
+include/dbus-1.0/dbus/dbus-server.h
+include/dbus-1.0/dbus/dbus-shared.h
+include/dbus-1.0/dbus/dbus-signature.h
+include/dbus-1.0/dbus/dbus-syntax.h
+include/dbus-1.0/dbus/dbus-threads.h
+include/dbus-1.0/dbus/dbus-types.h
+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
+man/man1/dbus-monitor.1
+man/man1/dbus-run-session.1
+man/man1/dbus-send.1
+man/man1/dbus-test-tool.1
+man/man1/dbus-update-activation-environment.1
+man/man1/dbus-uuidgen.1
+share/dbus-1/session.conf
+share/dbus-1/system.conf
+share/doc/dbus/dbus-cleanup-sockets.1.html
+share/doc/dbus/dbus-daemon.1.html
+share/doc/dbus/dbus-faq.html
+share/doc/dbus/dbus-launch.1.html
+share/doc/dbus/dbus-monitor.1.html
+share/doc/dbus/dbus-run-session.1.html
+share/doc/dbus/dbus-send.1.html
+share/doc/dbus/dbus-specification.html
+share/doc/dbus/dbus-test-plan.html
+share/doc/dbus/dbus-test-tool.1.html
+share/doc/dbus/dbus-tutorial.html
+share/doc/dbus/dbus-update-activation-environment.1.html
+share/doc/dbus/dbus-uuidgen.1.html
+share/doc/dbus/diagram.png
+share/doc/dbus/diagram.svg
+share/doc/dbus/examples/GetAllMatchRules.py
+share/doc/dbus/examples/example-session-disable-stats.conf
+share/doc/dbus/examples/example-system-enable-stats.conf
+share/doc/dbus/introspect.dtd
+share/doc/dbus/introspect.xsl
+share/doc/dbus/system-activation.txt
diff --git a/dbus-dfbsd/TODO b/dbus-dfbsd/TODO
new file mode 100644
index 0000000..c3e18fe
--- /dev/null
+++ b/dbus-dfbsd/TODO
@@ -0,0 +1,6 @@
+Copy port to sysutils/dbus, do not install from wip.
+
+FreeBSD and DragonFly changes discussed in
+pkg/50075 (Making dbus actually work on FreeBSD, DragonFly, and
+ probably more)
+implemented.
diff --git a/dbus-dfbsd/buildlink3.mk b/dbus-dfbsd/buildlink3.mk
new file mode 100644
index 0000000..7584389
--- /dev/null
+++ b/dbus-dfbsd/buildlink3.mk
@@ -0,0 +1,21 @@
+# $NetBSD: buildlink3.mk,v 1.16 2014/01/29 13:01:53 ryoon Exp $
+
+BUILDLINK_TREE+= dbus
+
+.if !defined(DBUS_BUILDLINK3_MK)
+DBUS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.dbus+= dbus>=0.91
+BUILDLINK_PKGSRCDIR.dbus?= ../../sysutils/dbus
+
+.if defined(USE_DBUS-ARCH-DEPS_H)
+. if !empty(USE_DBUS-ARCH-DEPS_H:M[yY][eE][sS])
+BUILDLINK_INCDIRS.dbus+= lib/dbus-1.0/include/dbus
+BUILDLINK_FNAME_TRANSFORM.dbus+= -e "s|lib/dbus-1.0/||"
+. endif
+.endif
+
+.include "../../textproc/expat/buildlink3.mk"
+.endif # DBUS_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -dbus
diff --git a/dbus-dfbsd/distinfo b/dbus-dfbsd/distinfo
new file mode 100644
index 0000000..d2b6cbb
--- /dev/null
+++ b/dbus-dfbsd/distinfo
@@ -0,0 +1,11 @@
+$NetBSD: distinfo,v 1.77 2016/12/12 13:57:44 wiz Exp $
+
+SHA1 (dbus-1.10.14.tar.gz) = ea9efcf5439b53c3bdcabf8efba838c783c3639d
+RMD160 (dbus-1.10.14.tar.gz) = 1d7143cb689a8d23faa964cda7b8d4b9d5badbde
+SHA512 (dbus-1.10.14.tar.gz) = 87eda0117ee5fd47952f37a227cc017acdaa174a28e59ecd0c9f2501ffd5d56d015865d472dd9a922d8a52184662bfebff86279eb7431d19583958dd9e4dae26
+Size (dbus-1.10.14.tar.gz) = 1985828 bytes
+SHA1 (patch-ak) = ebb0c291297577a9cff246e7bc71412bf6157254
+SHA1 (patch-al) = c70be84ae79698cc4d83087427646bfb0500f194
+SHA1 (patch-am) = ed334bc76911c9db9f5472c58fb762c56255c5b4
+SHA1 (patch-dbus_dbus-sysdeps-util-unix.c) = 9c967cdac585220a3e65443dc9642e7d4478567c
+SHA1 (patch-tools_dbus-print-message.c) = 96267d3cff2c5207911615735748ef81604a69ec
diff --git a/dbus-dfbsd/files/dbus.sh b/dbus-dfbsd/files/dbus.sh
new file mode 100644
index 0000000..6326425
--- /dev/null
+++ b/dbus-dfbsd/files/dbus.sh
@@ -0,0 +1,41 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: dbus.sh,v 1.10 2016/05/22 23:02:24 youri Exp $
+#
+# PROVIDE: dbus
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+. /etc/rc.subr
+
+name="dbus"
+rcvar="@DBUS_RCVAR@"
+command="@PREFIX@/bin/dbus-daemon"
+command_args="--system"
+pidfile="@VARBASE@/run/dbus/@DBUS_SYSTEM_PID_FILE_SH@"
+start_precmd="dbus_prestart"
+stop_postcmd="dbus_poststop"
+
+dbus_prestart() {
+ dbdir="@VARBASE@/db/dbus"
+ if @TEST@ ! -d $dbdir; then
+ @MKDIR@ $dbdir
+ fi
+ dir="@VARBASE@/run/dbus"
+ if @TEST@ ! -d $dir; then
+ @MKDIR@ $dir
+# On other systems /var/run/dbus root:wheel works fine
+# @CHMOD@ 0755 $dir
+# @CHOWN@ @DBUS_USER_SH@:@DBUS_GROUP_SH@ $dir
+ elif @TEST@ -f $pidfile; then
+ @RM@ -f $pidfile
+ fi
+ @PREFIX@/bin/dbus-uuidgen --ensure
+}
+
+dbus_poststop() {
+ @RM@ -f $pidfile
+}
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/dbus-dfbsd/files/smf/dbus.sh b/dbus-dfbsd/files/smf/dbus.sh
new file mode 100755
index 0000000..3128fe7
--- /dev/null
+++ b/dbus-dfbsd/files/smf/dbus.sh
@@ -0,0 +1,40 @@
+#!/sbin/sh
+
+. /lib/svc/share/smf_include.sh
+
+# SMF_FMRI is the name of the target service. This allows multiple instances
+# to use the same script.
+
+if [ ! -x @PREFIX@/bin/dbus-daemon ]; then
+ echo "@PREFIX@/bin/dbus-daemon not found or not executable"
+ exit $SMF_EXIT_ERR_FATAL
+fi
+
+if [ ! -f @VARBASE@/db/dbus/machine-id ]; then
+ @PREFIX@/bin/dbus-uuidgen --ensure
+fi
+pidfile="@VARBASE@/run/dbus/pid"
+case "$1" in
+'start')
+ dir="@VARBASE@/run/dbus"
+ if ! [ -d $dir ]; then
+ @MKDIR@ $dir
+ @CHMOD@ 0755 $dir
+ @CHOWN@ @DBUS_USER_SH@:@DBUS_GROUP_SH@ $dir
+ elif [ -f $pidfile ]; then
+ rm -f $pidfile
+ fi
+ @PREFIX@/bin/dbus-daemon --system
+ err=$?
+ if [ $err -ne 0 ]; then
+ echo "dbus failed to start: error $err"
+ exit $SMF_EXIT_ERR_FATAL
+ fi
+ ;;
+*)
+ echo "Usage: $0 { start }"
+ exit $SMF_EXIT_ERR_FATAL
+ ;;
+esac
+
+exit $SMF_EXIT_OK
diff --git a/dbus-dfbsd/files/smf/manifest.xml b/dbus-dfbsd/files/smf/manifest.xml
new file mode 100644
index 0000000..9293752
--- /dev/null
+++ b/dbus-dfbsd/files/smf/manifest.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<service_bundle type='manifest' name='export'>
+ <service
+ name='@SMF_PREFIX@/@SMF_NAME@'
+ type='service'
+ version='1'>
+ <create_default_instance enabled='false' />
+ <single_instance />
+ <dependency name='usr'
+ type='service'
+ grouping='require_all'
+ restart_on='none'>
+ <service_fmri value='svc:/system/filesystem/minimal' />
+ </dependency>
+ <exec_method
+ type='method'
+ name='start'
+ exec='@PREFIX@/@SMF_METHOD_FILE.dbus@ start'
+ timeout_seconds='30'>
+ <method_context>
+ <method_credential user='root' group='@DBUS_GROUP_SH@' />
+ </method_context>
+ </exec_method>
+ <exec_method
+ type='method'
+ name='stop'
+ exec=':kill'
+ timeout_seconds='30' />
+ <property_group name='startd' type='framework'>
+ <!-- sub-process core dumps shouldn't restart session -->
+ <propval name='ignore_error' type='astring'
+ value='core,signal' />
+ </property_group>
+ <template>
+ <common_name>
+ <loctext xml:lang='C'>
+ D-BUS message bus
+ </loctext>
+ </common_name>
+ <documentation>
+ <manpage title='dbus-daemon' section='1' manpath='@PREFIX@/@PKGMANDIR@'/>
+ </documentation>
+ </template>
+ </service>
+</service_bundle>
diff --git a/dbus-dfbsd/hacks.mk b/dbus-dfbsd/hacks.mk
new file mode 100644
index 0000000..0a0967a
--- /dev/null
+++ b/dbus-dfbsd/hacks.mk
@@ -0,0 +1,4 @@
+# $NetBSD: hacks.mk,v 1.3 2008/02/05 22:03:57 tnn Exp $
+
+# gcc 2.95 does not understand -Wfloat-equal
+BUILDLINK_TRANSFORM+= rm:-Wfloat-equal
diff --git a/dbus-dfbsd/options.mk b/dbus-dfbsd/options.mk
new file mode 100644
index 0000000..8f73d02
--- /dev/null
+++ b/dbus-dfbsd/options.mk
@@ -0,0 +1,65 @@
+# $NetBSD: options.mk,v 1.10 2016/02/26 10:24:12 jperkin Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.dbus
+PKG_SUPPORTED_OPTIONS+= debug x11 enable-in-rcvar
+PKG_SUGGESTED_OPTIONS= x11
+
+.if ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly"
+PKG_SUGGESTED_OPTIONS+= enable-in-rcvar
+.endif
+
+.if (${OPSYS} == "NetBSD" || \
+ ${OPSYS} == "FreeBSD" || \
+ ${OPSYS} == "OpenBSD" || \
+ ${OPSYS} == "Darwin" || \
+ ${OPSYS} == "DragonFly")
+PKG_SUPPORTED_OPTIONS+= kqueue
+PKG_SUGGESTED_OPTIONS+= kqueue
+.endif
+
+# We may want to make it SUGGESTED once we have a framework for
+# launchd support. See PR/49591.
+PKG_SUPPORTED_OPTIONS.Darwin+= launchd
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mdebug)
+CONFIGURE_ARGS+= --enable-asserts
+CONFIGURE_ARGS+= --enable-verbose-mode
+.else
+CONFIGURE_ARGS+= --disable-asserts
+CONFIGURE_ARGS+= --disable-verbose-mode
+.endif
+
+.if !empty(PKG_OPTIONS:Mkqueue)
+CONFIGURE_ARGS+= --enable-kqueue
+.else
+CONFIGURE_ARGS+= --disable-kqueue
+.endif
+
+.if !empty(PKG_OPTIONS:Mx11)
+CONFIGURE_ARGS+= --with-x
+. include "../../x11/libX11/buildlink3.mk"
+BUILDLINK_DEPMETHOD.libXt= build
+. include "../../x11/libXt/buildlink3.mk"
+.else
+CONFIGURE_ARGS= --without-x
+.endif
+
+.if !empty(PKG_OPTIONS:Mlaunchd)
+MESSAGE_SRC+= MESSAGE.launchd
+PLIST.launchd= yes
+CONFIGURE_ARGS+= --enable-launchd
+CONFIGURE_ARGS+= --with-launchd-agent-dir=${PREFIX}/Library/LaunchAgents
+.else
+CONFIGURE_ARGS+= --disable-launchd
+.endif
+
+
+.if !empty(PKG_OPTIONS:Menable-in-rcvar)
+DBUS_RCVAR= dbus_enable
+.else
+DBUS_RCVAR= dbus
+.endif
+
+FILES_SUBST+= DBUS_RCVAR=${DBUS_RCVAR}
diff --git a/dbus-dfbsd/patches/patch-ak b/dbus-dfbsd/patches/patch-ak
new file mode 100644
index 0000000..6947b58
--- /dev/null
+++ b/dbus-dfbsd/patches/patch-ak
@@ -0,0 +1,15 @@
+$NetBSD: patch-ak,v 1.5 2015/12/06 11:35:55 wiz Exp $
+
+Adapt path for pkgsrc.
+
+--- dbus/Makefile.in.orig 2015-08-25 15:52:09.000000000 +0000
++++ dbus/Makefile.in
+@@ -589,7 +589,7 @@ dbusdatadir = $(datadir)/dbus-1
+ AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) \
+ $(DBUS_STATIC_BUILD_CPPFLAGS) $(SYSTEMD_CFLAGS) \
+ $(VALGRIND_CFLAGS) -DDBUS_COMPILATION \
+- -DDBUS_MACHINE_UUID_FILE=\""$(localstatedir)/lib/dbus/machine-id"\" \
++ -DDBUS_MACHINE_UUID_FILE=\""$(localstatedir)/db/dbus/machine-id"\" \
+ -DDBUS_SYSTEM_CONFIG_FILE=\""$(dbusdatadir)/system.conf"\" \
+ -DDBUS_SESSION_CONFIG_FILE=\""$(dbusdatadir)/session.conf"\" \
+ $(NULL) $(am__append_2)
diff --git a/dbus-dfbsd/patches/patch-al b/dbus-dfbsd/patches/patch-al
new file mode 100644
index 0000000..b9fec8c
--- /dev/null
+++ b/dbus-dfbsd/patches/patch-al
@@ -0,0 +1,27 @@
+$NetBSD: patch-al,v 1.5 2015/12/06 11:35:55 wiz Exp $
+
+Adapt path for pkgsrc.
+
+--- tools/Makefile.in.orig 2015-07-21 16:32:32.000000000 +0000
++++ tools/Makefile.in
+@@ -428,7 +428,7 @@ AM_CPPFLAGS = \
+ $(DBUS_STATIC_BUILD_CPPFLAGS) \
+ $(DBUS_X_CFLAGS) \
+ -DDBUS_COMPILATION \
+- -DDBUS_MACHINE_UUID_FILE=\""$(localstatedir)/lib/dbus/machine-id"\" \
++ -DDBUS_MACHINE_UUID_FILE=\""$(localstatedir)/db/dbus/machine-id"\" \
+ $(NULL)
+
+
+@@ -847,9 +847,9 @@ uninstall-am: uninstall-binPROGRAMS
+ .PRECIOUS: Makefile
+
+
+-# create the /var/lib/dbus directory for dbus-uuidgen
++# create the /var/db/dbus directory for dbus-uuidgen
+ install-data-local:
+- $(MKDIR_P) $(DESTDIR)$(localstatedir)/lib/dbus
++ $(MKDIR_P) $(DESTDIR)$(localstatedir)/db/dbus
+
+ installcheck-local:
+ test -d $(DESTDIR)$(localstatedir)/lib/dbus
diff --git a/dbus-dfbsd/patches/patch-am b/dbus-dfbsd/patches/patch-am
new file mode 100644
index 0000000..d8292d2
--- /dev/null
+++ b/dbus-dfbsd/patches/patch-am
@@ -0,0 +1,28 @@
+$NetBSD: patch-am,v 1.2 2015/12/06 11:35:55 wiz Exp $
+
+on darwin configure script picks up private per-user tmp directory
+in /var/folders/xx/...+++... via the TMPDIR environment and cheerfully
+installs it in /usr/pkg/etc/dbus-1/session.conf meaning that only the
+user who installed the package will be able to write to that directory...
+except that dbus rejects directories with "+"'s in the filename so it
+won't work anyway. use configure --with-session-socket-dir=/tmp
+to work around this. found a description of this issue here:
+http://wiki.gnucash.org/wiki/MacOSX/Quartz in the
+"Running from the commandline" section.
+
+dbus also cannot cope with $DISPLAY containing "/" chars (like in
+darwin ... /tmp/launch-kcvznx/:0 ) so get rid of the ":" as described
+here:
+ https://trac.macports.org/attachment/ticket/16833/patch-dbus-launch-x11.c.diff
+
+--- tools/dbus-launch-x11.c.orig 2008-11-14 22:45:04.000000000 -0500
++++ tools/dbus-launch-x11.c 2008-11-14 22:45:44.000000000 -0500
+@@ -143,7 +143,7 @@
+ */
+ for (p = display; *p; ++p)
+ {
+- if (*p == ':')
++ if (*p == ':' || *p == '/')
+ *p = '_';
+ }
+
diff --git a/dbus-dfbsd/patches/patch-dbus_dbus-sysdeps-util-unix.c b/dbus-dfbsd/patches/patch-dbus_dbus-sysdeps-util-unix.c
new file mode 100644
index 0000000..85dc387
--- /dev/null
+++ b/dbus-dfbsd/patches/patch-dbus_dbus-sysdeps-util-unix.c
@@ -0,0 +1,57 @@
+$NetBSD: patch-dbus_dbus-sysdeps-util-unix.c,v 1.3 2014/09/13 09:47:11 richard Exp $
+
+add solaris specific console_user test
+
+--- dbus/dbus-sysdeps-util-unix.c.orig 2014-01-25 12:39:25.000000000 +0000
++++ dbus/dbus-sysdeps-util-unix.c
+@@ -54,6 +54,10 @@
+ #include <syslog.h>
+ #endif
+
++#if defined(__sun) && defined(__SVR4)
++#include <pwd.h>
++#endif
++
+ #ifdef HAVE_SYS_SYSLIMITS_H
+ #include <sys/syslimits.h>
+ #endif
+@@ -556,8 +560,31 @@ _dbus_user_at_console (const char *usern
+
+ DBusString u, f;
+ dbus_bool_t result;
++#if defined(__sun) && defined(__SVR4)
++ struct passwd *passwd_entry;
++#endif
+
+ result = FALSE;
++
++#if defined(__sun) && defined(__SVR4)
++ passwd_entry = getpwnam (username);
++ if (passwd_entry != NULL)
++ {
++ struct stat st;
++ uid_t uid;
++
++ uid = passwd_entry->pw_uid;
++
++ if (stat ("/dev/vt/console_user", &st) == 0 && st.st_uid == uid)
++ {
++ /*
++ * Owner is allowed to take over. Before we have real
++ * ownership in HAL, assume it's the console owner.
++ */
++ result = TRUE;
++ }
++ }
++#else
+ if (!_dbus_string_init (&f))
+ {
+ _DBUS_SET_OOM (error);
+@@ -582,6 +609,7 @@ _dbus_user_at_console (const char *usern
+
+ out:
+ _dbus_string_free (&f);
++#endif
+
+ return result;
+ }
diff --git a/dbus-dfbsd/patches/patch-tools_dbus-print-message.c b/dbus-dfbsd/patches/patch-tools_dbus-print-message.c
new file mode 100644
index 0000000..14ac515
--- /dev/null
+++ b/dbus-dfbsd/patches/patch-tools_dbus-print-message.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-tools_dbus-print-message.c,v 1.2 2015/12/06 11:35:55 wiz Exp $
+
+Fix build on NetBSD 5.x and 6.x.
+
+--- tools/dbus-print-message.c.orig 2015-10-07 20:10:37.000000000 +0000
++++ tools/dbus-print-message.c
+@@ -30,6 +30,9 @@
+ #include <sys/un.h>
+ #include <unistd.h>
+ #include <netinet/in.h>
++#ifdef __NetBSD__
++#include <netinet/in_systm.h>
++#endif
+ #include <netinet/ip.h>
+ #include <arpa/inet.h>
+ #endif
Home |
Main Index |
Thread Index |
Old Index