db: Add recipe for libdb 5.3.28

* Thanks to the original work of martinhpedersen
  in http://ports.haiku-files.org/ticket/548
This commit is contained in:
Alexander von Gluck IV
2013-11-30 00:09:15 -06:00
parent d32f571e6f
commit 997c9bfe4a
3 changed files with 297 additions and 0 deletions

View File

@@ -0,0 +1,88 @@
SUMMARY="The Oracle Berkeley Database"
DESCRIPTION="The Oracle Berkeley DB family of open source, embeddable databases provides developers with fast, reliable, local persistence with zero administration."
HOMEPAGE="http://www.oracle.com/technetwork/database/berkeleydb/index.html"
SRC_URI="http://download.oracle.com/berkeley-db/db-5.3.28.tar.gz"
CHECKSUM_MD5="b99454564d5b4479750567031d66fe24"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
LICENSE="SleepyCat"
COPYRIGHT="1990-2013, Oracle
1990-1995, The Regents of the University of California
1996-1996, The President and Fellows of Harvard University
2000-2005, INRIA - France Telecom"
PROVIDES="
db${secondaryArchSuffix} = $portVersion
cmd:db_archive
cmd:db_checkpoint
cmd:db_deadlock
cmd:db_dump
cmd:db_hotbackup
cmd:db_load
cmd:db_log_verify
cmd:db_printlog
cmd:db_recover
cmd:db_replicate
cmd:db_stat
cmd:db_tuner
cmd:db_upgrade
cmd:db_verify
lib:libdb_5.3
lib:libdb_5
lib:libdb
"
REQUIRES="
haiku${secondaryArchSuffix} >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:libtool
cmd:make
"
PATCHES="db-${portVersion}.patch"
SOURCE_DIR="db-${portVersion}"
BUILD()
{
cd build_unix
runConfigure ../dist/configure
make $jobArgs
}
INSTALL()
{
cd build_unix
make install
# prepare develop/lib
prepareInstalledDevelLibs libdb libdb-5.3
fixPkgconfig
# devel package
packageEntries devel \
$developDir
}
TEST()
{
cd build_unix
#make dbtest
}
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
db${secondaryArchSuffix}_devel = $portVersion
devel:libdb$secondaryArchSuffix = $portVersion
devel:libdb_5.3$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
db$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,130 @@
/*-
* $Id$
*/
The following is the license that applies to this copy of the Berkeley DB
software. For a license to use the Berkeley DB software under conditions
other than those described here, or to purchase support for this software,
please contact Oracle at berkeleydb-info_us@oracle.com.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/*
* Copyright (c) 1990, 2013 Oracle and/or its affiliates. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Redistributions in any form must be accompanied by information on
* how to obtain complete source code for the DB software and any
* accompanying software that uses the DB software. The source code
* must either be included in the distribution or be available for no
* more than the cost of distribution plus a nominal fee, and must be
* freely redistributable under reasonable conditions. For an
* executable file, complete source code means the source code for all
* modules it contains. It does not include source code for modules or
* files that typically accompany the major components of the operating
* system on which the executable file runs.
*
* THIS SOFTWARE IS PROVIDED BY ORACLE ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR
* NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL ORACLE BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
* Copyright (c) 1990, 1993, 1994, 1995
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
/*
* Copyright (c) 1995, 1996
* The President and Fellows of Harvard University. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY HARVARD AND ITS CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL HARVARD OR ITS CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/***
* ASM: a very small and fast Java bytecode manipulation framework
* Copyright (c) 2000-2005 INRIA, France Telecom
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holders nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/

View File

@@ -0,0 +1,79 @@
diff --git a/dist/Makefile.in b/dist/Makefile.in
index e90c0c2..60f8aef 100644
--- a/dist/Makefile.in
+++ b/dist/Makefile.in
@@ -17,7 +17,7 @@ exec_prefix=@exec_prefix@
bindir= @bindir@
includedir=@includedir@
libdir= @libdir@
-docdir= $(prefix)/docs
+docdir= @docdir@
dmode= 755
emode= 555
diff --git a/dist/configure b/dist/configure
index 32b2c66..5d1ed9a 100755
--- a/dist/configure
+++ b/dist/configure
@@ -5122,6 +5122,8 @@ irix*) optimize_flag="-O2"
CPPFLAGS="$CPPFLAGS -D_SGI_MP_SOURCE";;
mpeix*) CPPFLAGS="$CPPFLAGS -D_POSIX_SOURCE -D_SOCKET_SOURCE"
LIBSO_LIBS="$LIBSO_LIBS -lsocket -lsvipc";;
+haiku*)
+ LIBSO_LIBS="$LIBSO_LIBS -lnetwork";;
osf*) CPPFLAGS="$CPPFLAGS -pthread";;
*qnx*) qnx_build="yes"
$as_echo "#define HAVE_QNX 1" >>confdefs.h
diff --git a/dist/configure.ac b/dist/configure.ac
index 689f3b8..d5d5125 100644
--- a/dist/configure.ac
+++ b/dist/configure.ac
@@ -206,6 +206,8 @@ irix*) optimize_flag="-O2"
CPPFLAGS="$CPPFLAGS -D_SGI_MP_SOURCE";;
mpeix*) CPPFLAGS="$CPPFLAGS -D_POSIX_SOURCE -D_SOCKET_SOURCE"
LIBSO_LIBS="$LIBSO_LIBS -lsocket -lsvipc";;
+haiku*)
+ LIBSO_LIBS="$LIBSO_LIBS -lnetwork";;
osf*) CPPFLAGS="$CPPFLAGS -pthread";;
*qnx*) qnx_build="yes"
AC_DEFINE(HAVE_QNX)
@@ -671,6 +673,9 @@ AC_SEARCH_LIBS(sched_yield, rt)
# The Berkeley DB library calls fdatasync, only available in -lrt on Solaris.
AC_SEARCH_LIBS(fdatasync, rt)
+# Socket only available in -lnetwork on Haiku
+AC_SEARCH_LIBS(socket, network)
+
AC_SEARCH_LIBS(getaddrinfo, nsl socket)
AC_SEARCH_LIBS(hstrerror, resolv)
diff --git a/src/repmgr/repmgr_posix.c b/src/repmgr/repmgr_posix.c
index f803863..e2b93f6 100644
--- a/src/repmgr/repmgr_posix.c
+++ b/src/repmgr/repmgr_posix.c
@@ -571,11 +571,7 @@ __repmgr_wake_main_thread(env)
* PUBLIC: int __repmgr_writev __P((socket_t, db_iovec_t *, int, size_t *));
*/
int
-__repmgr_writev(fd, iovec, buf_count, byte_count_p)
- socket_t fd;
- db_iovec_t *iovec;
- int buf_count;
- size_t *byte_count_p;
+__repmgr_writev(socket_t fd, db_iovec_t *iovec, int buf_count, size_t *byte_count_p)
{
int nw, result;
@@ -593,11 +589,7 @@ __repmgr_writev(fd, iovec, buf_count, byte_count_p)
* PUBLIC: int __repmgr_readv __P((socket_t, db_iovec_t *, int, size_t *));
*/
int
-__repmgr_readv(fd, iovec, buf_count, byte_count_p)
- socket_t fd;
- db_iovec_t *iovec;
- int buf_count;
- size_t *byte_count_p;
+__repmgr_readv(socket_t fd, db_iovec_t *iovec, int buf_count, size_t *byte_count_p)
{
int result;
ssize_t nw;