gnu: Add 4store.

* gnu/packages/databases.scm (4store): New variable.
* gnu/packages/patches/4store-fix-buildsystem.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch file entry.

Signed-off-by: Leo Famulari <leo@famulari.name>
This commit is contained in:
Roel Janssen 2016-04-27 00:44:22 +02:00 committed by Leo Famulari
parent 3854f3d7e4
commit 4c6aa73b8f
No known key found for this signature in database
GPG key ID: 2646FA30BACA7F08
3 changed files with 110 additions and 0 deletions

View file

@ -403,6 +403,7 @@ GNU_SYSTEM_MODULES = \
patchdir = $(guilemoduledir)/gnu/packages/patches
dist_patch_DATA = \
gnu/packages/patches/4store-fix-buildsystem.patch \
gnu/packages/patches/abiword-explictly-cast-bools.patch \
gnu/packages/patches/abiword-wmf-version-lookup-fix.patch \
gnu/packages/patches/acl-hurd-path-max.patch \

View file

@ -9,6 +9,7 @@
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -27,8 +28,12 @@
(define-module (gnu packages databases)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages perl)
#:use-module (gnu packages language)
#:use-module (gnu packages linux)
@ -40,9 +45,12 @@ (define-module (gnu packages databases)
#:use-module (gnu packages check)
#:use-module (gnu packages algebra)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages python)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages rdf)
#:use-module (gnu packages xml)
#:use-module (gnu packages bison)
#:use-module (gnu packages jemalloc)
@ -58,6 +66,51 @@ (define-module (gnu packages databases)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match))
(define-public 4store
(package
(name "4store")
(version "1.1.6")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/garlik/4store/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "004fmcf1w75zhc1x3zc6kc97j4jqn2v5nhk6yb3z3cpfrhzi9j50"))
(patches (list (search-patch "4store-fix-buildsystem.patch")))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)
("python" ,python-2)
("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gnu-gettext)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(inputs
`(("glib" ,glib)
("rasqal" ,rasqal)
("libxml2" ,libxml2)
("raptor2" ,raptor2)
("readline" ,readline)
("avahi" ,avahi)
("pcre" ,pcre)
("cyrus-sasl" ,cyrus-sasl)
("openssl" ,openssl)
("util-linux" ,util-linux)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'generate-configure
(lambda _
(zero? (system* "./autogen.sh")))))))
;; http://www.4store.org has been down for a while now.
(home-page "https://github.com/garlik/4store")
(synopsis "Clustered RDF storage and query engine")
(description "4store is a RDF/SPARQL store written in C, supporting
either single machines or networked clusters.")
(license gpl3+)))
(define-public gdbm
(package
(name "gdbm")

View file

@ -0,0 +1,56 @@
This patch sets a fixed version to avoid needing Git and the .git/ folder.
It also removes the creation of "/var/lib/4store", which is not available
during the install phase in GNU Guix.
Patch by Roel Janssen <roel@gnu.org>
*** a/configure.ac Wed Feb 4 19:05:24 2015
--- b/configure.ac Wed Mar 23 11:20:38 2016
***************
*** 2,13 ****
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.50])
! AC_INIT([4store], m4_esyscmd([./version.sh .version]), [http://4store.org/support/], [4store])
AC_CONFIG_SRCDIR([src/backend/backend-intl.h])
! AM_INIT_AUTOMAKE([1.7 std-options -Wall])
AC_CONFIG_HEADERS(4store-config.h)
# Checks for programs.
AC_PROG_LIBTOOL
AC_PROG_AWK
AC_PROG_CC
--- 2,14 ----
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.50])
! AC_INIT([4store], [1.1.6], [http://4store.org/support/], [4store])
AC_CONFIG_SRCDIR([src/backend/backend-intl.h])
! AM_INIT_AUTOMAKE([1.7 std-options foreign -Wall])
AC_CONFIG_HEADERS(4store-config.h)
# Checks for programs.
+ AM_PROG_AR
AC_PROG_LIBTOOL
AC_PROG_AWK
AC_PROG_CC
*** a/src/utilities/Makefile.am Wed Feb 4 19:05:24 2015
--- b/src/utilities/Makefile.am Wed Mar 23 14:05:56 2016
***************
*** 13,20 ****
noinst_PROGRAMS = lex-file-verify 4s-rid
install-data-local:
! mkdir -p $(DESTDIR)@FS_STORE_ROOT@
! chmod 1777 $(DESTDIR)@FS_STORE_ROOT@
4s_backend_destroy_SOURCES = backend-destroy.c
4s_backend_destroy_LDADD = ../common/lib4sintl.a
--- 13,19 ----
noinst_PROGRAMS = lex-file-verify 4s-rid
install-data-local:
! echo "Please create the following directory: " $(DESTDIR)@FS_STORE_ROOT@
4s_backend_destroy_SOURCES = backend-destroy.c
4s_backend_destroy_LDADD = ../common/lib4sintl.a