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 @@ (define-public openjpeg 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 @@ (define-public openjpeg (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 @@ (define-public jbig2dec (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 @@ (define-public poppler ;; 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 @@ (define-public poppler (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 @@ (define (lookup file) #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 @@ (define-public linux-libre (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 @@ (define-module (gnu packages gnuzilla) #: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 @@ (define-module (gnu packages polkit) #: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 @@ (define-module (gnu packages gnuzilla) #: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 @@ (define-public nspr 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 @@ (define-public libxkbcommon (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 @@ (define-public qt 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 @@ (define-public qt (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 @@ (define-module (gnu packages qt) #: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 @@ (define-public qt (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 @@ (define-public qt ("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 @@ (define-public qt (("/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 @@ (define-public qt "-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