Browse Source

gnu: Add librep.

* gnu/packages/sawfish.scm: New file.
* gnu/packages/patches/librep-rules.mk.patch: New file.
* gnu-system.am: Add them.
version-0.8.3
宋文武 8 years ago
parent
commit
93dc836f9d
  1. 2
      gnu-system.am
  2. 30
      gnu/packages/patches/librep-rules.mk.patch
  3. 66
      gnu/packages/sawfish.scm

2
gnu-system.am

@ -240,6 +240,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/ruby.scm \
gnu/packages/rush.scm \
gnu/packages/samba.scm \
gnu/packages/sawfish.scm \
gnu/packages/scanner.scm \
gnu/packages/scheme.scm \
gnu/packages/screen.scm \
@ -417,6 +418,7 @@ dist_patch_DATA = \
gnu/packages/patches/libevent-dns-tests.patch \
gnu/packages/patches/liboop-mips64-deplibs-fix.patch \
gnu/packages/patches/libmad-mips-newgcc.patch \
gnu/packages/patches/librep-rules.mk.patch \
gnu/packages/patches/libtheora-config-guess.patch \
gnu/packages/patches/libtool-skip-tests.patch \
gnu/packages/patches/libssh-CVE-2014-0017.patch \

30
gnu/packages/patches/librep-rules.mk.patch

@ -0,0 +1,30 @@
rules.mk.in: Don't set prefix, datadir, libdir, datarootdir and repdir.
rules.mk.in: Use pkg-config to get the absolute path for repcommonexedir.
Merged into upstream: <https://github.com/SawfishWM/librep/commit/a1f2db721aa5055e90f6a76fde625946340ed8cf>.
--- librep_0.92.4.orig/rules.mk.in 2015-01-31 23:21:59.614751496 +0800
+++ librep_0.92.4/rules.mk.in 2015-02-02 18:56:55.097171657 +0800
@@ -1,18 +1,10 @@
# rules.mk
-prefix=@prefix@
-datadir=@datadir@
-libdir=@libdir@
+repcommonexecdir?=$(shell pkg-config --variable=repcommonexecdir librep)
+rpath_repcommonexecdir:=$(repcommonexecdir)
-# shut up configure
-datarootdir=@datarootdir@
-
-repdir=@repdir@
-repcommonexecdir=@repcommonexecdir@
-rpath_repcommonexecdir=@repcommonexecdir@
-
-rep_LIBTOOL=$(repcommonexecdir)/libtool --tag CC
-rep_INSTALL_ALIASES=$(repcommonexecdir)/install-aliases
+rep_LIBTOOL:=$(repcommonexecdir)/libtool --tag CC
+rep_INSTALL_ALIASES:=$(repcommonexecdir)/install-aliases
# use this like:
# foo.la : foo.lo bar.lo

66
gnu/packages/sawfish.scm

@ -0,0 +1,66 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages sawfish)
#:use-module ((guix licenses) #:select (gpl2+))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages gdbm)
#:use-module (gnu packages libffi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages readline)
#:use-module (gnu packages texinfo))
(define-public librep
(package
(name "librep")
(version "0.92.4")
(source (origin
(method url-fetch)
(uri (string-append "http://download.tuxfamily.org/" name "/"
name "_" version ".tar.xz"))
(sha256
(base32
"0297m24p2y8j3wavf8qqyriic7ls2392cmfn96y0pi83r5qckc25"))
(patches (list (search-patch "librep-rules.mk.patch")))))
(build-system gnu-build-system)
(native-inputs
`(("makeinfo" ,texinfo)
("pkg-config" ,pkg-config)))
(inputs
`(("gdbm" ,gdbm)
("gmp" ,gmp)
("libffi" ,libffi)
("readline" ,readline)))
(native-search-paths
(list (search-path-specification
(variable "REP_DL_LOAD_PATH")
(files '("lib/rep")))))
(home-page "http://sawfish.wikia.com/wiki/Librep")
(synopsis "Lisp system for sawfish")
(description
"Librep is a dialect of Lisp, designed to be used both as an extension
language for applications and as a general purpose programming language. It
was originally written to be mostly-compatible with Emacs Lisp, but has
subsequently diverged markedly. Its aim is to combine the best features of
Scheme and Common Lisp and provide an environment that is comfortable for
implementing both small and large scale systems.")
(license gpl2+)))
Loading…
Cancel
Save