From 4100fe9d3375065b39a7723867c14dff48b94e6b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Jan 2015 17:34:08 +0100 Subject: gnu: openjpeg: update home page URL. * gnu/packages/image.scm (openjpeg)[home-page]: Update URL. --- gnu/packages/image.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 7a22bf4942..c9a7fa39e7 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2014 Alex Kost +;;; Copyright © 2014 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -217,7 +218,7 @@ In addition to the basic codec, various other features are under development, among them the JP2 and MJ2 (Motion JPEG 2000) file formats, an indexing tool useful for the JPIP protocol, JPWL-tools for error-resilience, a Java-viewer for j2k-images, ...") - (home-page "http://jbig2dec.sourceforge.net/") + (home-page "https://code.google.com/p/openjpeg/") (license license:bsd-2))) (define-public giflib -- cgit v1.2.3 From 6140b9d8757aa1cf0e9daf4c5fd325e77557e078 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Jan 2015 17:40:13 +0100 Subject: gnu: Add openjpeg-1. * gnu/packages/image.scm (openjpeg-1): New variable. --- gnu/packages/image.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index c9a7fa39e7..d979e83510 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -221,6 +221,19 @@ error-resilience, a Java-viewer for j2k-images, ...") (home-page "https://code.google.com/p/openjpeg/") (license license:bsd-2))) +(define-public openjpeg-1 + (package (inherit openjpeg) + (name "openjpeg") + (version "1.5.2") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/openjpeg.mirror/" name "-" + version ".tar.gz")) + (sha256 + (base32 "11waq9w215zvzxrpv40afyd18qf79mxc28fda80bm3ax98cpppqm")))))) + (define-public giflib (package (name "giflib") -- cgit v1.2.3 From da2021bca1b54b6272b7fba2d6423b771161d619 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Jan 2015 17:47:37 +0100 Subject: gnu: openjpeg: Update to 2.0.1. * gnu/packages/image.scm (openjpeg): Update to 2.0.1. --- gnu/packages/image.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index d979e83510..cdb9c1cfb2 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -188,16 +188,15 @@ work.") (define-public openjpeg (package (name "openjpeg") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri - (string-append "http://openjpeg.googlecode.com/files/" name "-" - version ".tar.gz")) + (string-append "mirror://sourceforge/openjpeg.mirror/" name "-" + version ".tar.gz")) (sha256 - (base32 "1n05yrmscpgksrh2kfh12h18l0lw9j03mgmvwcg3hm8m0lwgak9k")))) - + (base32 "1c2xc3nl2mg511b63rk7hrckmy14681p1m44mzw3n1fyqnjm0b0z")))) (build-system cmake-build-system) (arguments ;; Trying to run `$ make check' results in a no rule fault. -- cgit v1.2.3 From 927d4d9bd84eece87ea455a927376ee6ddbfb46e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Jan 2015 17:43:18 +0100 Subject: gnu: poppler: build with openjpeg and lcms * gnu/packages/pdf.scm (poppler): build poppler with openjpeg 1.5 and lcms. --- gnu/packages/pdf.scm | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 7d5100af24..0f9098d8cb 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014 Mark H Weaver +;;; Copyright © 2014 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -55,12 +56,13 @@ ;; introspection: no ;; use gtk-doc: no ;; use libcurl: no - ;; use libopenjpeg: no (inputs `(("fontconfig" ,fontconfig) ("freetype" ,freetype) ("libjpeg-8" ,libjpeg-8) ("libpng" ,libpng) ("libtiff" ,libtiff) + ("lcms" ,lcms) + ("openjpeg-1" ,openjpeg-1) ("zlib" ,zlib) ;; To build poppler-glib (as needed by Evince), we need Cairo and @@ -75,8 +77,18 @@ (arguments `(#:tests? #f ; no test data provided with the tarball #:configure-flags - '("--enable-xpdf-headers" ; to install header files - "--enable-zlib"))) + '("--enable-libopenjpeg" + "--enable-xpdf-headers" ; to install header files + "--enable-zlib") + #:phases + (alist-cons-before + 'configure 'setenv + (lambda _ + (setenv "CPATH" + (string-append (assoc-ref %build-inputs "openjpeg-1") + "/include/openjpeg-1.5" + ":" (or (getenv "CPATH") "")))) + %standard-phases))) (synopsis "PDF rendering library") (description "Poppler is a PDF rendering library based on the xpdf-3.0 code base.") -- cgit v1.2.3 From c2d9355c369975c22f50c7f782c7e8fad8d89ab6 Mon Sep 17 00:00:00 2001 From: Jason Self Date: Fri, 9 Jan 2015 21:19:43 -0800 Subject: gnu: linux-libre: Update to 3.18.2 * gnu/packages/linux.scm (linux-libre): Update to version 3.18.2. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a2708a290f..6e5aaa1634 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -192,7 +192,7 @@ for SYSTEM, or #f if there is no configuration for SYSTEM." #f))) (define-public linux-libre - (let* ((version "3.18.1") + (let* ((version "3.18.2") (build-phase '(lambda* (#:key system inputs #:allow-other-keys #:rest args) ;; Apply the neat patch. @@ -265,7 +265,7 @@ for SYSTEM, or #f if there is no configuration for SYSTEM." (uri (linux-libre-urls version)) (sha256 (base32 - "0yj6sz9cvsbhrc9jksr4wgg63crzmqh65903l7bq9k0gz1f3x1s8")))) + "0wji58x0zci13a499v6kbz3pyhs2gk6wsbv3fia8valxgbcppyhp")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) ("bc" ,bc) -- cgit v1.2.3 From 4923e06f2168632d1ef40bfcd1b36a43de85e561 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 11 Jan 2015 09:29:10 +0800 Subject: gnu: Move mozjs and nspr to (gnu packages gnuzilla). * gnu/packages/polkit.scm (mozjs, nspr): Move to... * gnu/packages/gnuzilla.scm (mozjs, nspr): ... here. New variables. --- gnu/packages/gnuzilla.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++ gnu/packages/polkit.scm | 75 ++--------------------------------------------- 2 files changed, 74 insertions(+), 73 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 3ebc20dffa..a60ff76298 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -42,6 +42,78 @@ #:use-module (gnu packages yasm) #:use-module (gnu packages zip)) +(define-public mozjs + (package + (name "mozjs") + (version "17.0.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://ftp.mozilla.org/pub/mozilla.org/js/" + name version ".tar.gz")) + (sha256 + (base32 + "1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij")))) + (build-system gnu-build-system) + (native-inputs + `(("perl", perl) + ("python" ,python-2))) + (arguments + `(#:phases + (alist-cons-before + 'configure 'chdir + (lambda _ + (chdir "js/src")) + (alist-replace + 'configure + ;; configure fails if it is followed by SHELL and CONFIG_SHELL + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "SHELL" (which "sh")) + (setenv "CONFIG_SHELL" (which "sh")) + (zero? (system* + "./configure" (string-append "--prefix=" out))))) + %standard-phases)))) + (home-page + "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey") + (synopsis "Mozilla javascript engine") + (description "SpiderMonkey is Mozilla's JavaScript engine written +in C/C++.") + (license license:mpl2.0))) ; and others for some files + +(define-public nspr + (package + (name "nspr") + (version "4.10.7") + (source (origin + (method url-fetch) + (uri (string-append + "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" + version "/src/nspr-" version ".tar.gz")) + (sha256 + (base32 + "0f1ri51yzjikigf6z31g03cdv6sgi9gw2c3vvv39psk3m37zb6iq")))) + (build-system gnu-build-system) + (native-inputs + `(("perl", perl))) + (arguments + `(#:tests? #f ; no check target + #:configure-flags + `("--enable-64bit") + #:phases + (alist-cons-before + 'configure 'chdir + (lambda _ + (chdir "nspr")) + %standard-phases))) + (home-page + "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR") + (synopsis "Netscape API for system level and libc-like functions") + (description "Netscape Portable Runtime (NSPR) provides a +platform-neutral API for system level and libc-like functions. It is used +in the Mozilla clients.") + (license license:mpl2.0))) + (define-public icecat (package (name "icecat") diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm index 2be1d0b425..572d52404b 100644 --- a/gnu/packages/polkit.scm +++ b/gnu/packages/polkit.scm @@ -17,13 +17,14 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages polkit) - #:use-module ((guix licenses) #:select (lgpl2.0+ mpl2.0)) + #:use-module ((guix licenses) #:select (lgpl2.0+)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages glib) + #:use-module (gnu packages gnuzilla) #:use-module (gnu packages linux) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -31,78 +32,6 @@ #:use-module (gnu packages qt) #:use-module (gnu packages xml)) -(define-public mozjs - (package - (name "mozjs") - (version "17.0.0") - (source (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/mozilla.org/js/" - name version ".tar.gz")) - (sha256 - (base32 - "1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij")))) - (build-system gnu-build-system) - (native-inputs - `(("perl", perl) - ("python" ,python-2))) - (arguments - `(#:phases - (alist-cons-before - 'configure 'chdir - (lambda _ - (chdir "js/src")) - (alist-replace - 'configure - ;; configure fails if it is followed by SHELL and CONFIG_SHELL - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (setenv "SHELL" (which "sh")) - (setenv "CONFIG_SHELL" (which "sh")) - (zero? (system* - "./configure" (string-append "--prefix=" out))))) - %standard-phases)))) - (home-page - "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey") - (synopsis "Mozilla javascript engine") - (description "SpiderMonkey is Mozilla's JavaScript engine written -in C/C++.") - (license mpl2.0))) ; and others for some files - -(define-public nspr - (package - (name "nspr") - (version "4.10.7") - (source (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" - version "/src/nspr-" version ".tar.gz")) - (sha256 - (base32 - "0f1ri51yzjikigf6z31g03cdv6sgi9gw2c3vvv39psk3m37zb6iq")))) - (build-system gnu-build-system) - (native-inputs - `(("perl", perl))) - (arguments - `(#:tests? #f ; no check target - #:configure-flags - `("--enable-64bit") - #:phases - (alist-cons-before - 'configure 'chdir - (lambda _ - (chdir "nspr")) - %standard-phases))) - (home-page - "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR") - (synopsis "Netscape API for system level and libc-like functions") - (description "Netscape Portable Runtime (NSPR) provides a -platform-neutral API for system level and libc-like functions. It is used -in the Mozilla clients.") - (license mpl2.0))) - (define-public polkit (package (name "polkit") -- cgit v1.2.3 From 1aaaff1a7b09d6cf30ebe82a80712f53b6e20d09 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 6 Jan 2015 23:57:31 +0800 Subject: gnu: Add nss. * gnu/packages/patches/nss-pkgconfig.patch: New file. * gnu-system.scm (dist_patch_DATA): Add it. * gnu/packages/gnuzilla.scm (nss): New variable. --- gnu-system.am | 1 + gnu/packages/gnuzilla.scm | 96 +++++++++++++ gnu/packages/patches/nss-pkgconfig.patch | 225 +++++++++++++++++++++++++++++++ 3 files changed, 322 insertions(+) create mode 100644 gnu/packages/patches/nss-pkgconfig.patch (limited to 'gnu/packages') diff --git a/gnu-system.am b/gnu-system.am index 4086067b15..6453268623 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -422,6 +422,7 @@ dist_patch_DATA = \ gnu/packages/patches/mupdf-buildsystem-fix.patch \ gnu/packages/patches/mutt-CVE-2014-9116.patch \ gnu/packages/patches/net-tools-bitrot.patch \ + gnu/packages/patches/nss-pkgconfig.patch \ gnu/packages/patches/nvi-assume-preserve-path.patch \ gnu/packages/patches/orpheus-cast-errors-and-includes.patch \ gnu/packages/patches/ots-no-include-missing-file.patch \ diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index a60ff76298..8e397464ac 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2013, 2014 Ludovic Courtès ;;; Copyright © 2014 Mark H Weaver +;;; Copyright © 2015 Sou Bunnbu ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (gnu packages databases) #:use-module (gnu packages glib) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -114,6 +116,100 @@ platform-neutral API for system level and libc-like functions. It is used in the Mozilla clients.") (license license:mpl2.0))) +(define-public nss + (package + (name "nss") + (version "3.17.3") + (source (origin + (method url-fetch) + (uri (string-append + "ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/" + "releases/NSS_3_17_3_RTM/src/nss-3.17.3.tar.gz")) + (sha256 + (base32 + "1m91z80x4zh1mxgf53bl33lp43gn1wxxx0y26mgz511gb81ykmgl")) + ;; Create nss.pc and nss-config. + (patches (list (search-patch "nss-pkgconfig.patch"))))) + (build-system gnu-build-system) + (outputs '("out" "bin")) + (arguments + '(#:parallel-build? #f ; failed + #:make-flags + (let* ((out (assoc-ref %outputs "out")) + (nspr (string-append (assoc-ref %build-inputs "nspr"))) + (rpath (string-append "-Wl,-rpath=" out "/lib/nss"))) + (list "-C" "nss" (string-append "PREFIX=" out) + "NSDISTMODE=copy" + "NSS_USE_SYSTEM_SQLITE=1" + (string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr") + ;; Add $out/lib/nss to RPATH. + (string-append "RPATH=" rpath) + (string-append "LDFLAGS=" rpath))) + #:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 ftw) + (ice-9 match) + (srfi srfi-26)) + #:imported-modules ((guix build gnu-build-system) + (guix build utils)) + #:phases + (alist-replace + 'configure + (lambda* (#:key system inputs #:allow-other-keys) + ;; Tells NSS to build for the 64-bit ABI if we are 64-bit system. + (when (string-prefix? "x86_64" system) + (setenv "USE_64" "1")) + #t) + (alist-replace + 'check + (lambda _ + ;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for testing. + ;; The later requires a working DNS or /etc/hosts. + (setenv "DOMSUF" "(none)") + (setenv "USE_IP" "TRUE") + (setenv "IP_ADDRESS" "127.0.0.1") + (zero? (system* "./nss/tests/all.sh"))) + (alist-replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append (assoc-ref outputs "bin") "/bin")) + (inc (string-append out "/include/nss")) + (lib (string-append out "/lib/nss")) + (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>)) + ((obj) (string-append "dist/" obj))))) + ;; Install nss-config to $out/bin. + (mkdir-p (string-append out "/bin")) + (copy-file (string-append obj "/bin/nss-config") + (string-append out "/bin/nss-config")) + (delete-file (string-append obj "/bin/nss-config")) + ;; Install nss.pc to $out/lib/pkgconfig. + (mkdir-p (string-append out "/lib/pkgconfig")) + (copy-file (string-append obj "/lib/pkgconfig/nss.pc") + (string-append out "/lib/pkgconfig/nss.pc")) + (delete-file (string-append obj "/lib/pkgconfig/nss.pc")) + (rmdir (string-append obj "/lib/pkgconfig")) + ;; Install other files. + (copy-recursively "dist/public/nss" inc) + (copy-recursively (string-append obj "/bin") bin) + (copy-recursively (string-append obj "/lib") lib))) + %standard-phases))))) + (inputs + `(("sqlite" ,sqlite) + ("zlib" ,zlib))) + (propagated-inputs `(("nspr" ,nspr))) ; required by nss.pc. + (native-inputs `(("perl" ,perl))) + (home-page + "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS") + (synopsis "Network Security Services") + (description + "Network Security Services (NSS) is a set of libraries designed to support +cross-platform development of security-enabled client and server applications. +Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, +PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security +standards.") + (license license:mpl2.0))) + (define-public icecat (package (name "icecat") diff --git a/gnu/packages/patches/nss-pkgconfig.patch b/gnu/packages/patches/nss-pkgconfig.patch new file mode 100644 index 0000000000..da5c48979e --- /dev/null +++ b/gnu/packages/patches/nss-pkgconfig.patch @@ -0,0 +1,225 @@ +Description: Create nss.pc and nss-config +Author: Lars Wendler +Source: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/nss/files/nss-3.17.1-gentoo-fixups.patch + +Modifications: + Change libdir from ${prefix}/lib64 to ${prefix}/lib/nss. + Remove optional patching in nss/Makefile. + +--- nss-3.17.1/nss/config/Makefile ++++ nss-3.17.1/nss/config/Makefile +@@ -0,0 +1,40 @@ ++CORE_DEPTH = .. ++DEPTH = .. ++ ++include $(CORE_DEPTH)/coreconf/config.mk ++ ++NSS_MAJOR_VERSION = `grep "NSS_VMAJOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_MINOR_VERSION = `grep "NSS_VMINOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_PATCH_VERSION = `grep "NSS_VPATCH" ../lib/nss/nss.h | awk '{print $$3}'` ++PREFIX = /usr ++ ++all: export libs ++ ++export: ++ # Create the nss.pc file ++ mkdir -p $(DIST)/lib/pkgconfig ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@exec_prefix@,\$${prefix}," \ ++ -e "s,@libdir@,\$${prefix}/lib/nss," \ ++ -e "s,@includedir@,\$${prefix}/include/nss," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION),g" \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss.pc.in > nss.pc ++ chmod 0644 nss.pc ++ cp nss.pc $(DIST)/lib/pkgconfig ++ ++ # Create the nss-config script ++ mkdir -p $(DIST)/bin ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION)," \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss-config.in > nss-config ++ chmod 0755 nss-config ++ cp nss-config $(DIST)/bin ++ ++libs: ++ ++dummy: all export libs ++ +--- nss-3.17.1/nss/config/nss-config.in ++++ nss-3.17.1/nss/config/nss-config.in +@@ -0,0 +1,145 @@ ++#!/bin/sh ++ ++prefix=@prefix@ ++ ++major_version=@NSS_MAJOR_VERSION@ ++minor_version=@NSS_MINOR_VERSION@ ++patch_version=@NSS_PATCH_VERSION@ ++ ++usage() ++{ ++ cat <&2 ++fi ++ ++lib_ssl=yes ++lib_smime=yes ++lib_nss=yes ++lib_nssutil=yes ++ ++while test $# -gt 0; do ++ case "$1" in ++ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; ++ *) optarg= ;; ++ esac ++ ++ case $1 in ++ --prefix=*) ++ prefix=$optarg ++ ;; ++ --prefix) ++ echo_prefix=yes ++ ;; ++ --exec-prefix=*) ++ exec_prefix=$optarg ++ ;; ++ --exec-prefix) ++ echo_exec_prefix=yes ++ ;; ++ --includedir=*) ++ includedir=$optarg ++ ;; ++ --includedir) ++ echo_includedir=yes ++ ;; ++ --libdir=*) ++ libdir=$optarg ++ ;; ++ --libdir) ++ echo_libdir=yes ++ ;; ++ --version) ++ echo ${major_version}.${minor_version}.${patch_version} ++ ;; ++ --cflags) ++ echo_cflags=yes ++ ;; ++ --libs) ++ echo_libs=yes ++ ;; ++ ssl) ++ lib_ssl=yes ++ ;; ++ smime) ++ lib_smime=yes ++ ;; ++ nss) ++ lib_nss=yes ++ ;; ++ nssutil) ++ lib_nssutil=yes ++ ;; ++ *) ++ usage 1 1>&2 ++ ;; ++ esac ++ shift ++done ++ ++# Set variables that may be dependent upon other variables ++if test -z "$exec_prefix"; then ++ exec_prefix=`pkg-config --variable=exec_prefix nss` ++fi ++if test -z "$includedir"; then ++ includedir=`pkg-config --variable=includedir nss` ++fi ++if test -z "$libdir"; then ++ libdir=`pkg-config --variable=libdir nss` ++fi ++ ++if test "$echo_prefix" = "yes"; then ++ echo $prefix ++fi ++ ++if test "$echo_exec_prefix" = "yes"; then ++ echo $exec_prefix ++fi ++ ++if test "$echo_includedir" = "yes"; then ++ echo $includedir ++fi ++ ++if test "$echo_libdir" = "yes"; then ++ echo $libdir ++fi ++ ++if test "$echo_cflags" = "yes"; then ++ echo -I$includedir ++fi ++ ++if test "$echo_libs" = "yes"; then ++ libdirs="" ++ if test -n "$lib_ssl"; then ++ libdirs="$libdirs -lssl${major_version}" ++ fi ++ if test -n "$lib_smime"; then ++ libdirs="$libdirs -lsmime${major_version}" ++ fi ++ if test -n "$lib_nss"; then ++ libdirs="$libdirs -lnss${major_version}" ++ fi ++ if test -n "$lib_nssutil"; then ++ libdirs="$libdirs -lnssutil${major_version}" ++ fi ++ echo $libdirs ++fi ++ +--- nss-3.17.1/nss/config/nss.pc.in ++++ nss-3.17.1/nss/config/nss.pc.in +@@ -0,0 +1,12 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: NSS ++Description: Network Security Services ++Version: @NSS_MAJOR_VERSION@.@NSS_MINOR_VERSION@.@NSS_PATCH_VERSION@ ++Requires: nspr >= 4.8 ++Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 ++Cflags: -I${includedir} ++ +--- nss-3.17.1/nss/manifest.mn ++++ nss-3.17.1/nss/manifest.mn +@@ -10,7 +10,7 @@ + + RELEASE = nss + +-DIRS = coreconf lib cmd ++DIRS = coreconf lib cmd config + + ifdef NSS_BUILD_GTESTS + DIRS += external_tests -- cgit v1.2.3 From cd287ba16211ceec970c5af698e52d475952b183 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Fri, 9 Jan 2015 21:37:30 +0800 Subject: gnu: Add ninja. * gnu/packages/ninja.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. --- gnu-system.am | 1 + gnu/packages/ninja.scm | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 gnu/packages/ninja.scm (limited to 'gnu/packages') diff --git a/gnu-system.am b/gnu-system.am index 6453268623..c29b13990b 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES = \ gnu/packages/ncurses.scm \ gnu/packages/netpbm.scm \ gnu/packages/nettle.scm \ + gnu/packages/ninja.scm \ gnu/packages/node.scm \ gnu/packages/noweb.scm \ gnu/packages/ntp.scm \ diff --git a/gnu/packages/ninja.scm b/gnu/packages/ninja.scm new file mode 100644 index 0000000000..fe3f955b5d --- /dev/null +++ b/gnu/packages/ninja.scm @@ -0,0 +1,87 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015 Sou Bunnbu +;;; +;;; 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 . + +(define-module (gnu packages ninja) + #:use-module ((guix licenses) #:select (asl2.0)) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages) + #:use-module (gnu packages python)) + +(define-public ninja + (package + (name "ninja") + (version "1.5.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/martine/ninja/" + "archive/v" version ".tar.gz")) + (sha256 + (base32 + "1h3yfwcfl61v493vna6jia2fizh8rpig7qw2504cvkr6gid3p5bw")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (alist-replace + 'configure + (lambda _ + (substitute* "src/subprocess-posix.cc" + (("/bin/sh") (which "sh")))) + (alist-replace + 'build + (lambda _ + (zero? (system* "./configure.py" "--bootstrap"))) + (alist-replace + 'check + (lambda _ + (and (zero? (system* "./configure.py")) + (zero? (system* "./ninja" "ninja_test")) + ;; SubprocessTest.SetWithLots fails with: + ;; Raise [ulimit -n] well above 1025 to make this test go. + ;; Skip it. + ;; + ;; SubprocessTest.InterruptChild fails when using 'system*': + ;; *** Failure in src/subprocess_test.cc:83 + ;; ExitInterrupted == subproc->Finish() + ;; Pass it by using 'system' instead of 'system*'. + (zero? (system (string-append + "./ninja_test " + "--gtest_filter=" + "-SubprocessTest.SetWithLots"))))) + (alist-replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/ninja"))) + (mkdir-p bin) + (copy-file "ninja" (string-append bin "/ninja")) + (mkdir-p doc) + (copy-file "doc/manual.asciidoc" + (string-append doc "/manual.asciidoc")))) + %standard-phases)))))) + (native-inputs `(("python" ,python-2))) + (home-page "http://martine.github.io/ninja/") + (synopsis "Small build system") + (description + "Ninja is a small build system with a focus on speed. It differs from +other build systems in two major respects: it is designed to have its input +files generated by a higher-level build system, and it is designed to run +builds as fast as possible.") + (license asl2.0))) -- cgit v1.2.3 From 5b490ab52f2cdb1b4cd72c90d460af3666da61f7 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 3 Jan 2015 14:12:01 +0800 Subject: gnu: qt: Update to 5.4.0. * gnu/packages/qt.scm (qt): Update to 5.4.0. [origin]: Add snippet. --- gnu/packages/qt.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 30b772d4d9..42df93321d 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014 Andreas Enge +;;; Copyright © 2015 Sou Bunnbu ;;; ;;; This file is part of GNU Guix. ;;; @@ -81,7 +82,7 @@ X11 (yet).") (define-public qt (package (name "qt") - (version "5.3.2") + (version "5.4.0") (source (origin (method url-fetch) (uri (string-append "http://download.qt-project.org/official_releases/qt/" @@ -91,7 +92,14 @@ X11 (yet).") version ".tar.xz")) (sha256 (base32 - "1w4v53889kqpwxw45wcqz5bi6zx8xp434jpafk1vlmyb8hrzjnvz")))) + "176351k8ngczb324i8bbkrsz9pby7cvy2qnixfjwybzxp53xzndj")) + (snippet + '(begin + ;; Remove broken symlinks. + (delete-file "qtwebengine/src/3rdparty/chromium/third_party/\ +mesa/src/src/gallium/state_trackers/d3d1x/w32api") + (delete-file "qtwebengine/src/3rdparty/chromium/third_party/\ +webrtc/tools/e2e_quality/audio/perf"))))) (build-system gnu-build-system) (propagated-inputs `(("mesa" ,mesa))) @@ -129,7 +137,9 @@ X11 (yet).") (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* '("configure" "qtbase/configure") - (("/bin/pwd") (which "pwd"))) + (("/bin/pwd") (which "pwd"))) + (substitute* "qtbase/src/corelib/global/global.pri" + (("/bin/ls") (which "ls"))) ;; do not pass "--enable-fast-install", which makes the ;; configure process fail (zero? (system* -- cgit v1.2.3 From 0009ed71ad288358cbc7828954b5e1a3f18fd525 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 11 Jan 2015 19:51:51 +0800 Subject: gnu: qt: Add more inputs. * gnu/packages/qt.scm (qt): Add expat, pciutils, libxcomposite, libxcursor, libxfixes, libxinerama, libxml2, libxrandr, libxslt, libxtst, mtdev, nss, pcre, sqlite, eudev to 'inputs'. Add bison, flex, gperf, ninja, python-2, ruby, which to 'native-inputs'. --- gnu/packages/qt.scm | 47 ++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 5 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 42df93321d..0d6bbc8fc6 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -27,19 +27,27 @@ #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) + #:use-module (gnu packages flex) #:use-module (gnu packages gl) #:use-module (gnu packages glib) + #:use-module (gnu packages gnuzilla) + #:use-module (gnu packages gperf) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages databases) + #:use-module (gnu packages ninja) #:use-module (gnu packages openssl) + #:use-module (gnu packages pciutils) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages ruby) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xml)) (define-public libxkbcommon (package @@ -106,21 +114,34 @@ webrtc/tools/e2e_quality/audio/perf"))))) (inputs `(("alsa-lib" ,alsa-lib) ("dbus" ,dbus) + ("expat" ,expat) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("glib" ,glib) ("icu4c" ,icu4c) ("libjpeg" ,libjpeg) + ("libpci" ,pciutils) ("libpng" ,libpng) ("libx11" ,libx11) + ("libxcomposite" ,libxcomposite) + ("libxcursor" ,libxcursor) + ("libxfixes" ,libxfixes) ("libxi" ,libxi) + ("libxinerama" ,libxinerama) ("libxkbcommon" ,libxkbcommon) + ("libxml2" ,libxml2) + ("libxrandr" ,libxrandr) ("libxrender" ,libxrender) + ("libxslt" ,libxslt) + ("libxtst" ,libxtst) + ("mtdev" ,mtdev) ("mysql" ,mysql) + ("nss" ,nss) ("openssl" ,openssl) ("pulseaudio" ,pulseaudio) - ("python-wrapper" ,python-wrapper) - ("ruby" ,ruby) + ("pcre" ,pcre) + ("sqlite" ,sqlite) + ("udev" ,eudev) ("xcb-util" ,xcb-util) ("xcb-util-image" ,xcb-util-image) ("xcb-util-keysyms" ,xcb-util-keysyms) @@ -128,8 +149,15 @@ webrtc/tools/e2e_quality/audio/perf"))))) ("xcb-util-wm" ,xcb-util-wm) ("zlib" ,zlib))) (native-inputs - `(("perl" ,perl) - ("pkg-config" ,pkg-config))) + `(("bison" ,bison) + ("flex" ,flex) + ("gperf" ,gperf) + ("ninja" ,ninja) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python" ,python-2) + ("ruby" ,ruby) + ("which" ,(@ (gnu packages which) which)))) (arguments `(#:phases (alist-replace @@ -140,6 +168,12 @@ webrtc/tools/e2e_quality/audio/perf"))))) (("/bin/pwd") (which "pwd"))) (substitute* "qtbase/src/corelib/global/global.pri" (("/bin/ls") (which "ls"))) + (substitute* "qtwebengine/src/3rdparty/chromium/build/common.gypi" + (("/bin/echo") (which "echo"))) + (substitute* "qtwebengine/src/3rdparty/chromium/third_party/\ +WebKit/Source/build/scripts/scripts.gypi" + (("/usr/bin/gcc") (which "gcc"))) + (setenv "NINJA_PATH" (which "ninja")) ;; do not pass "--enable-fast-install", which makes the ;; configure process fail (zero? (system* @@ -148,6 +182,9 @@ webrtc/tools/e2e_quality/audio/perf"))))) "-prefix" out "-opensource" "-confirm-license" + "-system-sqlite" + ;; explicitly link with openssl instead of dlopening it + "-openssl-linked" ;; explicitly link with dbus instead of dlopening it "-dbus-linked" ;; drop special machine instructions not supported -- cgit v1.2.3