From owner-svn-ports-all@freebsd.org Sun Feb 23 07:21:52 2020 Return-Path: Delivered-To: svn-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0F48025B78D; Sun, 23 Feb 2020 07:21:52 +0000 (UTC) (envelope-from tcberner@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48QGpl5zN5z3QXb; Sun, 23 Feb 2020 07:21:51 +0000 (UTC) (envelope-from tcberner@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9418B8CC8; Sun, 23 Feb 2020 07:21:51 +0000 (UTC) (envelope-from tcberner@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 01N7Lpc1019213; Sun, 23 Feb 2020 07:21:51 GMT (envelope-from tcberner@FreeBSD.org) Received: (from tcberner@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 01N7LofD019207; Sun, 23 Feb 2020 07:21:50 GMT (envelope-from tcberner@FreeBSD.org) Message-Id: <202002230721.01N7LofD019207@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tcberner set sender to tcberner@FreeBSD.org using -f From: "Tobias C. Berner" Date: Sun, 23 Feb 2020 07:21:50 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r526881 - in head/misc: . biblesync X-SVN-Group: ports-head X-SVN-Commit-Author: tcberner X-SVN-Commit-Paths: in head/misc: . biblesync X-SVN-Commit-Revision: 526881 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Feb 2020 07:21:52 -0000 Author: tcberner Date: Sun Feb 23 07:21:50 2020 New Revision: 526881 URL: https://svnweb.freebsd.org/changeset/ports/526881 Log: New port: misc/biblesync: Multicast shared co-navigation library for Bible programs This is a C++ single class library encapsulating a protocol conduit. The premise is that there is a local network over which to multicast Bible navigation, and someone, possibly several someones, will transmit, and others will receive. The choices for when you decide to xmit and what to do when you recv are up to you as the application designer. Access to the conduit is by creating the object, setting the mode, calling Transmit() to xmit nav events, and arranging the frequent polling of Receive() to recv nav events. There is more than just navigation to be handled; there are live/dead events for potential Speakers as well as mismatches, presence announcements, and errors. There is a programming reference biblesync.7 which explains the details, both from a high level view of the essentials of the protocol's behavior and at a low level of how you create, access, and use the conduit class. The (single) BibleSync object should persist throughout the life of your application, but at any time you can set the mode to "disable," and preferably stop the receive polling, and then re-enable it later as the user needs. Much work has been done in integrating this library into its first application, Xiphos. It is useful to examine Xiphos' code to see where and how integration has been done. Get a Xiphos source tree using: git clone https://github.com/crosswire/xiphos WWW: https://github.com/karlkleinpaste/biblesync PR: 243916 Submitted by: salvadore Added: head/misc/biblesync/ head/misc/biblesync/Makefile (contents, props changed) head/misc/biblesync/distinfo (contents, props changed) head/misc/biblesync/pkg-descr (contents, props changed) head/misc/biblesync/pkg-plist (contents, props changed) Modified: head/misc/Makefile Modified: head/misc/Makefile ============================================================================== --- head/misc/Makefile Sun Feb 23 07:18:01 2020 (r526880) +++ head/misc/Makefile Sun Feb 23 07:21:50 2020 (r526881) @@ -25,6 +25,7 @@ SUBDIR += bible-kjv SUBDIR += bibletime SUBDIR += biblical-curse + SUBDIR += biblesync SUBDIR += binclock SUBDIR += biosfont-demos SUBDIR += birthday Added: head/misc/biblesync/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/misc/biblesync/Makefile Sun Feb 23 07:21:50 2020 (r526881) @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PORTNAME= biblesync +DISTVERSION= 2.0.1 +CATEGORIES= misc + +MAINTAINER= salvadore@FreeBSD.org +COMMENT= Multicast shared co-navigation library for Bible programs + +LICENSE= PD +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS= libuuid.so:misc/e2fsprogs-libuuid + +USES= cmake gettext-runtime + +USE_GCC= yes + +USE_GITHUB= yes +GH_ACCOUNT= karlkleinpaste + +USE_LDCONFIG= yes + +CMAKE_ON= BUILD_SHARED_LIBS + +post-patch: + ${REINPLACE_CMD} s,/bibleysnc,, ${WRKSRC}/biblesync.pc.in + +post-install: + ${INSTALL_MAN} ${STAGEDIR}${PREFIX}/share/man/man7/biblesync.7 ${STAGEDIR}${MAN7PREFIX}/man/man7 + ${RM} -R ${STAGEDIR}${PREFIX}/share/man + +.include Added: head/misc/biblesync/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/misc/biblesync/distinfo Sun Feb 23 07:21:50 2020 (r526881) @@ -0,0 +1,3 @@ +TIMESTAMP = 1580898650 +SHA256 (karlkleinpaste-biblesync-2.0.1_GH0.tar.gz) = 953eed0b0ee7e4f8c6c34f7871babed26f03049e4dad5fc222fe3a65811a4d16 +SIZE (karlkleinpaste-biblesync-2.0.1_GH0.tar.gz) = 89139 Added: head/misc/biblesync/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/misc/biblesync/pkg-descr Sun Feb 23 07:21:50 2020 (r526881) @@ -0,0 +1,24 @@ +This is a C++ single class library encapsulating a protocol conduit. The +premise is that there is a local network over which to multicast Bible +navigation, and someone, possibly several someones, will transmit, and others +will receive. The choices for when you decide to xmit and what to do when you +recv are up to you as the application designer. + +Access to the conduit is by creating the object, setting the mode, calling +Transmit() to xmit nav events, and arranging the frequent polling of Receive() +to recv nav events. There is more than just navigation to be handled; there +are live/dead events for potential Speakers as well as mismatches, presence +announcements, and errors. There is a programming reference biblesync.7 which +explains the details, both from a high level view of the essentials of the +protocol's behavior and at a low level of how you create, access, and use the +conduit class. The (single) BibleSync object should persist throughout the +life of your application, but at any time you can set the mode to "disable," +and preferably stop the receive polling, and then re-enable it later as the +user needs. + +Much work has been done in integrating this library into its first application, +Xiphos. It is useful to examine Xiphos' code to see where and how integration +has been done. Get a Xiphos source tree using: +git clone https://github.com/crosswire/xiphos + +WWW: https://github.com/karlkleinpaste/biblesync Added: head/misc/biblesync/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/misc/biblesync/pkg-plist Sun Feb 23 07:21:50 2020 (r526881) @@ -0,0 +1,6 @@ +include/biblesync/biblesync-version.hh +include/biblesync/biblesync.hh +lib/libbiblesync.so +lib/libbiblesync.so.2.0.1 +libdata/pkgconfig/biblesync.pc +man/man7/biblesync.7.gz