Bump libpreludedb to 5.1.0

This commit is contained in:
Thomas Andrejak 2019-10-12 15:39:39 +02:00
parent ef1133e468
commit c40cb32b48
9 changed files with 995 additions and 21 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/libpreludedb-5.1.0.tar.gz

View File

@ -1,21 +0,0 @@
# Makefile for source rpm: libpreludedb
# $Id$
NAME := libpreludedb
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View File

@ -0,0 +1,17 @@
Description: Fix building with gtk-doc 1.32
Author: Thomas Andrejak <thomas.andrejak@gmail.com>
Last-Update: 2019-09-13
--- a/docs/api/libpreludedb-docs.xml 2019-09-17 18:49:45.721227852 -0400
+++ b/docs/api/libpreludedb-docs.xml2 2019-09-30 04:06:36.973341933 -0400
@@ -26,10 +26,6 @@
<xi:include href="xml/preludedb-sql-settings.xml"/>
</chapter>
- <chapter id="object-tree">
- <title>Object Hierarchy</title>
- <xi:include href="xml/tree_index.sgml"/>
- </chapter>
<index id="api-index-full">
<title>API Index</title>
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>

View File

@ -0,0 +1,11 @@
--- ./bindings/python/_preludedb.cxx 2019-07-13 08:39:59.744285379 +0200
+++ ./bindings/python/_preludedb.cxx 2019-07-13 08:41:47.364117843 +0200
@@ -3133,7 +3133,7 @@
SWIGINTERN void
SwigPyStaticVar_dealloc(PyDescrObject *descr) {
- _PyObject_GC_UNTRACK(descr);
+ PyObject_GC_UnTrack(descr);
Py_XDECREF(PyDescr_TYPE(descr));
Py_XDECREF(PyDescr_NAME(descr));
PyObject_GC_Del(descr);

View File

@ -0,0 +1,12 @@
Description: Force preludedb-admin to use python3
Author: Thomas Andrejak <thomas.andrejak@gmail.com>
Last-Update: 2019-09-20
--- a/preludedb-admin 2019-09-17 19:29:40.157500525 -0400
+++ b/preludedb-admin 2019-09-22 08:41:53.217541434 -0400
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
#
# Copyright (C) 2019 CS-SI. All Rights Reserved.
# Author: Yoann Vandoorselaere <yoannv@gmail.com>

View File

@ -0,0 +1,29 @@
--- ./bindings/c++/Makefile.in 2016-09-15 08:59:47.230000884 +0200
+++ ./bindings/c++/Makefile.in.n 2017-01-10 22:40:52.430934642 +0100
@@ -986,7 +986,7 @@
@HAVE_EASY_BINDINGS_TRUE@lib_LTLIBRARIES = libpreludedbcpp.la
@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_ladir = ${prefix}/lib
@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_la_SOURCES = preludedb.cxx preludedb-sql.cxx preludedb-error.cxx
-@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_la_LDFLAGS = -no-undefined -version-info @LIBPRELUDEDBCPP_SONAME@
+@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_la_LDFLAGS = -no-undefined -version-info @LIBPRELUDEDBCPP_SONAME@ @LIBPRELUDE_LDFLAGS@ @LIBPRELUDECPP_LDFLAGS@
@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_la_LIBADD = $(top_builddir)/src/.libs/libpreludedb.la
@HAVE_EASY_BINDINGS_TRUE@libpreludedbcpp_la_CPPFLAGS = -I$(top_builddir) -I$(top_builddir)/src/include -I$(top_srcdir)/src/include -I$(top_builddir)/bindings/c++/include -I$(top_srcdir)/bindings/c++/include @LIBPRELUDE_CFLAGS@
all: all-recursive
--- ./configure 2016-09-15 08:59:45.293000884 +0200
+++ ./configure 2017-01-11 07:17:38.116104467 +0100
@@ -1450,6 +1450,7 @@
LIBPRELUDE_PREFIX
LIBPRELUDE_LIBS
LIBPRELUDE_LDFLAGS
+LIBPRELUDECPP_LDFLAGS
LIBPRELUDE_PTHREAD_CFLAGS
LIBPRELUDE_CFLAGS
LIBPRELUDE_CONFIG
@@ -17062,6 +17063,7 @@
else
LIBPRELUDE_CFLAGS=`$LIBPRELUDE_CONFIG $libprelude_config_args --cflags`
LIBPRELUDE_LDFLAGS=`$LIBPRELUDE_CONFIG $libprelude_config_args --ldflags`
+ LIBPRELUDECPP_LDFLAGS='-lpreludecpp'
LIBPRELUDE_LIBS=`$LIBPRELUDE_CONFIG $libprelude_config_args --libs`
LIBPRELUDE_PREFIX=`$LIBPRELUDE_CONFIG $libprelude_config_args --prefix`
LIBPRELUDE_CONFIG_PREFIX=`$LIBPRELUDE_CONFIG $libprelude_config_args --config-prefix`

View File

@ -0,0 +1,548 @@
Description: Update m4/ax_lib_postgresql.m4 #892868
Author: Thomas Andrejak <thomas.andrejak@gmail.com>
Last-Update: 2019-09-20
--- a/m4/ax_lib_postgresql.m4 2019-09-17 18:49:46.185218603 -0400
+++ b/m4/ax_lib_postgresql.m4 2019-09-22 09:09:22.356777373 -0400
@@ -1,10 +1,10 @@
# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_lib_postgresql.html
+# https://www.gnu.org/software/autoconf-archive/ax_lib_postgresql.html
# ===========================================================================
#
# SYNOPSIS
#
-# AX_LIB_POSTGRESQL([MINIMUM-VERSION])
+# AX_LIB_POSTGRESQL([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND])
#
# DESCRIPTION
#
@@ -23,133 +23,225 @@
# should be in the PATH)
#
# path - complete path to pg_config utility, use this option if pg_config
-# can't be found in the PATH
+# can't be found in the PATH (You could set also PG_CONFIG variable)
#
# This macro calls:
#
-# AC_SUBST(POSTGRESQL_CFLAGS)
+# AC_SUBST(POSTGRESQL_CPPFLAGS)
# AC_SUBST(POSTGRESQL_LDFLAGS)
+# AC_SUBST(POSTGRESQL_LIBS)
# AC_SUBST(POSTGRESQL_VERSION)
#
# And sets:
#
# HAVE_POSTGRESQL
#
+# It execute if found ACTION-IF-FOUND (empty by default) and
+# ACTION-IF-NOT-FOUND (AC_MSG_FAILURE by default) if not found.
+#
# LICENSE
#
# Copyright (c) 2008 Mateusz Loskot <mateusz@loskot.net>
+# Copyright (c) 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
+# Copyright (c) 2018 Bastien Roucaries <rouca@debian.org>
#
# Copying and distribution of this file, with or without modification, are
# permitted in any medium without royalty provided the copyright notice
# and this notice are preserved. This file is offered as-is, without any
# warranty.
-#serial 9
+#serial 22
+
+AC_DEFUN([_AX_LIB_POSTGRESQL_OLD],[
+ found_postgresql="no"
+ _AX_LIB_POSTGRESQL_OLD_fail="no"
+ while true; do
+ AC_CACHE_CHECK([for the pg_config program], [ac_cv_path_PG_CONFIG],
+ [AC_PATH_PROGS_FEATURE_CHECK([PG_CONFIG], [pg_config],
+ [[ac_cv_path_PG_CONFIG="";$ac_path_PG_CONFIG --includedir > /dev/null \
+ && ac_cv_path_PG_CONFIG=$ac_path_PG_CONFIG ac_path_PG_CONFIG_found=:]],
+ [ac_cv_path_PG_CONFIG=""])])
+ PG_CONFIG=$ac_cv_path_PG_CONFIG
+ AS_IF([test "X$PG_CONFIG" = "X"],[break])
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries CPPFLAGS],[ac_cv_POSTGRESQL_CPPFLAGS],
+ [ac_cv_POSTGRESQL_CPPFLAGS="-I`$PG_CONFIG --includedir`" || _AX_LIB_POSTGRESQL_OLD_fail=yes])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break])
+ POSTGRESQL_CPPFLAGS="$ac_cv_POSTGRESQL_CPPFLAGS"
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries LDFLAGS],[ac_cv_POSTGRESQL_LDFLAGS],
+ [ac_cv_POSTGRESQL_LDFLAGS="-L`$PG_CONFIG --libdir`" || _AX_LIB_POSTGRESQL_OLD_fail=yes])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break])
+ POSTGRESQL_LDFLAGS="$ac_cv_POSTGRESQL_LDFLAGS"
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries LIBS],[ac_cv_POSTGRESQL_LIBS],
+ [ac_cv_POSTGRESQL_LIBS="-lpq"])
+ POSTGRESQL_LIBS="$ac_cv_POSTGRESQL_LIBS"
+
+ AC_CACHE_CHECK([for the PostgreSQL version],[ac_cv_POSTGRESQL_VERSION],
+ [
+ ac_cv_POSTGRESQL_VERSION=`$PG_CONFIG --version | sed "s/^PostgreSQL[[[:space:]]][[[:space:]]]*\([[0-9.]][[0-9.]]*\).*/\1/"` \
+ || _AX_LIB_POSTGRESQL_OLD_fail=yes
+ ])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break])
+ POSTGRESQL_VERSION="$ac_cv_POSTGRESQL_VERSION"
+
+
+ dnl
+ dnl Check if required version of PostgreSQL is available
+ dnl
+ AS_IF([test X"$postgresql_version_req" != "X"],[
+ AC_MSG_CHECKING([if PostgreSQL version $POSTGRESQL_VERSION is >= $postgresql_version_req])
+ AX_COMPARE_VERSION([$POSTGRESQL_VERSION],[ge],[$postgresql_version_req],
+ [found_postgresql_req_version=yes],[found_postgresql_req_version=no])
+ AC_MSG_RESULT([$found_postgresql_req_version])
+ ])
+ AS_IF([test "Xfound_postgresql_req_version" = "Xno"],[break])
+
+ found_postgresql="yes"
+ break
+ done
+])
+
+AC_DEFUN([_AX_LIB_POSTGRESQL_PKG_CONFIG],
+[
+ AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+ found_postgresql=no
+
+ while true; do
+ PKG_PROG_PKG_CONFIG
+ AS_IF([test X$PKG_CONFIG = X],[break])
+
+ _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=no;
+ AS_IF([test "X$postgresql_version_req" = "X"],
+ [PKG_CHECK_EXISTS([libpq],[found_postgresql_pkg_config=yes],[found_postgresql=no])],
+ [PKG_CHECK_EXISTS([libpq >= "$postgresql_version_req"],
+ [found_postgresql=yes],[found_postgresql=no])])
+ AS_IF([test "X$found_postgresql" = "no"],[break])
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries CPPFLAGS],[ac_cv_POSTGRESQL_CPPFLAGS],
+ [ac_cv_POSTGRESQL_CPPFLAGS="`$PKG_CONFIG libpq --cflags-only-I`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break])
+ POSTGRESQL_CPPFLAGS="$ac_cv_POSTGRESQL_CPPFLAGS"
+
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries LDFLAGS],[ac_cv_POSTGRESQL_LDFLAGS],
+ [ac_cv_POSTGRESQL_LDFLAGS="`$PKG_CONFIG libpq --libs-only-L --libs-only-other`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break])
+ POSTGRESQL_LDFLAGS="$ac_cv_POSTGRESQL_LDFLAGS"
+
+
+ AC_CACHE_CHECK([for the PostgreSQL libraries LIBS],[ac_cv_POSTGRESQL_LIBS],
+ [ac_cv_POSTGRESQL_LIBS="`$PKG_CONFIG libpq --libs-only-l`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=ye])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break])
+ POSTGRESQL_LIBS="$ac_cv_POSTGRESQL_LIBS"
+
+ dnl already checked by exist but need to be recovered
+ AC_CACHE_CHECK([for the PostgreSQL version],[ac_cv_POSTGRESQL_VERSION],
+ [ac_cv_POSTGRESQL_VERSION="`$PKG_CONFIG libpq --modversion`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes])
+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break])
+ POSTGRESQL_VERSION="$ac_cv_POSTGRESQL_VERSION"
+
+ found_postgresql=yes
+ break;
+ done
+
+])
+
+
AC_DEFUN([AX_LIB_POSTGRESQL],
[
AC_ARG_WITH([postgresql],
- AS_HELP_STRING([--with-postgresql=@<:@ARG@:>@],
- [use PostgreSQL library @<:@default=yes@:>@, optionally specify path to pg_config]
- ),
- [
- if test "$withval" = "no"; then
- want_postgresql="no"
- elif test "$withval" = "yes"; then
- want_postgresql="yes"
- else
- want_postgresql="yes"
- PG_CONFIG="$withval"
- fi
- ],
- [want_postgresql="yes"]
+ AS_HELP_STRING([--with-postgresql=@<:@ARG@:>@],
+ [use PostgreSQL library @<:@default=yes@:>@, optionally specify path to pg_config]
+ ),
+ [
+ AS_CASE([$withval],
+ [[[nN]][[oO]]],[want_postgresql="no"],
+ [[[yY]][[eE]][[sS]]],[want_postgresql="yes"],
+ [
+ want_postgresql="yes"
+ PG_CONFIG="$withval"
+ ])
+ ],
+ [want_postgresql="yes"]
)
- POSTGRESQL_CFLAGS=""
- POSTGRESQL_LDFLAGS=""
- POSTGRESQL_VERSION=""
+ AC_ARG_VAR([POSTGRESQL_CPPFLAGS],[cpp flags for PostgreSQL overriding detected flags])
+ AC_ARG_VAR([POSTGRESQL_LIBFLAGS],[libs for PostgreSQL overriding detected flags])
+ AC_ARG_VAR([POSTGRESQL_LDFLAGS],[linker flags for PostgreSQL overriding detected flags])
+
+ # populate cache
+ AS_IF([test "X$POSTGRESQL_CPPFLAGS" != X],[ac_cv_POSTGRESQL_CPPFLAGS="$POSTGRESQL_CPPFLAGS"])
+ AS_IF([test "X$POSTGRESQL_LDFLAGS" != X],[ac_cv_POSTGRESQL_LDFLAGS="$POSTGRESQL_LDFLAGS"])
+ AS_IF([test "X$POSTGRESQL_LIBS" != X],[ac_cv_POSTGRESQL_LIBS="$POSTGRESQL_LIBS"])
- dnl
- dnl Check PostgreSQL libraries (libpq)
- dnl
+ postgresql_version_req=ifelse([$1], [], [], [$1])
+ found_postgresql="no"
- if test "$want_postgresql" = "yes"; then
- AC_MSG_CHECKING([for $PG_CONFIG])
- if test -z "$PG_CONFIG" -o test; then
- AC_PATH_PROG([PG_CONFIG], [pg_config], [])
- fi
-
- if test ! -x "$PG_CONFIG"; then
- AC_MSG_RESULT([$PG_CONFIG does not exist or it is not an exectuable file])
- PG_CONFIG="no"
- found_postgresql="no"
- fi
-
- if test "$PG_CONFIG" != "no"; then
- AC_MSG_CHECKING([for PostgreSQL libraries])
-
- POSTGRESQL_CFLAGS="-I`$PG_CONFIG --includedir`"
- POSTGRESQL_LDFLAGS="-L`$PG_CONFIG --libdir` -lpq"
-
- POSTGRESQL_VERSION=`$PG_CONFIG --version | sed -e 's#PostgreSQL ##'`
-
- AC_DEFINE([HAVE_POSTGRESQL], [1],
- [Define to 1 if PostgreSQL libraries are available])
-
- found_postgresql="yes"
- AC_MSG_RESULT([yes])
- else
- found_postgresql="no"
- AC_MSG_RESULT([no])
- fi
- fi
+ POSTGRESQL_VERSION=""
dnl
- dnl Check if required version of PostgreSQL is available
+ dnl Check PostgreSQL libraries (libpq)
dnl
+ AS_IF([test X"$want_postgresql" = "Xyes"],[
+ _AX_LIB_POSTGRESQL_PKG_CONFIG
- postgresql_version_req=ifelse([$1], [], [], [$1])
-
- if test "$found_postgresql" = "yes" -a -n "$postgresql_version_req"; then
-
- AC_MSG_CHECKING([if PostgreSQL version is >= $postgresql_version_req])
+ AS_IF([test X"$found_postgresql" = "Xno"],
+ [_AX_LIB_POSTGRESQL_OLD])
- dnl Decompose required version string of PostgreSQL
- dnl and calculate its number representation
- postgresql_version_req_major=`expr $postgresql_version_req : '\([[0-9]]*\)'`
- postgresql_version_req_minor=`expr $postgresql_version_req : '[[0-9]]*\.\([[0-9]]*\)'`
- postgresql_version_req_micro=`expr $postgresql_version_req : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'`
- if test "x$postgresql_version_req_micro" = "x"; then
- postgresql_version_req_micro="0"
- fi
-
- postgresql_version_req_number=`expr $postgresql_version_req_major \* 1000000 \
- \+ $postgresql_version_req_minor \* 1000 \
- \+ $postgresql_version_req_micro`
-
- dnl Decompose version string of installed PostgreSQL
- dnl and calculate its number representation
- postgresql_version_major=`expr $POSTGRESQL_VERSION : '\([[0-9]]*\)'`
- postgresql_version_minor=`expr $POSTGRESQL_VERSION : '[[0-9]]*\.\([[0-9]]*\)'`
- postgresql_version_micro=`expr $POSTGRESQL_VERSION : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'`
- if test "x$postgresql_version_micro" = "x"; then
- postgresql_version_micro="0"
- fi
-
- postgresql_version_number=`expr $postgresql_version_major \* 1000000 \
- \+ $postgresql_version_minor \* 1000 \
- \+ $postgresql_version_micro`
-
- postgresql_version_check=`expr $postgresql_version_number \>\= $postgresql_version_req_number`
- if test "$postgresql_version_check" = "1"; then
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- fi
+ AS_IF([test X"$found_postgresql" = Xyes],[
+ _AX_LIB_POSTGRESQL_OLD_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $POSTGRESQL_CPPFLAGS"
+ _AX_LIB_POSTGRESQL_OLD_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $POSTGRESQL_LDFLAGS"
+ _AX_LIB_POSTGRESQL_OLD_LIBS="$LIBS"
+ LIBS="$LIBS $POSTGRESQL_LIBS"
+ while true; do
+ dnl try to compile
+ AC_CHECK_HEADER([libpq-fe.h],[],[found_postgresql=no])
+ AS_IF([test "X$found_postgresql" = "Xno"],[break])
+ dnl try now to link
+ AC_CACHE_CHECK([for the PostgreSQL library linking is working],[ac_cv_postgresql_found],
+ [
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM(
+ [
+ #include <libpq-fe.h>
+ ],
+ [[
+ char conninfo[]="dbname = postgres";
+ PGconn *conn;
+ conn = PQconnectdb(conninfo);
+ ]]
+ )
+ ],[ac_cv_postgresql_found=yes],
+ [ac_cv_postgresql_found=no])
+ ])
+ found_postgresql="$ac_cv_postgresql_found"
+ AS_IF([test "X$found_postgresql" = "Xno"],[break])
+ break
+ done
+ CPPFLAGS="$_AX_LIB_POSTGRESQL_OLD_CPPFLAGS"
+ LDFLAGS="$_AX_LIB_POSTGRESQL_OLD_LDFLAGS"
+ LIBS="$_AX_LIB_POSTGRESQL_OLD_LIBS"
+ ])
+
+
+ AS_IF([test "x$found_postgresql" = "xyes"],[
+ AC_DEFINE([HAVE_POSTGRESQL], [1],
+ [Define to 1 if PostgreSQL libraries are available])])
+ ])
AC_SUBST([POSTGRESQL_VERSION])
- AC_SUBST([POSTGRESQL_CFLAGS])
+ AC_SUBST([POSTGRESQL_CPPFLAGS])
AC_SUBST([POSTGRESQL_LDFLAGS])
+ AC_SUBST([POSTGRESQL_LIBS])
+
+ AS_IF([test "x$found_postgresql" = "xyes"],
+ [ifelse([$2], , :, [$2])],
+ [ifelse([$3], , AS_IF([test X"$want_postgresql" = "Xyes"],[AC_MSG_ERROR([Library requirements (PostgreSQL) not met.])],[:]), [$3])])
+
])
--- a/configure.ac 2019-09-17 19:29:40.041502837 -0400
+++ b/configure.ac 2019-09-22 09:28:50.905561338 -0400
@@ -158,7 +158,7 @@
dnl ********************************************************
dnl * Check for the PostgreSQL library (PostgreSQL plugin) *
dnl ********************************************************
-AX_LIB_POSTGRESQL()
+AX_LIB_POSTGRESQL([9.0])
with_pgsql="no"
if test x$POSTGRESQL_VERSION != x; then
--- /dev/null 2019-09-21 09:30:35.976000000 -0400
+++ b/m4/ax_compare_version.m4 2019-09-22 09:56:48.116239566 -0400
@@ -0,0 +1,177 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_compare_version.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
+#
+# DESCRIPTION
+#
+# This macro compares two version strings. Due to the various number of
+# minor-version numbers that can exist, and the fact that string
+# comparisons are not compatible with numeric comparisons, this is not
+# necessarily trivial to do in a autoconf script. This macro makes doing
+# these comparisons easy.
+#
+# The six basic comparisons are available, as well as checking equality
+# limited to a certain number of minor-version levels.
+#
+# The operator OP determines what type of comparison to do, and can be one
+# of:
+#
+# eq - equal (test A == B)
+# ne - not equal (test A != B)
+# le - less than or equal (test A <= B)
+# ge - greater than or equal (test A >= B)
+# lt - less than (test A < B)
+# gt - greater than (test A > B)
+#
+# Additionally, the eq and ne operator can have a number after it to limit
+# the test to that number of minor versions.
+#
+# eq0 - equal up to the length of the shorter version
+# ne0 - not equal up to the length of the shorter version
+# eqN - equal up to N sub-version levels
+# neN - not equal up to N sub-version levels
+#
+# When the condition is true, shell commands ACTION-IF-TRUE are run,
+# otherwise shell commands ACTION-IF-FALSE are run. The environment
+# variable 'ax_compare_version' is always set to either 'true' or 'false'
+# as well.
+#
+# Examples:
+#
+# AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8])
+# AX_COMPARE_VERSION([3.15],[lt],[3.15.8])
+#
+# would both be true.
+#
+# AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8])
+# AX_COMPARE_VERSION([3.15],[gt],[3.15.8])
+#
+# would both be false.
+#
+# AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8])
+#
+# would be true because it is only comparing two minor versions.
+#
+# AX_COMPARE_VERSION([3.15.7],[eq0],[3.15])
+#
+# would be true because it is only comparing the lesser number of minor
+# versions of the two values.
+#
+# Note: The characters that separate the version numbers do not matter. An
+# empty string is the same as version 0. OP is evaluated by autoconf, not
+# configure, so must be a string, not a variable.
+#
+# The author would like to acknowledge Guido Draheim whose advice about
+# the m4_case and m4_ifvaln functions make this macro only include the
+# portions necessary to perform the specific comparison specified by the
+# OP argument in the final configure script.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Tim Toolan <toolan@ele.uri.edu>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 13
+
+dnl #########################################################################
+AC_DEFUN([AX_COMPARE_VERSION], [
+ AC_REQUIRE([AC_PROG_AWK])
+
+ # Used to indicate true or false condition
+ ax_compare_version=false
+
+ # Convert the two version strings to be compared into a format that
+ # allows a simple string comparison. The end result is that a version
+ # string of the form 1.12.5-r617 will be converted to the form
+ # 0001001200050617. In other words, each number is zero padded to four
+ # digits, and non digits are removed.
+ AS_VAR_PUSHDEF([A],[ax_compare_version_A])
+ A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
+ -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/[[^0-9]]//g'`
+
+ AS_VAR_PUSHDEF([B],[ax_compare_version_B])
+ B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
+ -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
+ -e 's/[[^0-9]]//g'`
+
+ dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary
+ dnl # then the first line is used to determine if the condition is true.
+ dnl # The sed right after the echo is to remove any indented white space.
+ m4_case(m4_tolower($2),
+ [lt],[
+ ax_compare_version=`echo "x$A
+x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"`
+ ],
+ [gt],[
+ ax_compare_version=`echo "x$A
+x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"`
+ ],
+ [le],[
+ ax_compare_version=`echo "x$A
+x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"`
+ ],
+ [ge],[
+ ax_compare_version=`echo "x$A
+x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"`
+ ],[
+ dnl Split the operator from the subversion count if present.
+ m4_bmatch(m4_substr($2,2),
+ [0],[
+ # A count of zero means use the length of the shorter version.
+ # Determine the number of characters in A and B.
+ ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'`
+ ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'`
+
+ # Set A to no more than B's length and B to no more than A's length.
+ A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"`
+ B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"`
+ ],
+ [[0-9]+],[
+ # A count greater than zero means use only that many subversions
+ A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
+ B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
+ ],
+ [.+],[
+ AC_WARNING(
+ [invalid OP numeric parameter: $2])
+ ],[])
+
+ # Pad zeros at end of numbers to make same length.
+ ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`"
+ B="$B`echo $A | sed 's/./0/g'`"
+ A="$ax_compare_version_tmp_A"
+
+ # Check for equality or inequality as necessary.
+ m4_case(m4_tolower(m4_substr($2,0,2)),
+ [eq],[
+ test "x$A" = "x$B" && ax_compare_version=true
+ ],
+ [ne],[
+ test "x$A" != "x$B" && ax_compare_version=true
+ ],[
+ AC_WARNING([invalid OP parameter: $2])
+ ])
+ ])
+
+ AS_VAR_POPDEF([A])dnl
+ AS_VAR_POPDEF([B])dnl
+
+ dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE.
+ if test "$ax_compare_version" = "true" ; then
+ m4_ifvaln([$4],[$4],[:])dnl
+ m4_ifvaln([$5],[else $5])dnl
+ fi
+]) dnl AX_COMPARE_VERSION
--- a/configure.ac 2019-09-17 19:29:40.041502837 -0400
+++ b/configure.ac 2019-09-22 10:13:22.432485117 -0400
@@ -170,7 +170,7 @@
LIBS=$LIBS_bkp;
CPPFLAGS_bkp=$CPPFLAGS
- CPPFLAGS="$POSTGRESQL_CFLAGS"
+ CPPFLAGS="$POSTGRESQL_CPPFLAGS"
AC_CHECK_HEADER(libpq-fe.h, with_pgsql=yes, with_pgsql=no)
CPPFLAGS=$CPPFLAGS_bkp;
fi
--- a/plugins/sql/pgsql/Makefile.am 2019-09-17 18:49:46.257217168 -0400
+++ b/plugins/sql/pgsql/Makefile.am 2019-09-22 10:15:40.613739821 -0400
@@ -1,4 +1,4 @@
-AM_CPPFLAGS=@PCFLAGS@ -I$(top_srcdir)/src/include -I$(top_srcdir)/libmissing -I$(top_builddir)/libmissing @LIBPRELUDE_CFLAGS@ @POSTGRESQL_CFLAGS@
+AM_CPPFLAGS=@PCFLAGS@ -I$(top_srcdir)/src/include -I$(top_srcdir)/libmissing -I$(top_builddir)/libmissing @LIBPRELUDE_CFLAGS@ @POSTGRESQL_CPPFLAGS@
pgsql_la_LDFLAGS = -module -avoid-version @LIBPRELUDE_LDFLAGS@
if HAVE_PGSQL

376
libpreludedb.spec Normal file
View File

@ -0,0 +1,376 @@
%if 0%{?python3_other_pkgversion}
%bcond_without python3_other
%else
%bcond_with python3_other
%endif
# API version for libpreludedb
%global major 7
# API version for libpreludedb c++ binding
%global cppmajor 2
Name: libpreludedb
Version: 5.1.0
Release: 1%{?dist}
Summary: Framework for easy access to the IDMEF database
# Prelude is GPL-2.0+
# libmissing is LGPL-2.1+
License: GPLv2+
URL: https://www.prelude-siem.org/
Source0: https://www.prelude-siem.org/pkg/src/%{version}/%{name}-%{version}.tar.gz
# https://www.prelude-siem.org/issues/867
Patch0: libpreludedb-5.1.0-undefined_non_weak_symbol.patch
Patch1: libpreludedb-5.1.0-fix_py38.patch
Patch2: libpreludedb-5.1.0-fix_gtkdoc_1.32.patch
Patch3: libpreludedb-5.1.0-force_preludedb_admin_with_py3.patch
Patch4: libpreludedb-5.1.0-update_m4_postgresql.patch
BuildRequires: bison
BuildRequires: chrpath
BuildRequires: flex
BuildRequires: gtk-doc
BuildRequires: swig
BuildRequires: libgcrypt-devel
BuildRequires: libgpg-error-devel
BuildRequires: mysql-devel
BuildRequires: postgresql-devel
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(libprelude) >= %{version}
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(gnutls)
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: pkgconfig(zlib)
%ifnarch s390
BuildRequires: valgrind
%endif
# Upstream do not use explicit version of gnulib, just checkout
# and update files. In libpreludedb 5.0.0, the checkout has been done
# on 2018-09-03
Provides: bundled(gnulib) = 20180903
%description
The PreludeDB Library provides an abstraction layer upon the type and the
format of the database used to store IDMEF alerts. It allows developers to use
the Prelude IDMEF database easily and efficiently without worrying about SQL,
and to access the database independently of the type/format of the database.
%package devel
Summary: Libraries and headers for PreludeDB
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
Libraries and headers you can use to access Prelude database using the Prelude
Library. The PreludeDB Library provides an abstraction layer upon the type and
the format of the database used to store IDMEF alerts. It allows developers to
use the Prelude IDMEF database easily and efficiently without worrying about
SQL, and to access the database independently of the type/format of the
database.
%package -n preludedb-tools
Summary: Command-line tools for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n preludedb-tools
Provides a convenient interface for accessing Prelude alerts.
%package -n python%{python3_pkgversion}-preludedb
Summary: Python 3 bindings for preludedb
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python%{python3_pkgversion}-prelude
%{?python_provide:%python_provide python%{python3_pkgversion}-preludedb}
%description -n python%{python3_pkgversion}-preludedb
Provides python 3 bindings for preludedb.
%if 0%{?with_python3_other}
%package -n python%{python3_other_pkgversion}-preludedb
Summary: Python 3 bindings for preludedb
BuildRequires: python%{python3_other_pkgversion}-devel
BuildRequires: python%{python3_other_pkgversion}-setuptools
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: python%{python3_other_pkgversion}-prelude
%{?python_provide:%python_provide python%{python3_other_pkgversion}-preludedb}
%description -n python%{python3_other_pkgversion}-preludedb
Provides python 3 bindings for preludedb.
# with_python3_other
%endif
%package -n preludedb-mysql
Summary: Plugin to use prelude with a MySQL database
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n preludedb-mysql
This plugin authorize prelude to store alerts into a MySQL
database.
%package -n preludedb-pgsql
Summary: Plugin to use prelude with a PostgreSQL database
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n preludedb-pgsql
This plugin authorize prelude to store alerts into a PostgreSQL
database.
%package -n preludedb-sqlite3
Summary: Plugin to use prelude with a SQLite3 database
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n preludedb-sqlite3
This plugin authorize prelude to store alerts into a SQLite3
database.
%package doc
Summary: Documentation for preludedb
BuildArch: noarch
%description doc
Provides documentation for preludedb generated by gtk-doc.
%prep
%autosetup -p1
%build
%configure \
--disable-rpath \
--disable-static \
--enable-shared \
--includedir=%{_includedir}/%{name} \
--with-swig \
--without-python2 \
--with-python3 \
--enable-gtk-doc \
--with-html-dir=%{_docdir}/%{name}-devel
sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool
%make_build
cd %{_builddir}/%{name}-%{version}/bindings/python
%{?with_python3_other: %py3_other_build}
%install
%make_install
cd %{_builddir}/%{name}-%{version}/bindings/python
%{?with_python3_other: %py3_other_install}
chrpath -d %{buildroot}%{_libdir}/*.so.*
find %{buildroot} -name '*.la' -delete
find %{buildroot} -name 'perllocal.pod' -delete
find %{buildroot} -name '.packlist' -delete
chmod +x %{buildroot}%{_datadir}/%{name}/classic/mysql2pgsql.sh
chmod +x %{buildroot}%{_datadir}/%{name}/classic/mysql2sqlite.sh
%check
%make_build check
%post -n %{name} -p /sbin/ldconfig
%postun -n %{name} -p /sbin/ldconfig
%files
%{_libdir}/%{name}.so.%{major}
%{_libdir}/%{name}.so.%{major}.*
%{_libdir}/%{name}cpp.so.%{cppmajor}
%{_libdir}/%{name}cpp.so.%{cppmajor}.*
%dir %{_libdir}/%{name}/
%dir %{_libdir}/%{name}/plugins
%dir %{_libdir}/%{name}/plugins/formats
%dir %{_libdir}/%{name}/plugins/sql
%{_libdir}/%{name}/plugins/formats/classic.so
%license COPYING LICENSE.README HACKING.README
%doc README NEWS
%files devel
%{_datadir}/%{name}
%{_bindir}/%{name}-config
%{_libdir}/%{name}.so
%{_libdir}/%{name}cpp.so
%{_includedir}/%{name}
%{_datadir}/aclocal/%{name}.m4
%{_mandir}/man1/%{name}-config.1.gz
%files -n preludedb-tools
%{_bindir}/preludedb-admin
%{_mandir}/man1/preludedb-admin.1.gz
%files -n python%{python3_pkgversion}-preludedb
%{python3_sitearch}/_preludedb.*so
%{python3_sitearch}/__pycache__/preludedb.cpython-??.*py?
%{python3_sitearch}/preludedb-%{version}-py?.?.egg-info
%{python3_sitearch}/preludedb.py
%if 0%{?with_python3_other}
%files -n python%{python3_other_pkgversion}-preludedb
%{python3_other_sitearch}/_preludedb.*so
%{python3_other_sitearch}/__pycache__/preludedb.cpython-??.*pyc
%{python3_other_sitearch}/__pycache__/preludedb.cpython-??.*pyo
%{python3_other_sitearch}/preludedb-%{version}-py?.?.egg-info
%{python3_other_sitearch}/preludedb.py
# with_python3_other
%endif
%files -n preludedb-mysql
%{_libdir}/%{name}/plugins/sql/mysql.so
%dir %{_datadir}/%{name}/classic
%{_datadir}/%{name}/classic/mysql*.sql
%files -n preludedb-pgsql
%{_libdir}/%{name}/plugins/sql/pgsql.so
%dir %{_datadir}/%{name}/classic
%{_datadir}/%{name}/classic/pgsql*.sql
%files -n preludedb-sqlite3
%{_libdir}/%{name}/plugins/sql/sqlite3.so
%dir %{_datadir}/%{name}/classic
%{_datadir}/%{name}/classic/sqlite*.sql
%files doc
%{_docdir}/%{name}-devel
%license COPYING LICENSE.README HACKING.README
%doc ChangeLog README NEWS
%changelog
* Fri Oct 11 2019 Thomas Andrejak <thomas.andrejak@gmail.com> - 5.1.0-1
- Bump version 5.1.0
* Wed Jul 17 2019 Thomas Andrejak <thomas.andrejak@gmail.com> - 5.0.0-1
- Bump version 5.0.0
* Wed Jul 17 2019 Thomas Andrejak <thomas.andrejak@gmail.com> - 4.1.0-3
- Rebuilt because soname bump of libprelude
* Thu Mar 07 2019 Troy Dawson <tdawson@redhat.com> - 4.1.0-2
- Rebuilt to change main python from 3.4 to 3.6
* Tue Mar 20 2018 Thomas Andrejak <thomas.andrejak@gmail.com> - 4.1.0-1
- Bump version 4.1.0
* Sun Oct 1 2017 Thomas Andrejak <thomas.andrejak@gmail.com> - 4.0.0-1
- Bump version
* Mon Jan 9 2017 Thomas Andrejak <thomas.andrejak@gmail.com> - 3.1.0-1
- Bump version
* Sun Mar 10 2013 Steve Grubb <sgrubb@redhat.com> - 1:1.0.0-16
- Add -i to autoreconf to add missing test-driver
- Add libtool as build dependency
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.0.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Thu Sep 06 2012 Steve Grubb <sgrubb@redhat.com> - 1:1.0.0-14
- Add provides bundled gnulib
* Wed Aug 08 2012 Petr Pisar <ppisar@redhat.com> - 1:1.0.0-13
- Fix building with glibc-2.16.6 (bug #839607)
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.0.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Sun Jun 10 2012 Petr Pisar <ppisar@redhat.com> - 1:1.0.0-11
- Perl 5.16 rebuild
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.0.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Fri Jun 17 2011 Marcela Maslanova <mmaslano@redhat.com> - 1:1.0.0-9
- Perl mass rebuild
* Fri Jun 10 2011 Marcela Maslanova <mmaslano@redhat.com> - 1:1.0.0-8
- Perl 5.14 mass rebuild
* Wed Mar 23 2011 Dan Horák <dan@danny.cz> - 1:1.0.0-7
- rebuilt for mysql 5.5.10 (soname bump in libmysqlclient)
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.0.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 1:1.0.0-5
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Tue Jun 01 2010 Marcela Maslanova <mmaslano@redhat.com> - 1:1.0.0-4
- Mass rebuild with perl-5.12.0
* Sun May 02 2010 Steve Grubb <sgrubb@redhat.com> 1.0.0-3
- Fix requires
* Fri Apr 30 2010 Steve Grubb <sgrubb@redhat.com> 1.0.0-2
- new upstream release
* Sat Jan 30 2010 Steve Grubb <sgrubb@redhat.com> 1.0.0rc1-1
- new upstream bugfix release
* Thu Dec 17 2009 Steve Grubb <sgrubb@redhat.com> 0.9.15.3-1
- new upstream bugfix release
* Mon Dec 7 2009 Stepan Kasal <skasal@redhat.com> - 0.9.15.1-6
- rebuild against perl 5.10.1
* Tue Aug 25 2009 Steve Grubb <sgrubb@redhat.com> - 0.9.15.1-5
- rebuild for new openssl
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.15.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Sat Jan 24 2009 Caolán McNamara <caolanm@redhat.com> - 0.9.15.1-3
- rebuild for dependencies
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.9.15.1-2
- Rebuild for Python 2.6
* Sun Sep 14 2008 Steve Grubb <sgrubb@redhat.com> 0.9.15.1-1
- new upstream bugfix release
* Wed Aug 27 2008 Steve Grubb <sgrubb@redhat.com> 0.9.15-1
- new upstream release
* Fri Jul 04 2008 Steve Grubb <sgrubb@redhat.com> - 0.9.14.1-4
- Fix perl bindings (#453935)
* Wed Jun 25 2008 Tomas Mraz <tmraz@redhat.com> - 0.9.14.1-3
- rebuild with new gnutls
- fix install of perl bindings
* Wed Feb 20 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.9.14.1-2
- Autorebuild for GCC 4.3
* Mon Jan 14 2008 Steve Grubb <sgrubb@redhat.com> 0.9.14.1-1
- new upstream version 0.9.14.1
* Sun Dec 09 2007 <alexlan at fedoraproject dot org> - 0.9.11.1-4
- Add missing BR: perl-devel
* Thu Dec 06 2007 Release Engineering <rel-eng at fedoraproject dot org> - 0.9.11.1-3
- Rebuild for deps
* Fri Jan 05 2007 Thorsten Scherf <tscherf@redhat.com> 0.9.11.1-2
- moved to new upstream version 0.9.11.1
* Mon Jan 01 2007 Thorsten Scherf <tscherf@redhat.com> 0.9.11-4
- added x86_64-sqlite3.patch to resolve x86_86 build problems
* Sun Dec 31 2006 Thorsten Scherf <tscherf@redhat.com> 0.9.11-3
- resolved macro problem in changelog
- changed several dirowner
- moved html docs into -devel
* Sat Dec 30 2006 Thorsten Scherf <tscherf@redhat.com> 0.9.11-2
- corrected file list entries
- added new BuildReqs to the devel-package
- changed dirowner
- fixed x86_86 arch build problem with %%python_sitearch
* Fri Dec 29 2006 Thorsten Scherf <tscherf@redhat.com> 0.9.11-1
- resolved rpath issue
- added python_sitearch and python_sitelib
- fixed permissions problem
- moved to new upstream version 0.9.11
* Mon Nov 20 2006 Thorsten Scherf <tscherf@redhat.com> 0.9.10-2
- Some minor fixes in requirements
* Tue Oct 24 2006 Thorsten Scherf <tscherf@redhat.com> 0.9.10-1
- New fedora build based on release 0.9.10
- New fedora build based on release 0.9.10

View File

@ -0,0 +1 @@
SHA512 (libpreludedb-5.1.0.tar.gz) = 9e45e0f7a945eef254f8e59c0c7212c6afca897584ea8f2c88e16478fde448abdeeb991828cc2482373d2c735e1229f1a11fe9780e40da1a8aed867fe158f481