From 3e4e74c10ec1bf57ffcaed987b75127382908697 Mon Sep 17 00:00:00 2001 From: Carlo Zancanaro Date: Tue, 2 Apr 2019 22:36:57 +1100 Subject: gnu: kodi: Allow connecting to HTTPS sources. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/kodi.scm (kodi)[patches]: Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 6c39c3fef5..a835388b64 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -956,6 +956,7 @@ dist_patch_DATA = \ %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \ %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \ %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \ + %D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \ %D%/packages/patches/kodi-skip-test-449.patch \ %D%/packages/patches/laby-make-install.patch \ %D%/packages/patches/lcms-CVE-2018-16435.patch \ -- cgit 1.4.1 From ec9d9325628e0df0a43045194d5e1fc8b17d5e44 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 3 Apr 2019 23:58:19 +0200 Subject: gnu: Add ocaml-dose3. * gnu/packages/ocaml.scm (ocaml-dose3): New variable. * gnu/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch: New file. * gnu/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch: New file. * gnu/packages/patches/ocaml-dose3-dont-make-printconf.patch: New file. * gnu/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch: New file. * gnu/local.mk (dist_patch_DATA): Add them. --- gnu/local.mk | 4 + gnu/packages/ocaml.scm | 52 ++++++++ ...-as-dependency-to-dose3.common-in-META.in.patch | 25 ++++ .../patches/ocaml-dose3-Fix-for-ocaml-4.06.patch | 52 ++++++++ .../patches/ocaml-dose3-Install-mli-cmx-etc.patch | 133 +++++++++++++++++++++ .../patches/ocaml-dose3-dont-make-printconf.patch | 9 ++ 6 files changed, 275 insertions(+) create mode 100644 gnu/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch create mode 100644 gnu/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch create mode 100644 gnu/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch create mode 100644 gnu/packages/patches/ocaml-dose3-dont-make-printconf.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index a835388b64..6815fa8482 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1105,6 +1105,10 @@ dist_patch_DATA = \ %D%/packages/patches/ocaml-CVE-2015-8869.patch \ %D%/packages/patches/ocaml-Add-a-.file-directive.patch \ %D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \ + %D%/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch \ + %D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \ + %D%/packages/patches/ocaml-dose3-dont-make-printconf.patch \ + %D%/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch \ %D%/packages/patches/omake-fix-non-determinism.patch \ %D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch \ diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 04d5a84d1a..0613bc29c6 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -57,6 +57,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages sdl) #:use-module (gnu packages sqlite) #:use-module (gnu packages tex) @@ -391,6 +392,57 @@ underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.") ;; With static-linking exception license:lgpl2.1+)))) +(define-public ocaml-dose3 + (package + (name "ocaml-dose3") + (version "5.0.1") + (source (origin + (method url-fetch) + (uri "https://gforge.inria.fr/frs/download.php/file/36063/dose3-5.0.1.tar.gz") + (sha256 + (base32 + "00yvyfm4j423zqndvgc1ycnmiffaa2l9ab40cyg23pf51qmzk2jm")) + (patches + (search-patches + "ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch" + "ocaml-dose3-Fix-for-ocaml-4.06.patch" + "ocaml-dose3-dont-make-printconf.patch" + "ocaml-dose3-Install-mli-cmx-etc.patch")))) + (build-system ocaml-build-system) + (arguments + `(#:configure-flags + (list (string-append "SHELL=" + (assoc-ref %build-inputs "bash") + "/bin/sh")) + #:make-flags + (list (string-append "LIBDIR=" + (assoc-ref %outputs "out") + "/lib/ocaml/site-lib")))) + (propagated-inputs + `(("ocaml-graph" ,ocaml-graph) + ("ocaml-cudf" ,ocaml-cudf) + ("ocaml-extlib" ,ocaml-extlib) + ("ocaml-re" ,ocaml-re))) + (native-inputs + `(("perl" ,perl) + ("python" ,python-2) ; for a test script + ("python2-pyyaml" ,python2-pyyaml) ; for a test script + ("ocaml-extlib" ,ocaml-extlib) + ("ocamlbuild" ,ocamlbuild) + ("ocaml-cppo" ,ocaml-cppo))) + (home-page "http://www.mancoosi.org/software/") + (synopsis "Package distribution management framework") + (description "Dose3 is a framework made of several OCaml libraries for +managing distribution packages and their dependencies. Though not tied to +any particular distribution, dose3 constitutes a pool of libraries which +enable analyzing packages coming from various distributions. Besides basic +functionalities for querying and setting package properties, dose3 also +implements algorithms for solving more complex problems such as monitoring +package evolutions, correct and complete dependency resolution and +repository-wide uninstallability checks.") + ;; with static-linking exception + (license license:lgpl2.1+))) + (define-public ocaml-opam-file-format (package (name "ocaml-opam-file-format") diff --git a/gnu/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch b/gnu/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch new file mode 100644 index 0000000000..d2cc44c784 --- /dev/null +++ b/gnu/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch @@ -0,0 +1,25 @@ +From b94cf24739818e5aff397e0a83b19ea32dc81f42 Mon Sep 17 00:00:00 2001 +From: Louis Gesbert +Date: Tue, 6 Feb 2018 10:15:45 +0100 +Subject: [PATCH 3/3] Add "unix" as dependency to dose3.common in META.in + +--- + META.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/META.in b/META.in +index aa2cd8d..0f9d337 100644 +--- a/META.in ++++ b/META.in +@@ -8,7 +8,7 @@ package "common" ( + version = "@PACKAGE_VERSION@" + archive(byte) = "common.cma" + archive(native) = "common.cmxa" +-requires = "extlib, re.pcre, cudf, @ZIP@, @BZ2@" ++requires = "extlib, re.pcre, cudf, unix, @ZIP@, @BZ2@" + ) + + package "algo" ( +-- +2.11.0 + diff --git a/gnu/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch b/gnu/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch new file mode 100644 index 0000000000..2c344af821 --- /dev/null +++ b/gnu/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch @@ -0,0 +1,52 @@ +From aeca7656f499d7f4595319858f242276920e31bb Mon Sep 17 00:00:00 2001 +From: Louis Gesbert +Date: Sat, 2 Dec 2017 12:51:01 +0100 +Subject: [PATCH] Fix for ocaml 4.06 + +--- + common/criteria_lexer.mll | 8 ++++---- + common/util.ml | 2 +- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/common/criteria_lexer.mll b/common/criteria_lexer.mll +index 71f9178..fc4eae3 100644 +--- a/common/criteria_lexer.mll ++++ b/common/criteria_lexer.mll +@@ -18,7 +18,7 @@ + let c = Lexing.lexeme_char lexbuf 2 in (* the delimiter can be any character *) + (* find the terminating delimiter *) + let endpos = +- try String.index_from lexbuf.lex_buffer (lexbuf.lex_start_pos + 3) c with ++ try Bytes.index_from lexbuf.lex_buffer (lexbuf.lex_start_pos + 3) c with + |Invalid_argument _ -> + raise (Format822.Syntax_error ( + Format822.error lexbuf "String too short")) +@@ -27,9 +27,9 @@ + Format822.error lexbuf (Printf.sprintf "cannot find: %c" c))) + in + let len = endpos - (lexbuf.lex_start_pos + 3) in +- let s = String.sub lexbuf.lex_buffer (lexbuf.lex_start_pos + 3) len in +- lexbuf.Lexing.lex_curr_pos <- lexbuf.Lexing.lex_start_pos + ((String.length s)+4); +- s ++ let s = Bytes.sub lexbuf.lex_buffer (lexbuf.lex_start_pos + 3) len in ++ lexbuf.Lexing.lex_curr_pos <- lexbuf.Lexing.lex_start_pos + ((Bytes.length s)+4); ++ Bytes.to_string s + + } + +diff --git a/common/util.ml b/common/util.ml +index 598f266..36ca3d1 100644 +--- a/common/util.ml ++++ b/common/util.ml +@@ -87,7 +87,7 @@ module MakeMessages(X : sig val label : string end) = struct + let clean label = + try + let s = Filename.chop_extension (Filename.basename label) in +- String.capitalize s ++ String.capitalize_ascii s + with Invalid_argument _ -> label + + let create ?(enabled=false) label = +-- +2.11.0 + diff --git a/gnu/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch b/gnu/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch new file mode 100644 index 0000000000..41494e7b3c --- /dev/null +++ b/gnu/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch @@ -0,0 +1,133 @@ +From b5314c20d8e3caf62fe0dc96ad937a2950158b23 Mon Sep 17 00:00:00 2001 +From: Louis Gesbert +Date: Thu, 2 Mar 2017 12:19:56 +0100 +Subject: [PATCH] Install mli, cmx, etc. + +--- + Makefile | 26 +++++++++++++------------- + 1 file changed, 13 insertions(+), 13 deletions(-) + +diff --git a/Makefile b/Makefile +index 09464ff..5044d7f 100644 +--- a/Makefile ++++ b/Makefile +@@ -56,7 +56,7 @@ $(DOSELIBS)/cudf.%: + @for i in _build/cudf/cudf.*; do \ + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -67,7 +67,7 @@ $(DOSELIBS)/common.%: common/*.ml common/*.mli + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -78,7 +78,7 @@ $(DOSELIBS)/versioning.%: versioning/*.ml versioning/*.mli + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -88,7 +88,7 @@ $(DOSELIBS)/algo.%: algo/*.ml algo/*.mli $(DOSELIBS)/common.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -98,7 +98,7 @@ $(DOSELIBS)/debian.%: deb/*.ml deb/*.mli $(DOSELIBS)/pef.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -108,7 +108,7 @@ $(DOSELIBS)/opam.%: opam/*.ml opam/*.mli $(DOSELIBS)/pef.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -118,7 +118,7 @@ $(DOSELIBS)/npm.%: npm/*.ml npm/*.mli $(DOSELIBS)/versioning.% $(DOSELIBS)/pef.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -128,7 +128,7 @@ $(DOSELIBS)/rpm.%: rpm/*.ml $(DOSELIBS)/algo.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -138,7 +138,7 @@ $(DOSELIBS)/pef.%: pef/*.ml pef/*.mli + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -148,7 +148,7 @@ $(DOSELIBS)/csw.%: opencsw/*.ml $(DOSELIBS)/versioning.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ; \ ++ rm -f $(DOSELIBS)/*.mlpack ; \ + fi ; \ + done + +@@ -158,7 +158,7 @@ $(DOSELIBS)/doseparse.%: $(DOSELIBS)/pef.% $(DOSELIBS)/debian.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ; \ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx $(DOSELIBS)/*.ml ; \ ++ rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.ml ; \ + fi ; \ + done + +@@ -168,7 +168,7 @@ $(DOSELIBS)/doseparseNoRpm.%: $(DOSELIBS)/pef.% $(DOSELIBS)/debian.% + if [ -e $$i ]; then \ + cp $$i $(DOSELIBS) ;\ + rm $$i ;\ +- rm -f $(DOSELIBS)/*.mlpack $(DOSELIBS)/*.cmx ;\ ++ rm -f $(DOSELIBS)/*.mlpack ;\ + fi ; \ + done + +@@ -223,7 +223,7 @@ INSTALL_STUFF_ = META + INSTALL_STUFF_ += $(wildcard _build/doselibs/*.cma _build/doselibs/*.cmi) + INSTALL_STUFF_ += $(wildcard _build/doselibs/*.cmxa _build/doselibs/*.cmxs) + INSTALL_STUFF_ += $(wildcard _build/doselibs/*.a) +-#INSTALL_STUFF_ += $(wildcard _build/*/*.mli) ++INSTALL_STUFF_ += $(wildcard _build/doselibs/*.mli) $(wildcard _build/doselibs/*.cmti) $(wildcard _build/doselibs/*.cmx) + INSTALL_STUFF_ += $(wildcard _build/rpm/*.so) + + exclude_cudf = $(wildcard _build/doselibs/*cudf* _build/cudf/*) +-- +2.11.0 + diff --git a/gnu/packages/patches/ocaml-dose3-dont-make-printconf.patch b/gnu/packages/patches/ocaml-dose3-dont-make-printconf.patch new file mode 100644 index 0000000000..84b6a3b81b --- /dev/null +++ b/gnu/packages/patches/ocaml-dose3-dont-make-printconf.patch @@ -0,0 +1,9 @@ +--- a/configure ++++ b/configure +@@ -6552,6 +6552,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 + $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} + fi +- +- +-make printconf -- cgit 1.4.1 From 89647ff1d4abc4674973392cb7e08d14898e3ac9 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 11 Apr 2019 19:30:39 -0500 Subject: gnu: idris: Run tests. * gnu/packages/patches/idris-test-no-node.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/idris.scm (idris)[origin]: Use it. [native-inputs]: New field. [arguments]: Remove "#:tests? #f". Add custom 'check' phase after 'install'. --- gnu/local.mk | 1 + gnu/packages/idris.scm | 23 ++++++++-- gnu/packages/patches/idris-test-no-node.patch | 61 +++++++++++++++++++++++++++ 3 files changed, 81 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/patches/idris-test-no-node.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 6815fa8482..a618516142 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -919,6 +919,7 @@ dist_patch_DATA = \ %D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \ %D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ + %D%/packages/patches/idris-test-no-node.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/inkscape-poppler-compat3.patch \ %D%/packages/patches/intltool-perl-compatibility.patch \ diff --git a/gnu/packages/idris.scm b/gnu/packages/idris.scm index 0f653d8dab..ec3eb15d63 100644 --- a/gnu/packages/idris.scm +++ b/gnu/packages/idris.scm @@ -20,12 +20,14 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages idris) + #:use-module (gnu packages) #:use-module (gnu packages haskell) #:use-module (gnu packages haskell-check) #:use-module (gnu packages haskell-web) #:use-module (gnu packages libffi) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) + #:use-module (gnu packages perl) #:use-module (guix build-system gnu) #:use-module (guix build-system haskell) #:use-module (guix download) @@ -44,8 +46,14 @@ "idris-" version "/idris-" version ".tar.gz")) (sha256 (base32 - "0fn9h58l592j72njwma1ia48h8h87wi2rjqfxs7j2lfmvgfv18fi")))) + "0fn9h58l592j72njwma1ia48h8h87wi2rjqfxs7j2lfmvgfv18fi")) + (patches (search-patches "idris-test-no-node.patch")))) (build-system haskell-build-system) + (native-inputs ;For tests + `(("perl" ,perl) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-golden" ,ghc-tasty-golden) + ("ghc-tasty-rerun" ,ghc-tasty-rerun))) (inputs `(("gmp" ,gmp) ("ncurses" ,ncurses) @@ -78,8 +86,7 @@ ("ghc-vector-binary-instances" ,ghc-vector-binary-instances) ("ghc-zip-archive" ,ghc-zip-archive))) (arguments - `(#:tests? #f ; FIXME: Test suite doesn't run in a sandbox. - #:configure-flags + `(#:configure-flags (list (string-append "--datasubdir=" (assoc-ref %outputs "out") "/lib/idris") "-fFFI" "-fGMP") @@ -98,7 +105,15 @@ (lambda (module) (symlink (string-append modules "/" module) (string-append lib "/" module))) - '("prelude" "base" "contrib" "effects" "pruviloj")))))))) + '("prelude" "base" "contrib" "effects" "pruviloj"))))) + (delete 'check) ;Run check later + (add-after 'install 'check + (lambda* (#:key outputs #:allow-other-keys #:rest args) + (let ((out (assoc-ref outputs "out"))) + (setenv "TASTY_NUM_THREADS" (number->string (parallel-job-count))) + (setenv "IDRIS_CC" "gcc") ;Needed for creating executables + (setenv "PATH" (string-append out "/bin:" (getenv "PATH"))) + (apply (assoc-ref %standard-phases 'check) args))))))) (native-search-paths (list (search-path-specification (variable "IDRIS_LIBRARY_PATH") diff --git a/gnu/packages/patches/idris-test-no-node.patch b/gnu/packages/patches/idris-test-no-node.patch new file mode 100644 index 0000000000..c04ad41a8e --- /dev/null +++ b/gnu/packages/patches/idris-test-no-node.patch @@ -0,0 +1,61 @@ +From 6c52e1b902b869c25e2fe39cff6364143a04da61 Mon Sep 17 00:00:00 2001 +From: Niklas Larsson +Date: Tue, 11 Dec 2018 19:56:22 +0100 +Subject: [PATCH] Only check for Node when required + +--- + test/TestRun.hs | 34 ++++++++++++++++++++-------------- + 1 file changed, 20 insertions(+), 14 deletions(-) + +diff --git a/test/TestRun.hs b/test/TestRun.hs +index c7db9fdcd..4809911f3 100644 +--- a/test/TestRun.hs ++++ b/test/TestRun.hs +@@ -11,6 +11,7 @@ import Data.Proxy + import Data.Typeable + import Options.Applicative + import System.Directory ++import System.Environment + import System.Exit + import System.FilePath (()) + import System.Info +@@ -103,20 +104,25 @@ runTest path flags = do + normalise (x : xs) = x : normalise xs + normalise [] = [] + ++checkNode :: IO () ++checkNode = do ++ nodePath <- findExecutable "node" ++ nodejsPath <- findExecutable "nodejs" ++ let node = nodePath <|> nodejsPath ++ case node of ++ Nothing -> do ++ putStrLn "For running the test suite against Node, node must be installed." ++ exitFailure ++ Just _ -> return () ++ + main :: IO () + main = do +- nodePath <- findExecutable "node" +- nodejsPath <- findExecutable "nodejs" +- let node = nodePath <|> nodejsPath +- case node of +- Nothing -> do +- putStrLn "For running the test suite against Node, node must be installed." +- exitFailure +- Just _ -> do +- defaultMainWithIngredients ingredients $ ++ args <- getArgs ++ when ("--node" `elem` args) checkNode ++ defaultMainWithIngredients ingredients $ + askOption $ \(NodeOpt node) -> +- let (codegen, flags) = if node then (JS, ["--codegen", "node"]) +- else (C , []) +- in +- mkGoldenTests (testFamiliesForCodegen codegen) +- (flags ++ idrisFlags) ++ let (codegen, flags) = if node then (JS, ["--codegen", "node"]) ++ else (C , []) ++ in ++ mkGoldenTests (testFamiliesForCodegen codegen) (flags ++ idrisFlags) ++ -- cgit 1.4.1 From c8e070dad70cbc13b6f77d4f20d7d21d3931a835 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 12 Apr 2019 17:37:20 +0200 Subject: build: Fix typo in Makefile.am conditional. Reported by Jonathan Brielmaier in . This is a followup to a7ad4505b7a09f32e2727a333e11716739efb713. * gnu/local.mk [!ENABLE_INSTALLER]: Use 'else', not 'elif'. --- gnu/local.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index a618516142..b63afeee30 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -622,7 +622,7 @@ INSTALLER_MODULES = \ # ENABLE_INSTALLER is true. if ENABLE_INSTALLER GNU_SYSTEM_MODULES += $(INSTALLER_MODULES) -elif !ENABLE_INSTALLER +else !ENABLE_INSTALLER MODULES_NOT_COMPILED += $(INSTALLER_MODULES) endif -- cgit 1.4.1 From 05f6b03217bdb8d024b5d29b50fdec74413a312e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 13 Apr 2019 04:12:04 +0200 Subject: gnu: synfig, synfigstudio: Update to 1.2.2. * gnu/packages/animation.scm (synfig-version): New variable. (etl)[version]: Use it. (synfig)[version]: Likewise. [source]: Update to 1.2.2. [native-inputs]: Add intltool. (synfigstudio)[version]: Use SYNFIG-VERSION. [source]: Update to 1.2.2. Remove obsolete patch. * gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/animation.scm | 21 +++++---- .../patches/synfigstudio-fix-ui-with-gtk3.patch | 55 ---------------------- 3 files changed, 11 insertions(+), 66 deletions(-) delete mode 100644 gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index b63afeee30..850444dfd4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1281,7 +1281,6 @@ dist_patch_DATA = \ %D%/packages/patches/swig-guile-gc.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ - %D%/packages/patches/synfigstudio-fix-ui-with-gtk3.patch \ %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ %D%/packages/patches/t1lib-CVE-2011-0764.patch \ diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm index 97c5e6c615..b46382c035 100644 --- a/gnu/packages/animation.scm +++ b/gnu/packages/animation.scm @@ -41,13 +41,15 @@ #:use-module (gnu packages qt) #:use-module (gnu packages video)) +;; ETL, synfig, and Synfig Studio are updated in tandem. +(define synfig-version "1.2.2") + (define-public etl (package (name "etl") - (version "1.2.2") + (version synfig-version) (source (origin (method url-fetch) - ;; Keep this synchronized with the synfig release version. (uri (string-append "mirror://sourceforge/synfig/releases/" version "/source/ETL-" version ".tar.gz")) (sha256 @@ -65,7 +67,7 @@ C++ @dfn{Standard Template Library} (STL).") (define-public synfig (package (name "synfig") - (version "1.2.0") + (version synfig-version) (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/synfig/releases/" @@ -73,7 +75,7 @@ C++ @dfn{Standard Template Library} (STL).") ".tar.gz")) (sha256 (base32 - "1gqx4gn4c73rqwhsgzx0a460gr9hadmi28csp75rx30qavqsj7k1")))) + "1vy27kl68sbg41sfasa58k3p2nc1xfalvzk3k9gich9h90rpnpsz")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -131,7 +133,8 @@ C++ @dfn{Standard Template Library} (STL).") ("openexr" ,openexr) ("pango" ,pango))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) (home-page "https://www.synfig.org") (synopsis "Vector-based 2D animation renderer") (description @@ -143,7 +146,7 @@ for tweening, preventing the need to hand-draw each frame.") (define-public synfigstudio (package (name "synfigstudio") - (version "1.2.0") + (version synfig-version) (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/synfig/releases/" @@ -151,16 +154,14 @@ for tweening, preventing the need to hand-draw each frame.") ".tar.gz")) (sha256 (base32 - "0fbckfbw8dzf0m2wv7vlmw492k1dqa3zf510z019d0as3zpnp6qm")) + "1ql92kh9z8w2j9yi3pr7hn7wh2r2j35xynwv9xlwyd7niackgykn")) (modules '((guix build utils))) (snippet '(begin (substitute* "src/synfigapp/pluginmanager.cpp" (("xmlpp::Node\\* n =") "const xmlpp::Node* n =") (("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList")) - #t)) - (patches - (search-patches "synfigstudio-fix-ui-with-gtk3.patch")))) + #t)))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch b/gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch deleted file mode 100644 index d7b3e92507..0000000000 --- a/gnu/packages/patches/synfigstudio-fix-ui-with-gtk3.patch +++ /dev/null @@ -1,55 +0,0 @@ -Downloaded from -https://github.com/synfig/synfig/commit/b9c3b73ee35b83c4d9183c800809040cef98b2f2.patch - -Without this patch the UI of Synfig Studio (when built with the latest version -of GTK) displays very large buttons in the header of every frame. - -This patch can be removed with the next release. - - -From b9c3b73ee35b83c4d9183c800809040cef98b2f2 Mon Sep 17 00:00:00 2001 -From: caryoscelus -Date: Wed, 25 Jan 2017 18:34:39 +0300 -Subject: [PATCH] Fix dock drop area size - -Fixes #227 - -By using Frame instead of Button we avoid intrusive Gtk themes -from forcing huge drop area size. ---- - synfig-studio/src/gui/docks/dockdroparea.cpp | 15 ++++++++++----- - 1 file changed, 10 insertions(+), 5 deletions(-) - -diff --git a/src/gui/docks/dockdroparea.cpp b/synfig-studio/src/gui/docks/dockdroparea.cpp -index 0f8936fdb..e012282f0 100644 ---- a/src/gui/docks/dockdroparea.cpp -+++ b/src/gui/docks/dockdroparea.cpp -@@ -35,7 +35,7 @@ - #include "app.h" - #include "docks/dockdroparea.h" - #include "docks/dockmanager.h" --#include -+#include - - #endif - -@@ -61,10 +61,15 @@ DockDropArea::DockDropArea(Gtk::Widget *target): - std::vector listTargets; - listTargets.push_back( Gtk::TargetEntry("SYNFIG_DOCK") ); - -- Gtk::Button *button_left = manage(new Gtk::Button()); -- Gtk::Button *button_right = manage(new Gtk::Button()); -- Gtk::Button *button_top = manage(new Gtk::Button()); -- Gtk::Button *button_bottom = manage(new Gtk::Button()); -+ Gtk::Frame *button_left = manage(new Gtk::Frame()); -+ Gtk::Frame *button_right = manage(new Gtk::Frame()); -+ Gtk::Frame *button_top = manage(new Gtk::Frame()); -+ Gtk::Frame *button_bottom = manage(new Gtk::Frame()); -+ -+ button_left->set_size_request(20, 10); -+ button_right->set_size_request(20, 10); -+ button_top->set_size_request(20, 10); -+ button_bottom->set_size_request(20, 10); - - button_left->drag_dest_set(listTargets); - button_right->drag_dest_set(listTargets); -- cgit 1.4.1 From e41ddf7605922b3a30d4cc37fe700068d6ee0d70 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 15 Apr 2019 06:08:22 +0200 Subject: gnu: knot: Update to 2.8.1. * gnu/packages/dns.scm (knot): Update to 2.8.1. [source]: Remove patch. * gnu/packages/patches/knot-include-system-lmdb-header.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/dns.scm | 32 ++++++++++---------- .../patches/knot-include-system-lmdb-header.patch | 34 ---------------------- 3 files changed, 15 insertions(+), 52 deletions(-) delete mode 100644 gnu/packages/patches/knot-include-system-lmdb-header.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 850444dfd4..70ad61af5b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -949,7 +949,6 @@ dist_patch_DATA = \ %D%/packages/patches/kio-search-smbd-on-PATH.patch \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kmscon-runtime-keymap-switch.patch \ - %D%/packages/patches/knot-include-system-lmdb-header.patch \ %D%/packages/patches/kpackage-allow-external-paths.patch \ %D%/packages/patches/kobodeluxe-paths.patch \ %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \ diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 461d9f8c0c..9cffe3b822 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -569,23 +569,21 @@ Extensions} (DNSSEC).") (define-public knot (package (name "knot") - (version "2.8.0") - (source (origin - (method url-fetch) - (uri (string-append "https://secure.nic.cz/files/knot-dns/" - "knot-" version ".tar.xz")) - (sha256 - (base32 - "1vw7xx7bm440jwrpvdd04vrp6ccz2b11swcn9msvs62hf0kdjjj9")) - (patches - (search-patches "knot-include-system-lmdb-header.patch")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Delete bundled libraries. - (with-directory-excursion "src/contrib" - (delete-file-recursively "lmdb")) - #t)))) + (version "2.8.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://secure.nic.cz/files/knot-dns/" + "knot-" version ".tar.xz")) + (sha256 + (base32 "1im2wb8hl394mzni1wavmvfqd7il8s28kcz8w3s4v05nbhzg06xj")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled libraries. + (with-directory-excursion "src/contrib" + (delete-file-recursively "lmdb")) + #t)))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/patches/knot-include-system-lmdb-header.patch b/gnu/packages/patches/knot-include-system-lmdb-header.patch deleted file mode 100644 index 5c5c0beabc..0000000000 --- a/gnu/packages/patches/knot-include-system-lmdb-header.patch +++ /dev/null @@ -1,34 +0,0 @@ -From: Tobias Geerinckx-Rice -Date: Wed, 20 Mar 2019 00:08:00 +0100 -Subject: [PATCH] gnu: knot: Include system . - -Copied verbatim from Knot master[0]. - -[0]: https://gitlab.labs.nic.cz/knot/knot-dns/commit/b557430cffbb1c6b30617a394b02acc514e7e536 - -From b557430cffbb1c6b30617a394b02acc514e7e536 Mon Sep 17 00:00:00 2001 -From: Daniel Salzman -Date: Wed, 6 Mar 2019 17:35:44 +0100 -Subject: [PATCH] journal: include proper header - -fixes #638 ---- - src/knot/journal/knot_lmdb.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/knot/journal/knot_lmdb.h b/src/knot/journal/knot_lmdb.h -index 35a88845c..b1d09cbb4 100644 ---- a/src/knot/journal/knot_lmdb.h -+++ b/src/knot/journal/knot_lmdb.h -@@ -16,7 +16,7 @@ - - #pragma once - --#include "contrib/lmdb/lmdb.h" -+#include - - #include - #include --- -2.18.1 - -- cgit 1.4.1 From eea75c435ab7d7b4f44b1aa4e900e2abf5ba430f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 15 Apr 2019 07:48:41 +0200 Subject: gnu: quilt: Update to 0.66. * gnu/packages/patchutils.scm (quilt): Update to 0.66. [source]: Remove all patches. * gnu/packages/patches/quilt-test-fix-regex.patch, gnu/packages/patches/quilt-getopt-nondigit-param.patch, gnu/packages/patches/quilt-getopt-second-separator.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove them. --- gnu/local.mk | 3 -- .../patches/quilt-getopt-nondigit-param.patch | 45 ----------------- .../patches/quilt-getopt-second-separator.patch | 58 ---------------------- gnu/packages/patches/quilt-test-fix-regex.patch | 41 --------------- gnu/packages/patchutils.scm | 16 +++--- 5 files changed, 6 insertions(+), 157 deletions(-) delete mode 100644 gnu/packages/patches/quilt-getopt-nondigit-param.patch delete mode 100644 gnu/packages/patches/quilt-getopt-second-separator.patch delete mode 100644 gnu/packages/patches/quilt-test-fix-regex.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 70ad61af5b..df96b98f07 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1220,9 +1220,6 @@ dist_patch_DATA = \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ - %D%/packages/patches/quilt-test-fix-regex.patch \ - %D%/packages/patches/quilt-getopt-nondigit-param.patch \ - %D%/packages/patches/quilt-getopt-second-separator.patch \ %D%/packages/patches/qtwebkit-pbutils-include.patch \ %D%/packages/patches/randomjungle-disable-static-build.patch \ %D%/packages/patches/rapicorn-isnan.patch \ diff --git a/gnu/packages/patches/quilt-getopt-nondigit-param.patch b/gnu/packages/patches/quilt-getopt-nondigit-param.patch deleted file mode 100644 index 6bbec67e75..0000000000 --- a/gnu/packages/patches/quilt-getopt-nondigit-param.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Jean Delvare -Subject: compat/getopt: Allow non-digit parameter embedded in short option - -The compatibility getopt script allows only digit parameters to be -embedded in short options. Util-linux's getopt implementation does -not have such a restriction and allows any parameter to be embedded -in short options. As a consequence, using the compatibility getopt -script would choke for example on "-pab", which is a legal option -of the "quilt refresh" command. - -Remove the limitation on digits so that the compatibility getopt -script allows what util-linux allows. This fixes the second half -of bug #54772: -https://savannah.nongnu.org/bugs/index.php?54772 - -As a side note, this feature of the compatibility script was broken -anyway, as it would output the digits in reverse order. - -Signed-off-by: Jean Delvare ---- - compat/getopt.in | 13 ++++--------- - 1 file changed, 4 insertions(+), 9 deletions(-) - ---- quilt.orig/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 -+++ quilt/compat/getopt.in 2018-10-03 16:12:17.624841732 +0200 -@@ -108,15 +108,10 @@ foreach my $word (@words) { - if (scalar(@letters) == 0) { - $need_param = $letter; - } else { -- # short options can have numerical args -- # embedded in the short option list: -UO -- die "unexpected character after option $letter" -- if ($letters[$#letters] !~ /[0-9]/); -- my @digits; -- while (scalar(@letters) && ($letters[$#letters] =~ /[0-9]/)) { -- push @digits, pop @letters; -- } -- push @options, quote_word(join('', reverse @digits)); -+ # short options can have args -+ # embedded in the short option list -+ push @options, quote_word(join('', reverse @letters)); -+ @letters = (); - } - } - } diff --git a/gnu/packages/patches/quilt-getopt-second-separator.patch b/gnu/packages/patches/quilt-getopt-second-separator.patch deleted file mode 100644 index cde2c8d41c..0000000000 --- a/gnu/packages/patches/quilt-getopt-second-separator.patch +++ /dev/null @@ -1,58 +0,0 @@ -From: Jean Delvare -Subject: compat/getopt: Handle a second separator - -getopt can be passed 2 '--' separators. The first one tells that -getopt options are over and target program options start. The second -one tells that the target program's options are over and following -arguments should be treated as non-options even if they look like -options. - -This second separator was not handled, causing the compatibility -getopt script to treat the following arguments as options, eventually -failing one way or another. - -Properly detect and handle the second separator. This fixes the first -half of bug #54772: -https://savannah.nongnu.org/bugs/index.php?54772 - -Signed-off-by: Jean Delvare ---- - compat/getopt.in | 13 ++++++++++--- - 1 file changed, 10 insertions(+), 3 deletions(-) - ---- quilt.orig/compat/getopt.in 2018-10-03 15:23:21.147620172 +0200 -+++ quilt/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 -@@ -8,12 +8,12 @@ - - use strict; - --my $opts; -+my $opts = ''; - my @words; - my $found_sep = 0; - - foreach my $arg (@ARGV) { -- if ($arg eq '--') { -+ if (!$found_sep && $arg eq '--') { - $found_sep = 1; - } - else { -@@ -62,10 +62,17 @@ sub quote_word - return "'$word'"; - } - -+# there can be a second separator, to inhibit processing following arguments -+# as options -+$found_sep = 0; - foreach my $word (@words) { -+ if ($word eq '--') { -+ $found_sep = 1; -+ next; -+ } - - # allow '-' to be an option value -- if (!$need_param && $word !~ /^-./) { -+ if ($found_sep || (!$need_param && $word !~ /^-./)) { - push @barewords, quote_word($word); - next; - } diff --git a/gnu/packages/patches/quilt-test-fix-regex.patch b/gnu/packages/patches/quilt-test-fix-regex.patch deleted file mode 100644 index 2e249ac55b..0000000000 --- a/gnu/packages/patches/quilt-test-fix-regex.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 5193b137b5a9034ce79946edd40760df2f63a82a Mon Sep 17 00:00:00 2001 -From: Jean Delvare -Date: Tue, 25 Apr 2017 15:17:53 +0200 -Subject: test: Escape curly braces in regex - -Curly braces in perl regex are supposed to be escaped, recent -versions of perl complain when they aren't: - -Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE (\w+)}/ at ./run line 114. -Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE \?}/ at ./run line 290. - -Signed-off-by: Jean Delvare ---- - test/run | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/test/run b/test/run -index 942014e..03afc7a 100755 ---- a/test/run -+++ b/test/run -@@ -112,7 +112,7 @@ sub flush_output() - sub substitute_vars($) - { - my ($line) = @_; -- $line =~ s[%{(\w+)}][defined $ENV{$1} ? $ENV{$1} : ""]eg; -+ $line =~ s[%\{(\w+)\}][defined $ENV{$1} ? $ENV{$1} : ""]eg; - return $line; - } - -@@ -288,7 +288,7 @@ while (defined(my $line = )) { - # Parse the next command - if ($line =~ s/^\s*\$ ?//) { - # Substitute %{?} with the last command's status -- $line =~ s[%{\?}][$last_status]eg; -+ $line =~ s[%\{\?\}][$last_status]eg; - - chomp($prog = substitute_vars($line)); - $prog_line = $lineno; --- -cgit v1.0-41-gc330 - diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 8859030129..f6197b98ee 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -98,18 +98,14 @@ listing the files modified by a patch.") (define-public quilt (package (name "quilt") - (version "0.65") + (version "0.66") (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah/quilt/" - "quilt-" version ".tar.gz")) - (sha256 - (base32 - "06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn")) - (patches (search-patches "quilt-test-fix-regex.patch" - "quilt-getopt-second-separator.patch" - "quilt-getopt-nondigit-param.patch")))) + (method url-fetch) + (uri (string-append "mirror://savannah/quilt/" + "quilt-" version ".tar.gz")) + (sha256 + (base32 "01vfvk4pqigahx82fhaaffg921ivd3k7rylz1yfvy4zbdyd32jri")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gnu-gettext))) -- cgit 1.4.1 From bcfb110f6d91ec94fdb3d4700e7fde9c98bffceb Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 16 Apr 2019 22:29:31 +0200 Subject: gnu: Add poedit. * gnu/packages/poedit.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/poedit.scm | 80 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 gnu/packages/poedit.scm (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index df96b98f07..e9111ba8dc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -374,6 +374,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/php.scm \ %D%/packages/pkg-config.scm \ %D%/packages/plotutils.scm \ + %D%/packages/poedit.scm \ %D%/packages/polkit.scm \ %D%/packages/popt.scm \ %D%/packages/printers.scm \ diff --git a/gnu/packages/poedit.scm b/gnu/packages/poedit.scm new file mode 100644 index 0000000000..0b21a9eea7 --- /dev/null +++ b/gnu/packages/poedit.scm @@ -0,0 +1,80 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Julien Lepiller +;;; +;;; 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 poedit) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix utils) + #:use-module (guix build-system gnu) + #:use-module (gnu packages autotools) + #:use-module (gnu packages boost) + #:use-module (gnu packages enchant) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gtk) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages rdf) + #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages xml)) + +(define-public poedit + (package + (name "poedit") + (version "2.2.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vslavik/poedit") + (commit (string-append "v" version "-oss")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1fxzmry4b23l90j03jdyvd4jprdpy4xcnhw7xrmmfnlbh2abf9x7")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "deps") + #t)))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list (string-append "--with-boost-libdir=" + (assoc-ref %build-inputs "boost") + "/lib")))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext-minimal" ,gettext-minimal) + ("pkg-config" ,pkg-config))) + (inputs + `(("boost" ,boost) + ("enchant" ,enchant) + ("gtk+" ,gtk+) + ("gtkspell3" ,gtkspell3) + ("icu4c" ,icu4c) + ("lucene++" ,lucene++) + ("pugixml" ,pugixml) + ("wxwidgets" ,wxwidgets))) + (home-page "https://poedit.net/") + (synopsis "Gettext catalog editing tool") + (description "Poedit is a GUI frontend to the GNU gettext utilities and +a catalog editor/source code parser. It helps with translating applications +into other languages.") + (license license:expat))) -- cgit 1.4.1 From e28ff04108ae7506a21d451cc23d63937076e2a3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 16 Apr 2019 22:18:58 +0200 Subject: gnu: webkitgtk: Fix build on i686. Fixes . * gnu/packages/patches/webkitgtk-sse2.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/webkit.scm (webkitgtk-2.24)[source](patches): New field. --- gnu/local.mk | 1 + gnu/packages/patches/webkitgtk-sse2.patch | 202 ++++++++++++++++++++++++++++++ gnu/packages/webkit.scm | 3 +- 3 files changed, 205 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/webkitgtk-sse2.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index e9111ba8dc..41924a7de5 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1343,6 +1343,7 @@ dist_patch_DATA = \ %D%/packages/patches/wavpack-CVE-2018-6767.patch \ %D%/packages/patches/wavpack-CVE-2018-7253.patch \ %D%/packages/patches/wavpack-CVE-2018-7254.patch \ + %D%/packages/patches/webkitgtk-sse2.patch \ %D%/packages/patches/weechat-python.patch \ %D%/packages/patches/wicd-bitrate-none-fix.patch \ %D%/packages/patches/wicd-get-selected-profile-fix.patch \ diff --git a/gnu/packages/patches/webkitgtk-sse2.patch b/gnu/packages/patches/webkitgtk-sse2.patch new file mode 100644 index 0000000000..df70e38919 --- /dev/null +++ b/gnu/packages/patches/webkitgtk-sse2.patch @@ -0,0 +1,202 @@ +Fix build on i686. + +This patch is taken from upstream, with ChangeLog entries omitted. + +From 5048338c5f21605441c6833907d1136ac9640b35 Mon Sep 17 00:00:00 2001 +From: "mcatanzaro@igalia.com" + +Date: Wed, 10 Apr 2019 18:27:25 +0000 +Subject: [PATCH] Unreviewed, rolling out r243989. + +Broke i686 builds + +Reverted changeset: + +"[CMake] Detect SSE2 at compile time" +https://bugs.webkit.org/show_bug.cgi?id=196488 +https://trac.webkit.org/changeset/243989 + +git-svn-id: http://svn.webkit.org/repository/webkit/trunk@244138 268f45cc-cd09-0410-ab3c-d52691b4dbfc +--- + CMakeLists.txt | 10 --- + ChangeLog | 12 ++++ + Source/JavaScriptCore/ChangeLog | 12 ++++ + .../assembler/MacroAssemblerX86Common.cpp | 7 ++ + .../assembler/MacroAssemblerX86Common.h | 30 +++++++++ + Source/cmake/FindSSE2.cmake | 65 ------------------- + 6 files changed, 61 insertions(+), 75 deletions(-) + delete mode 100644 Source/cmake/FindSSE2.cmake + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index acd77f4b623..d3e8a23f9ff 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -114,16 +114,6 @@ else () + set(WTF_CPU_UNKNOWN 1) + endif () + +-#--------------------------- +-# Make sure SSE2 is present. +-#--------------------------- +-if (WTF_CPU_X86) +- include(FindSSE2) +- if (NOT SSE2_SUPPORT_FOUND) +- message(FATAL_ERROR "SSE2 support is required to compile WebKit") +- endif () +-endif () +- + # ----------------------------------------------------------------------------- + # Determine the operating system + # ----------------------------------------------------------------------------- +diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp b/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp +index 8c752c0d030..31753589df7 100644 +--- a/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp ++++ b/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp +@@ -168,6 +168,11 @@ static_assert(PROBE_OFFSETOF_REG(cpu.fprs, X86Registers::xmm15) == PROBE_CPU_XMM + static_assert(sizeof(Probe::State) == PROBE_SIZE, "Probe::State::size's matches ctiMasmProbeTrampoline"); + static_assert((PROBE_EXECUTOR_OFFSET + PTR_SIZE) <= (PROBE_SIZE + OUT_SIZE), "Must have room after ProbeContext to stash the probe handler"); + ++#if CPU(X86) ++// SSE2 is a hard requirement on x86. ++static_assert(isSSE2Present(), "SSE2 support is required in JavaScriptCore"); ++#endif ++ + #undef PROBE_OFFSETOF + + #if CPU(X86) +@@ -787,6 +792,7 @@ void MacroAssemblerX86Common::collectCPUFeatures() + std::call_once(onceKey, [] { + { + CPUID cpuid = getCPUID(0x1); ++ s_sse2CheckState = (cpuid[3] & (1 << 26)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; + s_sse4_1CheckState = (cpuid[2] & (1 << 19)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; + s_sse4_2CheckState = (cpuid[2] & (1 << 20)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; + s_popcntCheckState = (cpuid[2] & (1 << 23)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; +@@ -803,6 +809,7 @@ void MacroAssemblerX86Common::collectCPUFeatures() + }); + } + ++MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse2CheckState = CPUIDCheckState::NotChecked; + MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse4_1CheckState = CPUIDCheckState::NotChecked; + MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse4_2CheckState = CPUIDCheckState::NotChecked; + MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_avxCheckState = CPUIDCheckState::NotChecked; +diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h b/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h +index ff097290ef3..097bcb0bb86 100644 +--- a/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h ++++ b/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h +@@ -4197,11 +4197,41 @@ private: + } + #endif + ++#if CPU(X86) ++#if OS(MAC_OS_X) ++ ++ // All X86 Macs are guaranteed to support at least SSE2, ++ static bool isSSE2Present() ++ { ++ return true; ++ } ++ ++#else // OS(MAC_OS_X) ++ static bool isSSE2Present() ++ { ++ if (s_sse2CheckState == CPUIDCheckState::NotChecked) ++ collectCPUFeatures(); ++ return s_sse2CheckState == CPUIDCheckState::Set; ++ } ++ ++#endif // OS(MAC_OS_X) ++#elif !defined(NDEBUG) // CPU(X86) ++ ++ // On x86-64 we should never be checking for SSE2 in a non-debug build, ++ // but non debug add this method to keep the asserts above happy. ++ static bool isSSE2Present() ++ { ++ return true; ++ } ++ ++#endif ++ + using CPUID = std::array; + static CPUID getCPUID(unsigned level); + static CPUID getCPUIDEx(unsigned level, unsigned count); + JS_EXPORT_PRIVATE static void collectCPUFeatures(); + ++ JS_EXPORT_PRIVATE static CPUIDCheckState s_sse2CheckState; + JS_EXPORT_PRIVATE static CPUIDCheckState s_sse4_1CheckState; + JS_EXPORT_PRIVATE static CPUIDCheckState s_sse4_2CheckState; + JS_EXPORT_PRIVATE static CPUIDCheckState s_avxCheckState; +diff --git a/Source/cmake/FindSSE2.cmake b/Source/cmake/FindSSE2.cmake +deleted file mode 100644 +index 7a947feadd4..00000000000 +--- a/Source/cmake/FindSSE2.cmake ++++ /dev/null +@@ -1,65 +0,0 @@ +-################################# +-# Check for the presence of SSE2. +-# +-# Once done, this will define: +-# - SSE2_SUPPORT_FOUND - the system supports (at least) SSE2. +-# +-# Copyright (c) 2014, Pablo Fernandez Alcantarilla, Jesus Nuevo +-# Copyright (c) 2019, Igalia S.L. +-# +-# Redistribution and use in source and binary forms, with or without modification, +-# are permitted provided that the following conditions are met: +-# +-# * Redistributions of source code must retain the above copyright notice, +-# this list of conditions and the following disclaimer. +-# +-# * Redistributions in binary form must reproduce the above copyright notice, +-# this list of conditions and the following disclaimer in the documentation +-# and/or other materials provided with the distribution. +-# +-# * Neither the name of the copyright holders nor the names of its contributors +-# may be used to endorse or promote products derived from this software without +-# specific prior written permission. +-# +-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +-# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT +-# SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +-# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +-# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY +-# WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +- +-set(SSE2_SUPPORT_FOUND FALSE) +- +-macro(CHECK_FOR_SSE2) +- include(CheckCXXSourceRuns) +- +- check_cxx_source_runs(" +- #include +- int main () +- { +- __m128d a, b; +- double vals[2] = {0}; +- a = _mm_loadu_pd (vals); +- b = _mm_add_pd (a,a); +- _mm_storeu_pd (vals,b); +- return(0); +- }" +- HAVE_SSE2_EXTENSIONS) +- +- if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG) +- if (HAVE_SSE2_EXTENSIONS) +- set(SSE2_SUPPORT_FOUND TRUE) +- endif () +- elseif (MSVC AND NOT CMAKE_CL_64) +- if (HAVE_SSE2_EXTENSIONS) +- set(SSE2_SUPPORT_FOUND TRUE) +- message(STATUS "Found SSE2 extensions.") +- endif (HAVE_SSE2_EXTENSIONS) +- endif () +- +-endmacro(CHECK_FOR_SSE2) +- +-CHECK_FOR_SSE2() +-- +2.21.0 + diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index c807585fea..ce69d0a7d4 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -175,7 +175,8 @@ HTML/CSS applications to full-fledged web browsers.") name "-" version ".tar.xz")) (sha256 (base32 - "0v9riwrmwi9wxbb8hlvcbyyxa9zxhcdk6s1xcspalk6asam8xjsk")))) + "0v9riwrmwi9wxbb8hlvcbyyxa9zxhcdk6s1xcspalk6asam8xjsk")) + (patches (search-patches "webkitgtk-sse2.patch")))) (native-inputs `(("gcc" ,gcc-7) ; webkitgtk-2.22 requires gcc-6 or newer ,@(package-native-inputs webkitgtk))) -- cgit 1.4.1