Add new port sysutils/replicant:

Replicant is a tool for creating replicated state machines.

WWW: https://github.com/rescrv/Replicant

PR:		ports/178665
Submitted by:	Veniamin Gvozdikov <g.veniamin@googlemail.com>
This commit is contained in:
Matthias Andree 2013-05-16 08:09:21 +00:00
parent 95d9f61c7f
commit 7cf4a76b15
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=318279
8 changed files with 106 additions and 0 deletions

View file

@ -773,6 +773,7 @@
SUBDIR += relpath
SUBDIR += rename
SUBDIR += reoback
SUBDIR += replicant
SUBDIR += respond
SUBDIR += retail
SUBDIR += rfstool

View file

@ -0,0 +1,38 @@
# Created by: Gvozdikov Veniamin <g.veniamin@googlemail.com>
# $FreeBSD$
PORTNAME= replicant
PORTVERSION= 0.2.1
CATEGORIES= sysutils
MASTER_SITES= http://hyperdex.org/src/
MAINTAINER= g.veniamin@googlemail.com
COMMENT= Replicant is a tool for creating replicated state machines
BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/libpo6.pc:${PORTSDIR}/devel/libpo6
LIB_DEPENDS= busybee:${PORTSDIR}/devel/busybee \
e:${PORTSDIR}/devel/libe \
glog:${PORTSDIR}/devel/glog \
leveldb:${PORTSDIR}/databases/leveldb \
popt:${PORTSDIR}/devel/popt
ONLY_FOR_ARCHS= amd64
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
CONFIGURE_ARGS= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
USES= pathfix pkgconfig
.include <bsd.port.pre.mk>
.if ${OSVERSION} < 90014 || !exists(clang++)
# newer GCC versions than 4.6 do not work; clang 3.1 seems fine;
# bug report to upstream at: <https://github.com/rescrv/po6/issues/5>
USE_GCC= 4.6
.else
CC= clang
CXX= clang++
CPP= clang-cpp
.endif
.include <bsd.port.post.mk>

View file

@ -0,0 +1,2 @@
SHA256 (replicant-0.2.1.tar.gz) = 1a2cc2b5eddf544ccef28efa44c659075612926ff6eb57aa32ae4c5d6ca0404c
SIZE (replicant-0.2.1.tar.gz) = 397446

View file

@ -0,0 +1,11 @@
--- Makefile.in.orig 2013-05-14 12:08:06.731909984 +0000
+++ Makefile.in 2013-05-14 12:08:13.759911180 +0000
@@ -497,7 +497,7 @@
daemon/object_manager.cc \
daemon/settings.cc
-replicant_daemon_LDADD = $(E_LIBS) $(BUSYBEE_LIBS) -lglog -lleveldb -ldl -lpthread libreplicant-state-machine.la
+replicant_daemon_LDADD = $(E_LIBS) $(BUSYBEE_LIBS) -lglog -lleveldb -lpthread libreplicant-state-machine.la
libreplicant_la_CXXFLAGS = $(CXXFLAGS) $(AM_CXXFLAGS)
libreplicant_la_SOURCES = \
common/bootstrap.cc \

View file

@ -0,0 +1,20 @@
--- common/packing.cc.orig 2013-05-14 11:51:52.766912852 +0000
+++ common/packing.cc 2013-05-14 11:56:57.204910871 +0000
@@ -50,7 +50,7 @@
rhs.pack(&sa, 0);
#ifdef _MSC_VER
memmove(data, &sa.sin6_addr.u.Byte, 16);
-#elif defined __APPLE__
+#elif defined __APPLE__ || defined __FreeBSD__
memmove(data, &sa.sin6_addr.__u6_addr.__u6_addr8, 16);
#else
memmove(data, &sa.sin6_addr.__in6_u.__u6_addr8, 16);
@@ -90,7 +90,7 @@
in6_addr ia;
#ifdef _MSC_VER
memmove(ia.u.Byte, rem.data(), 16);
-#elif defined __APPLE__
+#elif defined __APPLE__ || defined __FreeBSD__
memmove(ia.__u6_addr.__u6_addr8, rem.data(), 16);
#else
memmove(ia.__in6_u.__u6_addr8, rem.data(), 16);

View file

@ -0,0 +1,14 @@
--- daemon/object_manager.cc.orig 2013-05-14 11:57:51.191911826 +0000
+++ daemon/object_manager.cc 2013-05-14 12:00:23.328908089 +0000
@@ -60,7 +60,10 @@
#include "daemon/object_manager.h"
#include "daemon/replicant_state_machine.h"
#include "daemon/replicant_state_machine_context.h"
-#if defined __APPLE__
+#if defined __APPLE__ || defined __FreeBSD__
+#ifdef __FreeBSD__
+#include <sys/stat.h>
+#endif
#include "daemon/memstream.h"
#endif

View file

@ -0,0 +1,3 @@
Replicant is a tool for creating replicated state machines
WWW: https://github.com/rescrv/Replicant

View file

@ -0,0 +1,17 @@
bin/replicant
include/replicant.h
include/replicant_state_machine.h
lib/libreplicant-state-machine.a
lib/libreplicant-state-machine.la
lib/libreplicant-state-machine.so
lib/libreplicant-state-machine.so.0
lib/libreplicant.a
lib/libreplicant.la
lib/libreplicant.so
lib/libreplicant.so.0
libdata/pkgconfig/replicant.pc
libexec/replicant-0.2.1/replicant-daemon
libexec/replicant-0.2.1/replicant-del-object
libexec/replicant-0.2.1/replicant-new-object
libexec/replicant-0.2.1/replicant-repair
@dirrm libexec/replicant-0.2.1