Merge branch 'master' into core-updates

This commit is contained in:
Marius Bakke 2019-02-09 21:11:00 +01:00
commit ebbb7286b9
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
139 changed files with 5304 additions and 2499 deletions

View File

@ -318,7 +318,7 @@ nobase_nodist_guileobject_DATA = $(GOBJECTS)
# Handy way to remove the .go files without removing all the rest.
clean-go:
-$(RM) -f $(GOBJECTS)
@find . -name '*.go' -print | \
@find . -path ./test-tmp -prune -o -name '*.go' -print | \
if test -t 1; then \
xargs -r echo -e "\033[31mwarning:\033[0m stray .go files:"; \
else \

View File

@ -2375,7 +2375,8 @@ The installation image described above was built using the @command{guix
system} command, specifically:
@example
guix system disk-image gnu/system/install.scm
guix system disk-image --file-system-type=iso9660 \
gnu/system/install.scm
@end example
Have a look at @file{gnu/system/install.scm} in the source tree,
@ -7288,7 +7289,8 @@ care!
Build @var{package} from the latest commit of @var{branch}. The @code{source}
field of @var{package} must be an origin with the @code{git-fetch} method
(@pxref{origin Reference}) or a @code{git-checkout} object; the repository URL
is taken from that @code{source}.
is taken from that @code{source}. Git sub-modules of the repository are
fetched, recursively.
For instance, the following command builds @code{guile-sqlite3} from the
latest commit of its @code{master} branch, and then builds @code{guix} (which
@ -14400,13 +14402,49 @@ The @code{(gnu services databases)} module provides the following services.
@deffn {Scheme Procedure} postgresql-service [#:postgresql postgresql] @
[#:config-file] [#:data-directory ``/var/lib/postgresql/data''] @
[#:port 5432] [#:locale ``en_US.utf8'']
[#:port 5432] [#:locale ``en_US.utf8''] [#:extension-packages '()]
Return a service that runs @var{postgresql}, the PostgreSQL database
server.
The PostgreSQL daemon loads its runtime configuration from @var{config-file},
creates a database cluster with @var{locale} as the default
locale, stored in @var{data-directory}. It then listens on @var{port}.
@cindex postgresql extension-packages
Additional extensions are loaded from packages listed in
@var{extension-packages}. Extensions are available at runtime. For instance,
to create a geographic database using the @code{postgis} extension, a user can
configure the postgresql-service as in this example:
@cindex postgis
@example
(use-package-modules databases geo)
(operating-system
...
;; postgresql is required to run `psql' but postgis is not required for
;; proper operation.
(packages (cons* postgresql %base-packages))
(services
(cons*
(postgresql-service #:extension-packages (list postgis))
%base-services)))
@end example
Then the extension becomes visible and you can initialise an empty geographic
database in this way:
@example
psql -U postgres
> create database postgistest;
> \connect postgistest;
> create extension postgis;
> create extension postgis_topology;
@end example
There is no need to add this field for contrib extensions such as hstore or
dblink as they are already loadable by postgresql. This field is only
required to add extensions provided by other packages.
@end deffn
@deffn {Scheme Procedure} mysql-service [#:config (mysql-configuration)]

View File

@ -634,7 +634,8 @@ dist_patch_DATA = \
%D%/packages/patches/aegisub-icu59-include-unistr.patch \
%D%/packages/patches/aegisub-boost68.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch \
%D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \
%D%/packages/patches/allegro4-mesa-18.2.5-and-later.patch \
%D%/packages/patches/amule-crypto-6.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
@ -665,8 +666,6 @@ dist_patch_DATA = \
%D%/packages/patches/blast+-fix-makefile.patch \
%D%/packages/patches/boost-fix-icu-build.patch \
%D%/packages/patches/byobu-writable-status.patch \
%D%/packages/patches/cairo-CVE-2016-9082.patch \
%D%/packages/patches/cairo-setjmp-wrapper.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
%D%/packages/patches/calibre-use-packaged-feedparser.patch \
%D%/packages/patches/casync-renameat2-declaration.patch \
@ -697,9 +696,6 @@ dist_patch_DATA = \
%D%/packages/patches/coda-use-system-libs.patch \
%D%/packages/patches/combinatorial-blas-awpm.patch \
%D%/packages/patches/combinatorial-blas-io-fix.patch \
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
%D%/packages/patches/cool-retro-term-memory-leak-1.patch \
%D%/packages/patches/cpio-CVE-2016-2037.patch \
%D%/packages/patches/cpufrequtils-fix-aclocal.patch \
%D%/packages/patches/cracklib-CVE-2016-6318.patch \
@ -710,7 +706,6 @@ dist_patch_DATA = \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \
%D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
@ -724,6 +719,7 @@ dist_patch_DATA = \
%D%/packages/patches/doxygen-test.patch \
%D%/packages/patches/dropbear-CVE-2018-15599.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/efl-mesa-compat.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/emacs-exec-path.patch \
@ -749,6 +745,7 @@ dist_patch_DATA = \
%D%/packages/patches/fasthenry-spUtils.patch \
%D%/packages/patches/fasthenry-spSolve.patch \
%D%/packages/patches/fasthenry-spFactor.patch \
%D%/packages/patches/fbreader-curl-7.62.patch \
%D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \
%D%/packages/patches/fcgi-2.4.0-poll.patch \
%D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \
@ -803,14 +800,12 @@ dist_patch_DATA = \
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
%D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \
%D%/packages/patches/ghc-haddock-library-unbundle.patch \
%D%/packages/patches/ghostscript-CVE-2018-16509.patch \
%D%/packages/patches/ghostscript-bug-699708.patch \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/giflib-make-reallocarray-private.patch \
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glib-networking-connection.patch \
%D%/packages/patches/glibc-CVE-2015-5180.patch \
%D%/packages/patches/glibc-CVE-2015-7547.patch \
%D%/packages/patches/glibc-CVE-2016-3075.patch \
@ -843,7 +838,6 @@ dist_patch_DATA = \
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \
%D%/packages/patches/gnucash-fix-test-transaction-failure.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \
%D%/packages/patches/gnutls-skip-pkgconfig-test.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
%D%/packages/patches/gobject-introspection-cc.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \
@ -856,6 +850,7 @@ dist_patch_DATA = \
%D%/packages/patches/grub-check-error-efibootmgr.patch \
%D%/packages/patches/gsl-test-i686.patch \
%D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/gst-plugins-good-libvpx-compat.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-default-utf8.patch \
%D%/packages/patches/guile-default-utf8.patch \
@ -879,6 +874,8 @@ dist_patch_DATA = \
%D%/packages/patches/hdf4-reproducibility.patch \
%D%/packages/patches/hdf4-shared-fortran.patch \
%D%/packages/patches/hdf5-config-date.patch \
%D%/packages/patches/hdf5-mpi-deprecations.patch \
%D%/packages/patches/hdf5-1.8-mpi-deprecations.patch \
%D%/packages/patches/hdf-eos2-build-shared.patch \
%D%/packages/patches/hdf-eos2-remove-gctp.patch \
%D%/packages/patches/hdf-eos2-fortrantests.patch \
@ -899,6 +896,7 @@ dist_patch_DATA = \
%D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/inkscape-poppler-compat3.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/irrlicht-use-system-libs.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
@ -913,7 +911,6 @@ dist_patch_DATA = \
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
%D%/packages/patches/json-glib-fix-tests-32bit.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/khmer-use-libraries.patch \
%D%/packages/patches/libziparchive-add-includes.patch \
@ -981,6 +978,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libreoffice-boost.patch \
%D%/packages/patches/libreoffice-icu.patch \
%D%/packages/patches/libreoffice-glm.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
@ -990,10 +988,6 @@ dist_patch_DATA = \
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
%D%/packages/patches/libtar-CVE-2013-4420.patch \
%D%/packages/patches/libtheora-config-guess.patch \
%D%/packages/patches/libtiff-CVE-2017-9935.patch \
%D%/packages/patches/libtiff-CVE-2017-18013.patch \
%D%/packages/patches/libtiff-CVE-2018-8905.patch \
%D%/packages/patches/libtiff-CVE-2018-10963.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \
%D%/packages/patches/libusb-for-axoloti.patch \
@ -1061,6 +1055,7 @@ dist_patch_DATA = \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
%D%/packages/patches/musescore-fix-use_webengine.patch \
%D%/packages/patches/mutt-store-references.patch \
%D%/packages/patches/m4-gnulib-libio.patch \
%D%/packages/patches/netcdf-date-time.patch \
@ -1128,6 +1123,7 @@ dist_patch_DATA = \
%D%/packages/patches/pinball-src-deps.patch \
%D%/packages/patches/pinball-system-ltdl.patch \
%D%/packages/patches/pinentry-efl.patch \
%D%/packages/patches/pingus-boost-headers.patch \
%D%/packages/patches/pingus-sdl-libs-config.patch \
%D%/packages/patches/pius.patch \
%D%/packages/patches/pixman-CVE-2016-5296.patch \
@ -1136,9 +1132,9 @@ dist_patch_DATA = \
%D%/packages/patches/plotutils-libpng-jmpbuf.patch \
%D%/packages/patches/podofo-cmake-3.12.patch \
%D%/packages/patches/polkit-CVE-2018-19788.patch \
%D%/packages/patches/poppler-CVE-2018-19149.patch \
%D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/postgresql-disable-resolve_symlinks.patch \
%D%/packages/patches/potrace-tests.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \
@ -1189,7 +1185,6 @@ dist_patch_DATA = \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/qt-5-renameat2.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/quilt-test-fix-regex.patch \
@ -1239,9 +1234,11 @@ dist_patch_DATA = \
%D%/packages/patches/soundconverter-remove-gconf-dependency.patch \
%D%/packages/patches/soundtouch-CVE-2018-14044-14045.patch \
%D%/packages/patches/soundtouch-CVE-2018-1000223.patch \
%D%/packages/patches/sssd-curl-compat.patch \
%D%/packages/patches/steghide-fixes.patch \
%D%/packages/patches/streamlink-update-test.patch \
%D%/packages/patches/superlu-dist-awpm-grid.patch \
%D%/packages/patches/superlu-dist-fix-mpi-deprecations.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/swig-guile-gc.patch \
%D%/packages/patches/swish-e-search.patch \
@ -1261,6 +1258,9 @@ dist_patch_DATA = \
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
%D%/packages/patches/texinfo-perl-compat.patch \
%D%/packages/patches/texinfo-5-perl-compat.patch \
%D%/packages/patches/texlive-bin-luatex-poppler-compat.patch \
%D%/packages/patches/texlive-bin-pdftex-poppler-compat.patch \
%D%/packages/patches/texlive-bin-xetex-poppler-compat.patch \
%D%/packages/patches/telegram-purple-adjust-test.patch \
%D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \
@ -1311,6 +1311,7 @@ dist_patch_DATA = \
%D%/packages/patches/wavpack-CVE-2018-7253.patch \
%D%/packages/patches/wavpack-CVE-2018-7254.patch \
%D%/packages/patches/weechat-python.patch \
%D%/packages/patches/wesnoth-newer-boost.patch \
%D%/packages/patches/wicd-bitrate-none-fix.patch \
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
%D%/packages/patches/wicd-urwid-1.3.patch \
@ -1341,8 +1342,7 @@ dist_patch_DATA = \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
%D%/packages/patches/xmodmap-asprintf.patch \
%D%/packages/patches/zathura-plugindir-environment-variable.patch
%D%/packages/patches/xmodmap-asprintf.patch
MISC_DISTRO_FILES = \
%D%/packages/ld-wrapper.in

View File

@ -3,6 +3,7 @@
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -51,8 +52,8 @@
(origin
(method url-fetch)
(uri
(string-append "https://www.abisource.com/downloads/" name "/" version
"/source/" name "-" version ".tar.gz"))
(string-append "https://www.abisource.com/downloads/abiword/" version
"/source/abiword-" version ".tar.gz"))
(sha256
(base32 "08imry821g81apdwym3gcs4nss0l9j5blqk31j5rv602zmcd9gxg"))
(patches

View File

@ -45,7 +45,7 @@
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/florence/florence/" version
"/" name "-" version ".tar.bz2"))
"/florence-" version ".tar.bz2"))
(sha256
(base32
"07h9qm22krlwayhzvc391lr23vicw81s48g7rirvx1fj0zyr4aa2"))))

View File

@ -148,13 +148,15 @@ usual file attributes can be checked for inconsistencies.")
(package
(name "progress")
(version "0.14")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Xfennec/"
name "/archive/v" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Xfennec/progress.git")
(commit (string-append "v" version))))
(sha256
(base32 "1wcanixfsi5k4i9h5vrnncgjdncalsdfqllrxibxwpgfnf20sji1"))
(file-name (string-append name "-" version ".tar.gz"))))
(base32 "1lk2v4b767klib93an4g3f7z5qrv9kdk9jf7545vw1immc4kamrl"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -162,12 +164,12 @@ usual file attributes can be checked for inconsistencies.")
(inputs
`(("ncurses" ,ncurses)))
(arguments
`(#:tests? #f ; There is no test suite.
`(#:tests? #f ; no test suite
#:make-flags (list "CC=gcc"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; There's no configure phase.
(delete 'configure)))) ; no configure script
(home-page "https://github.com/Xfennec/progress")
(synopsis "Program to view the progress of the coreutils commands")
(description "A program that looks for coreutils basic commands (cp, mv,
@ -219,8 +221,8 @@ interface and is based on GNU Guile.")
(source (origin
(method url-fetch)
(uri (string-append
"https://cr.yp.to/" name "/"
name "-" version ".tar.gz"))
"https://cr.yp.to/daemontools/"
"daemontools-" version ".tar.gz"))
(sha256
(base32
"07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5"))))
@ -231,7 +233,7 @@ interface and is based on GNU Guile.")
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir ,(string-append name "-" version))
(chdir ,(string-append "daemontools-" version))
#t))
(delete 'configure)
(add-before 'build 'patch
@ -1539,14 +1541,13 @@ degradation and failure.")
(version "1.6.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/adrianlopezroche/fdupes/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/adrianlopezroche/fdupes.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1sj9pa40pbz6xdwbxfwhdhkvhdf1xc5gvggk9mdq26c41gdnyswx"))))
(base32 "19b6vqblddaw8ccw4sn0qsqzbswlhrz8ia6n4m3hymvcxn8skpz9"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -1703,13 +1704,13 @@ lookup to YAML Mode. You could enable the mode with @code{(add-hook
(version "0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/opsengine/cpulimit/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/opsengine/cpulimit.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1nn2w849xd5bw4y5sqnll29nxdwl5h0cv4smc7dwmpb9qnd2ycb4"))))
(base32 "1dz045yhcsw1rdamzpz4bk8mw888in7fyqk1q1b3m1yk4pd1ahkh"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -1864,7 +1865,7 @@ platform-specific methods.")
(version "2.8.4")
(source (origin
(method url-fetch)
(uri (string-append home-page name "-" version ".tar.gz"))
(uri (string-append home-page "audit-" version ".tar.gz"))
(sha256
(base32
"0f4ci6ffznnmgblwgv7ich9mjfk3p6y5l6m6h3chhmzw156nj454"))))
@ -1979,22 +1980,22 @@ results (ndiff), and a packet generation and response analysis tool (nping).")
(package
(name "dstat")
(version "0.7.3")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/dagwieers/dstat/archive/"
version ".tar.gz"))
(file-name (string-append "dstat-" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dagwieers/dstat.git")
(commit version)))
(file-name (git-file-name "dstat" version))
(sha256
(base32
"16286z3y2lc9nsq8njzjkv6k2vyxrj9xiixj1k3gnsbvhlhkirj6"))))
(base32 "0sbpna531034gr40w4g9cwz35s2fpf9h654paznsxw9fih91rfa5"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;; no make check
`(#:tests? #f ; no make check
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "DESTDIR=" out)
"prefix=/"))
;; no configure script
;; No configure script.
#:phases (modify-phases %standard-phases (delete 'configure))))
(inputs `(("python-2" ,python-2)))
(synopsis "Versatile resource statistics tool")
@ -2015,14 +2016,15 @@ throughput (in the same interval).")
(package
(name "thefuck")
(version "3.28")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nvbn/thefuck.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1i11qlnbg95nx7dcf6wqvfz7b230dqr5m981md4hvyaa1qw3xj5m"))
(base32 "070b2sx8r0b4hry6xg97psxlikxghmz91zicg2cm6kc1yhgz4agc"))
(patches (search-patches "thefuck-test-environ.patch"))))
(build-system python-build-system)
(arguments
@ -2089,14 +2091,15 @@ produce uniform output across heterogeneous networks.")
(package
(name "cbatticon")
(version "1.6.8")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/valr/"
name "/archive/" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/valr/cbatticon.git")
(commit version)))
(sha256
(base32
"185lzvaijvyq7y8r7dvizhri0rf9lpc1anfgbbn4lznr1fr3z7rn"))
(file-name (string-append name "-" version ".tar.gz"))))
(base32 "16g26vin1693dbdr9qsnw36fdchx394lp79gvp7gcbw0w1ny9av6"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
@ -2123,16 +2126,16 @@ the status of your battery in the system tray.")
(commit "896543735e1c99144765fdbd7b6e6b5afbd8b881"))
(package
(name "interrobang")
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
(source (origin
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/TrilbyWhite/interrobang")
(url "https://github.com/TrilbyWhite/interrobang.git")
(commit commit)))
(file-name (string-append name "-" version))
(file-name (git-file-name name version))
(sha256
(base32
"1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf"))))
(base32 "1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
@ -2158,8 +2161,8 @@ shortcut syntax and completion options.")
(source (origin
(method url-fetch)
(uri (string-append
"https://archives.eyrie.org/software/kerberos/" name "-"
version ".tar.xz"))
"https://archives.eyrie.org/software/kerberos/"
"pam-krb5-" version ".tar.xz"))
(sha256
(base32
"1qjp8i1s9bz7g6kiqrkzzkxn5pfspa4sy53b6z40fqmdf9przdfb"))))
@ -2205,11 +2208,12 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/linux-sunxi/"
"sunxi-tools/archive/v" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/linux-sunxi/sunxi-tools.git")
(commit (string-append "v" version))))
(sha256
(base32 "08iqwj95qw2s7ilhrdi2lkbc8dx64zk5lzz1qk587jr0lla81x41"))
(base32 "04f3jqg8ww4jxsf9c6ddcdgy2xbhkyp0b3l5f1hvvbv94p81rjxd"))
(modules '((guix build utils)))
(snippet
;; Remove binaries contained in the tarball which are only for the
@ -2217,7 +2221,7 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
'(begin
(delete-file-recursively "bin")
#t))
(file-name (string-append name "-" version ".tar.gz"))))
(file-name (git-file-name name version))))
(native-inputs
`(("pkg-config" ,pkg-config)
("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"
@ -2300,16 +2304,16 @@ in order to be able to find it.
(version "1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/aureliojargas/sedsed/"
"archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/aureliojargas/sedsed.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0139jkqvm8ipiwfj7k69ry2f9b1ffgpk79arpz4r7w9kf6h23bnh"))))
(base32 "0009lsjsxhqmgaklpwq15hhd94hpiy7r4va69yy0ig3mxi6zbg2z"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; No tests.
`(#:tests? #f ; no tests
#:python ,python-2
#:phases
(modify-phases %standard-phases
@ -2364,7 +2368,7 @@ buffers.")
(method url-fetch)
(uri (string-append "https://cgit.freedesktop.org/xorg/app/"
"intel-gpu-tools/snapshot/"
name "-" version ".tar.gz"))
"igt-gpu-tools-" version ".tar.gz"))
(sha256
(base32
"0vzv2i4jfv2pkbqby5k3ap9pzidkmajwqmg3s7wnv8i1h33775iq"))))
@ -2494,7 +2498,7 @@ you are running, what theme or icon set you are using, etc.")
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/" name "-v" version ".tar.gz"))
version "/nnn-v" version ".tar.gz"))
(sha256
(base32 "1d6z12y4rlg4dzhpm30irpq2ak8hjh5zykkp2n7vxnz5m4ki89zp"))))
(build-system gnu-build-system)
@ -2565,14 +2569,15 @@ on systems running the Linux kernel.")
(package
(name "masscan")
(version "1.0.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/robertdavidgraham/masscan"
"/archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/robertdavidgraham/masscan.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0wxddsgyx27z45906icdhdbfsvfj8ij805208qpqjx46i0lnjs50"))))
(base32 "0q0c7bsf0pbl8napry1qyg0gl4pd8wn872h4mz9b56dx4rx90vqg"))))
(build-system gnu-build-system)
(inputs
`(("libpcap" ,libpcap)))
@ -2608,7 +2613,7 @@ application, collecting the information received.")
(method url-fetch)
(uri (string-append "https://github.com/jwilk/hungrycat/"
"releases/download/" version "/"
name "-" version ".tar.gz"))
"hungrycat-" version ".tar.gz"))
(sha256
(base32
"03fc1zsrf99lvxa7b4ps6pbi43304wbxh1f6ci4q0vkal370yfwh"))))
@ -2640,7 +2645,7 @@ late.")
(method url-fetch)
(uri (string-append
"https://github.com/LLNL/LaunchMON/releases/download/v"
version "/" name "-v" version ".tar.gz"))
version "/launchmon-v" version ".tar.gz"))
(sha256
(base32
"0fm3nd9mydm9v2bf7bh01dbgrfnpwkapxa3dsvy3x1z0rz61qc0x"))))

View File

@ -2300,7 +2300,7 @@ external_libraries/yaml-cpp/include)"))
("eudev" ,eudev) ;for user interactions with devices
("avahi" ,avahi) ;zeroconf service discovery support
("icu4c" ,icu4c)
("boost" ,boost-cxx14)
("boost" ,boost)
("boost-sync" ,boost-sync)
("yaml-cpp" ,yaml-cpp)))
(home-page "https://github.com/supercollider/supercollider")

View File

@ -3,6 +3,7 @@
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -23,6 +24,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
@ -138,14 +140,15 @@ C++.")
(package
(name "microscheme")
(version "0.9.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ryansuchocki/"
"microscheme/archive/v" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ryansuchocki/microscheme.git")
(commit (string-append "v" version))))
(sha256
(base32
"1n404mh7z2icy3ga1mx249lk9x091k7idj6xpcf20hnmzabd0k0x"))
(file-name (string-append name "-" version ".tar.gz"))))
(base32 "1r3ng4pw1s9yy1h5rafra1rq19d3vmb5pzbpcz1913wz22qdd976"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; fails to build otherwise

View File

@ -1122,7 +1122,7 @@ command.")
(define-public tzdata
(package
(name "tzdata")
(version "2018e")
(version "2018i")
(source (origin
(method url-fetch)
(uri (string-append
@ -1130,7 +1130,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
"0bk97fv2i5ns42prpmlaadsswdjwv0ifi7whj2s4q6l44rcqwa3b"))))
"1n80ih8agibagic401smqscz3xxqvs5bm5x3lk803g539kw5xi42"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
@ -1180,7 +1180,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
"1kpb02631s58i068mwq63xlamcv1ffj4p6y4wpb9kdl01vr0qd6a"))))))
"1p1jxlnryaxknj0l768h3dmlk2jpqz5n5d24w9c9vyx6dj3xpb5a"))))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
@ -1199,22 +1199,24 @@ and daylight-saving rules.")
(hidden-package
(package
(inherit tzdata)
(version "2018d")
(version "2018g")
(source (origin
(method url-fetch)
(uri (string-append "https://www.iana.org/time-zones/repository"
"/releases/tzdata" version ".tar.gz"))
(uri (string-append
"https://www.iana.org/time-zones/repository/releases/tzdata"
version ".tar.gz"))
(sha256
(base32
"0m6020dnk9r40z7k36jp13fa06xip3hn0fdx3nly66jzxgffs1ji"))))
(inputs `(("tzcode" ,(origin
"05kayi3w9pvhj6ljx1hvwd0r8mxfzn436fjmwhx53xkj919xxpq2"))))
(inputs
`(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
"http://www.iana.org/time-zones/repository/releases/tzcode"
version ".tar.gz"))
(sha256
(base32
"1nd882yhsazmcfqmcqyfig3axycryl30gmizgqhqsx5dpa2lxr3x")))))))))
"09y44fzcdq3c06saa8iqqa0a59cyw6ni3p31ps0j1w3hcpxz8lxa")))))))))
(define-public libiconv
(package

View File

@ -6020,7 +6020,7 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
(define-public star
(package
(name "star")
(version "2.7.0a")
(version "2.7.0b")
(source (origin
(method git-fetch)
(uri (git-reference
@ -6029,7 +6029,7 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1yx28gra6gqdx1ps5y8mpdinsn8r0dhsc2m3gcvjfrk71i9yhd6l"))
"1lih6cbpvnvhyvvswdhy06mwyzvwax96m723378v4z6psqzsh11d"))
(modules '((guix build utils)))
(snippet
'(begin
@ -6055,6 +6055,13 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
(("(COMPILATION_TIME_PLACE=\")(.*)(\")" _ pre mid post)
(string-append pre "Built with Guix" post)))
#t))
;; See https://github.com/alexdobin/STAR/pull/562
(add-after 'enter-source-dir 'add-missing-header
(lambda _
(substitute* "SoloReadFeature_inputRecords.cpp"
(("#include \"binarySearch2.h\"" h)
(string-append h "\n#include <math.h>")))
#t))
(add-after 'enter-source-dir 'do-not-use-bundled-htslib
(lambda _
(substitute* "Makefile"
@ -8657,7 +8664,7 @@ library implementing most of the pipeline's features.")
(define-public rcas-web
(package
(name "rcas-web")
(version "0.0.5")
(version "0.1.0")
(source
(origin
(method url-fetch)
@ -8666,7 +8673,7 @@ library implementing most of the pipeline's features.")
"/rcas-web-" version ".tar.gz"))
(sha256
(base32
"0igz7jpcf7cm9800zcag6p3gd1i649figrhbdba6cjkm8f4gfspr"))))
"0wq951aj45gqki1bickg876i993lmawkp8x24agg264br5x716db"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -8689,7 +8696,7 @@ library implementing most of the pipeline's features.")
("r-rcas" ,r-rcas)
("guile-next" ,guile-2.2)
("guile-json" ,guile-json)
("guile-redis" ,guile2.2-redis)))
("guile-redis" ,guile-redis)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/BIMSBbioinfo/rcas-web")

View File

@ -44,16 +44,19 @@
(define-public boost
(package
(name "boost")
(version "1.68.0")
(version "1.69.0")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/boost/boost/" version "/boost_"
(string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
".tar.bz2"))
(uri (let ((version-with-underscores
(string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)))
(list (string-append "mirror://sourceforge/boost/boost/" version
"/boost_" version-with-underscores ".tar.bz2")
(string-append "https://dl.bintray.com/boostorg/release/"
version "/source/boost_"
version-with-underscores ".tar.bz2"))))
(sha256
(base32
"1dyqsr9yb01y0nnjdq9b8q5s2kvhxbayk34832k5cpzn7jy30qbz"))
"01j4n142dz20lcgqji8d8hspp04p1nv7m8i6dz8w5lchfdhx8clg"))
(patches (search-patches "boost-fix-icu-build.patch"))))
(build-system gnu-build-system)
(inputs `(("icu4c" ,icu4c)
@ -66,6 +69,7 @@
`(#:tests? #f
#:make-flags
(list "threading=multi" "link=shared"
"cxxflags=-std=c++14"
;; Set the RUNPATH to $libdir so that the libs find each other.
(string-append "linkflags=-Wl,-rpath="
@ -121,16 +125,6 @@ across a broad spectrum of applications.")
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
"Some components have other similar licences."))))
;; Some programs need Boost to be built with C++14 support.
(define-public boost-cxx14
(package (inherit boost)
(arguments
(substitute-keyword-arguments (package-arguments boost)
((#:make-flags flags)
`(append ,flags
'("cxxflags=-std=c++14")))))
(properties '((hidden? . #t)))))
(define-public boost-for-mysql
;; Older version for MySQL 5.7.23.
(package

View File

@ -158,7 +158,7 @@ files and generates build instructions for the Ninja build system.")
(define-public meson
(package
(name "meson")
(version "0.47.2")
(version "0.49.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
@ -166,7 +166,7 @@ files and generates build instructions for the Ninja build system.")
version ".tar.gz"))
(sha256
(base32
"1swmycf6p9p0ag6yiywyyri42ffkxxj38r2ic7in24km47cszn4j"))))
"0l8m1v7cl5ybm7psfqmmdqbvmnsbb1qhb8ni3hwap3i0mk29a0zv"))))
(build-system python-build-system)
(arguments
`(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH

View File

@ -525,7 +525,7 @@ from an audio CD.")
(define-public abcde
(package
(name "abcde")
(version "2.9.2")
(version "2.9.3")
(home-page "https://abcde.einval.com/")
(source (origin
(method url-fetch)
@ -533,19 +533,13 @@ from an audio CD.")
version ".tar.gz"))
(sha256
(base32
"13c5yvp87ckqgha160ym5rdr1a4divgvyqbjh0yb6ffclip6qd9l"))
"091ip2iwb6b67bhjsj05l0sxyq2whqjycbzqpkfbpm4dlyxx0v04"))
(modules '((guix build utils)))
(snippet
`(begin
'(begin
(substitute* "Makefile"
;; Fix abcde 2.9.2 still thinking it's 2.9.1.
;; XXX This will be fixed in the next release.
(("(abcde_version = abcde-)(2.9.1)" _ good bad)
(string-append good ,version))
(("/usr/bin/install")
"install")
(("^etcdir = .*$")
(string-append "etcdir = $(prefix)/etc\n")))
"install"))
#t))))
(build-system gnu-build-system)
(arguments

View File

@ -76,7 +76,7 @@
(define-public nss-certs
(package
(name "nss-certs")
(version "3.39")
(version "3.41")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@ -87,7 +87,7 @@
"nss-" version ".tar.gz")))
(sha256
(base32
"0jw6qlfl2g47hhx056nvnj6h92bk3sn46hy3ig61a911dzblvrkb"))))
"0bbif42fzz5gk451sv3yphdrl7m4p6zgk5jk0307j06xs3sihbmb"))))
(build-system gnu-build-system)
(outputs '("out"))
(native-inputs

View File

@ -672,7 +672,7 @@ standard library.")
("python-mock" ,python-mock)
("python-pytest" ,python-pytest-bootstrap)
("python-setuptools-scm" ,python-setuptools-scm)))
(home-page "http://pytest.org")
(home-page "https://docs.pytest.org/en/latest/")
(synopsis "Python testing library")
(description
"Pytest is a testing tool that provides auto-discovery of test modules

View File

@ -2,6 +2,7 @@
;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -23,6 +24,7 @@
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages boost)
@ -44,14 +46,15 @@
(package
(name "avogadro")
(version "1.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/cryos/avogadro/archive/"
version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cryos/avogadro.git")
(commit version)))
(sha256
(base32
"02v4h6hi1m7ilv0apdf74a8l1cm6dxnxyqp0rdaidrp3i9pf6lv4"))
(file-name (string-append name "-" version ".tar.gz"))
(base32 "0258py3lkba85qhs5ynancinyym61vlp0zaq9yrfs3hhnhpzv9n2"))
(file-name (git-file-name name version))
(patches
(search-patches "avogadro-eigen3-update.patch"
"avogadro-python-eigen-lib.patch"

View File

@ -44,7 +44,7 @@
(define-public cmake
(package
(name "cmake")
(version "3.12.2")
(version "3.13.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.cmake.org/files/v"
@ -52,7 +52,7 @@
"/cmake-" version ".tar.gz"))
(sha256
(base32
"19410mxgcyvk5q42phaclb1hz6rl08z4yj8iriq706p5k5bli5qg"))
"04123d7fgnn1fs5p0nwyq397ss89r0y4wkg9a09qiwkjsvk1rzmy"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -725,13 +725,13 @@ decompression of some loosely related file formats used by Microsoft.")
(version "1.8.1.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/lz4/lz4/archive/"
"v" version ".tar.gz"))
(method git-fetch)
(uri (git-reference (url "https://github.com/lz4/lz4")
(commit (string-append "v" version))))
(sha256
(base32
"1y93h6dyi3026gvpzdv310ldcylnnhwf32n75mdjf8x9fvkskwqj"))
(file-name (string-append name "-" version ".tar.gz"))))
"1jggv4lvfav53advnj0pwqgxzn868lrj8dc9zp73iwvqlj82mhmx"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs `(("valgrind" ,valgrind))) ; for tests
(arguments
@ -1747,7 +1747,7 @@ single-member files which can't be decompressed in parallel.")
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;; No tests available.
(inputs `(("boost" ,boost-cxx14)
(inputs `(("boost" ,boost)
("libiconv" ,libiconv)
("xz" ,xz)))
(native-inputs `(("pkg-config" ,pkg-config)))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,7 +20,7 @@
(define-module (gnu packages compton)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
@ -38,15 +39,16 @@
(name "compton")
(version (string-filter (char-set-complement (char-set #\_))
upstream-version))
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/chjj/" name "/archive/v"
upstream-version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/chjj/compton.git")
(commit (string-append "v" upstream-version))))
(sha256
(base32
"02dhlqqcwnmlf2dxg7rd4lapgqahgndzixdkbpxicq9jawmdb73v"))
(file-name (string-append name "-" version "-checkout"))))
"0v65viilhnd2xgvmdpzc1srxszcg8kj1vhi5gy9292j48w0s2fx1"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
`(("dbus" ,dbus)

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,6 +32,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system ocaml)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -444,3 +446,49 @@ provides BigN, BigZ, BigQ that used to be part of Coq standard library.")
simplifying the proofs of inequalities on expressions of real numbers for the
Coq proof assistant.")
(license license:cecill-c)))
(define-public coq-autosubst
;; Latest commit on that branch, where work on supporting coq 8.6 and
;; more recent versions of coq happen.
(let ((branch "coq86-devel")
(commit "d0d73557979796b3d4be7aac72135581c33f26f7"))
(package
(name "coq-autosubst")
(version (git-version "1" branch commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "git://github.com/uds-psl/autosubst.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1852xb5cwkjw3dlc0lp2sakwa40bjzw37qmwz4bn3vqazg1hnh6r"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(setenv "COQLIB" (string-append (assoc-ref outputs "out") "/lib/coq/"))
(invoke "make"
(string-append "COQLIB=" (assoc-ref outputs "out")
"/lib/coq/")
"install"))))))
(native-inputs
`(("coq" ,coq)))
(home-page "https://www.ps.uni-saarland.de/autosubst/")
(synopsis "Coq library for parallel de Bruijn substitutions")
(description "Formalizing syntactic theories with variable binders is
not easy. Autosubst is a library for the Coq proof assistant to
automate this process. Given an inductive definition of syntactic objects in
de Bruijn representation augmented with binding annotations, Autosubst
synthesizes the parallel substitution operation and automatically proves the
basic lemmas about substitutions. This library contains an automation
tactic that solves equations involving terms and substitutions. This makes the
usage of substitution lemmas unnecessary. The tactic is based on our current
work on a decision procedure for the equational theory of an extension of the
sigma-calculus by Abadi et al. The library is completely written in Coq and
uses Ltac to synthesize the substitution operation.")
(license license:bsd-3))))

View File

@ -54,7 +54,7 @@
(define-public cups-filters
(package
(name "cups-filters")
(version "1.21.0")
(version "1.21.5")
(source(origin
(method url-fetch)
(uri
@ -62,7 +62,7 @@
"cups-filters-" version ".tar.xz"))
(sha256
(base32
"0fs90xx9i4h8gbpligf5kkh21llv4kf5g3bgfbx4z272xkm7bsfi"))
"0azq9j7kqy18g6vgmvrbw8i4mcqdp3cbgh7q79x1b8p92w4si6rq"))
(modules '((guix build utils)))
(snippet
;; install backends, banners and filters to cups-filters output
@ -177,7 +177,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
(define-public cups-minimal
(package
(name "cups-minimal")
(version "2.2.8")
(version "2.2.10")
(source
(origin
(method url-fetch)
@ -185,7 +185,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
version "/cups-" version "-source.tar.gz"))
(sha256
(base32
"1r7r7b3nqpzc1a9dczqpj2mr8rkcwf01676v11sp4j7w4qfzqs1r"))))
"1fq52aw1mini3ld2czv5gg37wbbvh4n7yc7wzzxvbs3zpfrv5j3p"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -50,15 +50,14 @@
(define-public curl
(package
(name "curl")
(version "7.61.1")
(replacement curl-7.62.0)
(version "7.63.0")
(source (origin
(method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.xz"))
(sha256
(base32
"148qv1f32290r9pwg07mccawihz4srznkzsdwdl2xllvlgb16n9x"))))
"1i38v49233jirzlfqd8fy6jyf80assa953hk7w6qmysbg562604n"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;1.2 MiB of man3 pages
@ -142,19 +141,6 @@ tunneling, and so on.")
"See COPYING in the distribution."))
(home-page "https://curl.haxx.se/")))
(define-public curl-7.62.0
(package
(inherit curl)
(version "7.62.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.xz"))
(sha256
(base32
"1hbm29r3pirhn4gkcnd94ylc4jzgn3v3v7qbay9awxg7bwx69dfs"))))))
(define-public kurly
(package
(name "kurly")

View File

@ -31,7 +31,7 @@
(define-public cyrus-sasl
(package
(name "cyrus-sasl")
(version "2.1.26")
(version "2.1.27")
(source (origin
(method url-fetch)
(uri (list (string-append
@ -40,13 +40,14 @@
(string-append
"ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-"
version ".tar.gz")))
(patches (search-patches "cyrus-sasl-CVE-2013-4122.patch"))
(sha256 (base32
"1hvvbcsg21nlncbgs0cgn3iwlnb3vannzwsp6rwvnn9ba4v53g4g"))))
"1m85zcpgfdhm43cavpdkhb1s2zq1b31472hq1w1gs3xh94anp1i6"))))
(build-system gnu-build-system)
(inputs `(("gdbm" ,gdbm)
("mit-krb5" ,mit-krb5)
("openssl" ,openssl)))
(propagated-inputs
`(;; cyrus-sasl.pc refers to -lkrb5, so propagate it.
("mit-krb5" ,mit-krb5)))
(arguments
'(#:configure-flags (list (string-append "--with-plugindir="
(assoc-ref %outputs "out")

View File

@ -18,7 +18,7 @@
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
@ -583,9 +583,13 @@ Language.")
"main.stat_tables_innodb"
"roles.acl_statistics"
;; FIXME: Fixed in mysql, but we have no patch. See
;; https://bugs.mysql.com/bug.php?id=93778
;; This file contains a time bomb which makes it fail after
;; 2019-01-01. See <https://bugs.gnu.org/34351> for details.
"main.mysqldump"
;; XXX: Fails sporadically.
"innodb_fts.crash_recovery"
;; FIXME: This test fails on i686:
;; -myisampack: Can't create/write to file (Errcode: 17 "File exists")
;; +myisampack: Can't create/write to file (Errcode: 17 "File exists)
@ -690,7 +694,8 @@ as a drop-in replacement of MySQL.")
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"0jv26y3f10svrjxzsgqxg956c86b664azyk2wppzpa5x11pjga38"))))
"0jv26y3f10svrjxzsgqxg956c86b664azyk2wppzpa5x11pjga38"))
(patches (search-patches "postgresql-disable-resolve_symlinks.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-uuid=e2fs")

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
@ -25,6 +25,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (guix build-system python)
@ -247,13 +248,15 @@ designed to be used in a generic text renderer.")
(name "fbreader")
(version "0.99.6")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/geometer/FBReader/"
"archive/" version "-freebsdport.tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/geometer/FBReader")
(commit (string-append version "-freebsdport"))))
(file-name (git-file-name name version))
(sha256
(base32
"0gf1nl562fqkwlzcn6rgkp1j8jcixzmfsnwxbc0sm49zh8n3zqib"))))
"0c0s4silpax74kwfz3dfmzn4lkv6jsyb800vfak166vii0hvbv3d"))
(patches (search-patches "fbreader-curl-7.62.patch"))))
(build-system gnu-build-system)
(inputs
`(("curl" ,curl)
@ -278,7 +281,13 @@ designed to be used in a generic text renderer.")
(assoc-ref %outputs "out") "/lib"))
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(delete 'configure)
(add-after 'unpack 'fix-install-locations
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "fbreader/desktop/Makefile"
(("/usr") out))
#t))))))
(home-page "https://fbreader.org/")
(synopsis "E-Book reader")
(description "@code{fbreader} is an E-Book reader. It supports the

View File

@ -4000,8 +4000,8 @@ navigate code in a tree-like fashion.")
(define-public emacs-lispy
;; Release 0.26.0 was almost 3 years ago, and there have been ~772 commits
;; since.
(let ((commit "c2a358a7a15fcf056a5b7461a8e690b481b03b80")
(revision "0"))
(let ((commit "f94cfc6b8f9c3afe7d028c366928049c011023de")
(revision "1"))
(package
(name "emacs-lispy")
(version (git-version "0.26.0" revision commit))
@ -4011,7 +4011,7 @@ navigate code in a tree-like fashion.")
(uri (git-reference (url home-page) (commit commit)))
(sha256
(base32
"1g6756qqx2n4cx8jac6mlwayilsiyc5rz8nrqjnywvzc75xdinjd"))
"1bm2cpwizg1qfpm377gpx1af1hm5maw69if1csnk5vwaphmv8c4g"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
@ -4031,10 +4031,8 @@ S-expression.")
(license license:gpl3+))))
(define-public emacs-lispyville
;; Later versions need a more recent Evil, with an evil-define-key*
;; supporting nil for the state.
(let ((commit "b4291857ed6a49a67c4ea77522889ce51fb171ab")
(revision "0"))
(let ((commit "d28b937f0cabd8ce61e2020fe9a733ca80d82c74")
(revision "1"))
(package
(name "emacs-lispyville")
(version (git-version "0.1" revision commit))
@ -4044,7 +4042,7 @@ S-expression.")
(uri (git-reference (url home-page) (commit commit)))
(sha256
(base32
"095zibzc3naknahdrnb59g9rbljy8wz9rkc7rf8avb3wxlwvxhm3"))
"0f6srwj1qqkfkbmp5n5pjvi6gm7b7xav05p5hrs2i83rjrakzzqx"))
(file-name (git-file-name name version))))
(propagated-inputs
`(("emacs-evil" ,emacs-evil)
@ -5184,20 +5182,19 @@ news items, openrc and runscripts.")
(license license:gpl2+)))
(define-public emacs-evil
(let ((commit "230b87212c81aaa68ef5547a6b998d9c365fe139"))
(package
(name "emacs-evil")
(version (git-version "1.2.13" "1" commit))
(version "1.2.14")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-evil/evil")
(commit commit)))
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0c9zy3bpck10gcrv79kd3h7i4ygd5bgbgy773n0lg7a2r5kwn1gx"))))
"1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-undo-tree" ,emacs-undo-tree)
@ -5208,11 +5205,11 @@ news items, openrc and runscripts.")
"Evil is an extensible vi layer for Emacs. It emulates the
main features of Vim, and provides facilities for writing custom
extensions.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-evil-collection
(let ((commit "4e1f0e0b17153d460805a0da90d6191d66b2673d")
(revision "5"))
(let ((commit "0cfdf4ecf0420aac2a9dd29ff7b54067c3433d71")
(revision "6"))
(package
(name "emacs-evil-collection")
(version (git-version "0.0.1" revision commit))
@ -5224,7 +5221,7 @@ extensions.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"11d5ppdnb2y2mwsdd9g62h7zds962kw3nss89zv5iwgcf9f1fb5x"))))
"1igsvgxvij918myc397cjhfybmm11znc7961vnbcd5xlviq2p01y"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
@ -11310,20 +11307,19 @@ Org-mode. It features:
(license license:gpl3+))))
(define-public emacs-fish-completion
(let ((commit "bac15fda1392a891070574dfe5d2d50b10831e8b"))
(package
(name "emacs-fish-completion")
(version (git-version "20180616" "1" commit))
(version "1.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://gitlab.com/Ambrevar/emacs-fish-completion/repository/"
"archive.tar.gz?ref="
commit))
version))
(sha256
(base32
"093qzdrbkl7dhjk16zq8i13kh1phyigkblcfrbgbrxjqd2ndrfdi"))))
"1hpma1c5j50ja03ibr7h1xmyv7k8j3rbvqivad47kwqhlsgw0jk0"))))
(build-system emacs-build-system)
(inputs `(("fish" ,fish)))
(arguments
@ -11357,7 +11353,7 @@ shell/Eshell mode hook.
The package @code{emacs-bash-completion} is an optional dependency: if available,
@code{fish-completion-complete} can be configured to fall back on bash to further
try completing. See @code{fish-completion-fallback-on-bash-p}.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-gif-screencast
(let ((commit "12b25442b97b84abae74ecb5190a9d14ff7cfe5a"))
@ -13089,3 +13085,29 @@ GUI.")
(description "@code{emacs-google-c-style} provides an Emacs settings
file for Google C and C++ style.")
(license license:gpl1+))))
(define-public emacs-redshank
(let ((commit "f98e68f532e622bcd464292ca4a9cf5fbea14ebb")
(revision "1"))
(package
(name "emacs-redshank")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "http://www.foldr.org/~michaelw/projects/redshank.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1jdkgvd5xy9hl5q611jwah2n05abjp7qcy9sj4k1z11x0ii62b6p"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-paredit" ,emacs-paredit)))
(home-page "http://www.foldr.org/~michaelw/emacs/redshank/")
(synopsis "Common Lisp Editing Extensions (for Emacs)")
(description "Redshank is a collection of code-wrangling Emacs macros
mostly geared towards Common Lisp, but some are useful for other Lisp
dialects, too. Redshank's code transformations aim to be expression-based (as
opposed to character-based).")
(license license:gpl1+))))

View File

@ -10,6 +10,7 @@
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1911,3 +1912,24 @@ editors.")
license:cc0 ; libs/optional, libs/sexpresso
license:bsd-2 ; libs/optional/tests/catch.hpp
license:lgpl2.1+)))) ; libs/quazip
(define-public gpx
(package
(name "gpx")
(version "2.5.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/markwal/GPX.git")
(commit version)))
(sha256
(base32
"1yab269x8qyf7rd04vaxyqyjv4pzz9lp4sc4dwh927k23avr3rw5"))))
(build-system gnu-build-system)
(home-page "https://github.com/markwal/GPX")
(synopsis "Converting gcode to x3g files for 3D printing")
(description
"GPX is a post processing utility for converting gcode output from 3D
slicing software to x3g files for standalone 3D printing on common 3D
printers.")
(license license:gpl2+)))

View File

@ -71,6 +71,7 @@
(uri (string-append
"https://download.enlightenment.org/rel/libs/efl/efl-"
version ".tar.xz"))
(patches (search-patches "efl-mesa-compat.patch"))
(sha256
(base32
"0a5907h896pvpix7a6idc2fspzy6d78xrzf84k8y9fyvnd14nxs4"))))

View File

@ -6,7 +6,7 @@
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@ -139,15 +139,15 @@ line client and a client based on Qt.")
(package
(name "ledger")
(version "3.1.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/ledger/ledger/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ledger/ledger.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"12jlv3gsjhrja25q9hrwh73cdacd2l3c2yyn8qnijav9mdhnbw4h"))
(base32 "1j4p7djkmdmd858hylrsc3inamh9z0vkfl98s9wiqfmrzw51pmxp"))
(patches (search-patches "ledger-revert-boost-python-fix.patch"
"ledger-fix-uninitialized.patch"))))
(build-system cmake-build-system)
@ -252,13 +252,13 @@ in ability, and easy to use.")
(version "0.9.13")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/stesie/geierlein"
"/archive/V" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/stesie/geierlein.git")
(commit (string-append "V" version))))
(file-name (git-file-name name version))
(sha256
(base32
"11jfa7mxvvf0ldhx0hsvjbx3xwvzvn2wrfjpms8c7qmrnqhwh4wp"))))
(base32 "00zpwr3lk2vdmd60fgdwdk0xxs52wvnm19ln2m75yfphydvkglic"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; would require npm, python and a lot more
@ -590,13 +590,13 @@ Monero GUI client.")
(version "0.9.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/romanz/trezor-agent/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/romanz/trezor-agent.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0h8jb147vpjk7mqbl4za0xdh7lblhx07n9dfk80kn2plwnvrry1x"))))
(base32 "15aaqk79d9y9nbsfznf2iscz12z5ispcj8kr8v5bc0sqqj2brs12"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -604,7 +604,7 @@ Monero GUI client.")
(delete 'check)
(add-after 'install 'check
(lambda* (#:key outputs inputs #:allow-other-keys)
;; Make installed package available for running the tests
;; Make installed package available for running the tests.
(add-installed-pythonpath inputs outputs)
(invoke "py.test"))))))
(propagated-inputs

View File

@ -148,14 +148,14 @@ freedesktop.org project.")
(define-public libinput
(package
(name "libinput")
(version "1.12.1")
(version "1.12.3")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
name "-" version ".tar.xz"))
(sha256
(base32
"14l6bvgq76ls63qc9c448r435q9xiig0rv8ilx6rnjvlgg64h32p"))))
"0mg2zqbjcgj0aq7d9nwawvyhx43vakilahrc83hrfyif3a3gyrpj"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")))
@ -433,7 +433,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(define-public wayland-protocols
(package
(name "wayland-protocols")
(version "1.15")
(version "1.17")
(source (origin
(method url-fetch)
(uri (string-append
@ -441,7 +441,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"wayland-protocols-" version ".tar.xz"))
(sha256
(base32
"1qlyf9cllr2p339xxplznh023qcwj5iisp02ikx7ps349dx75fys"))))
"0bw1sqixqk2a7mqw630cs4dlgcp5yib90vyikzm3lr05jz7ij4yz"))))
(build-system gnu-build-system)
(inputs
`(("wayland" ,wayland)))

View File

@ -647,6 +647,8 @@ programming language.")
(uri (string-append "https://github.com/liballeg/allegro5/"
"releases/download/" version "/allegro-"
version ".tar.gz"))
(patches (search-patches
"allegro4-mesa-18.2.5-and-later.patch"))
(sha256
(base32
"1p0ghkmpc4kwij1z9rzxfv7adnpy4ayi0ifahlns1bdzgmbyf88v"))))
@ -687,7 +689,7 @@ etc.")
"/download/" version "/allegro-"
version ".tar.gz"))
(patches (search-patches
"allegro-fix-compilation-mesa-18.2.5-and-later.patch"))
"allegro-mesa-18.2.5-and-later.patch"))
(sha256
(base32
"1w9a5yqi5q03b2qvmx5ff90paz0xbr9cy7i7f0xiqa65ava66q9l"))))
@ -732,6 +734,8 @@ etc.")
(string-drop-right version 2)
version)
".tar.gz"))
(patches (search-patches
"allegro-mesa-18.2.5-and-later.patch"))
(sha256
(base32
"0cd51qrh97jrr0xdmnivqgwljpmizg8pixsgvc4blqqlaz4i9zj9"))))))

View File

@ -1288,14 +1288,16 @@ fight Morgoth, the Lord of Darkness.")
(version "0.7.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/Pingus/pingus/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/Pingus/pingus.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0r9v6as5vi7skvvy7b0fcaimhdlzmik64pyy68plgljhsghqkkf4"))
(patches (search-patches "pingus-sdl-libs-config.patch"))))
"0wp06kcmknsnxz7bjnsndb8x062z7r23fb3yrnbfnj68qhz18y74"))
(patches (search-patches "pingus-boost-headers.patch"
"pingus-sdl-libs-config.patch"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("scons-python2" ,scons-python2)))
@ -2005,6 +2007,13 @@ This game is based on the GPL version of the famous game TuxRacer.")
"-DCMAKE_C_FLAGS=-fpermissive")
#:phases
(modify-phases %standard-phases
;; see https://github.com/supertuxkart/stk-code/issues/3557
(add-after 'unpack 'patch-for-mesa-18.3
(lambda _
(substitute* "src/graphics/gl_headers.hpp"
(("#if !defined\\(USE_GLES2\\)")
"#if !defined(USE_GLES2)\n# define __gl_glext_h_"))
#t))
(add-after 'unpack 'unbundle
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "CMakeLists.txt"
@ -2086,7 +2095,8 @@ falling, themeable graphics and sounds, and replays.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1kgpj2f22nnx4mwd1zis3s5ny2983aasgqsmz7wnqaq7n6a7ac85"))))
"1kgpj2f22nnx4mwd1zis3s5ny2983aasgqsmz7wnqaq7n6a7ac85"))
(patches (search-patches "wesnoth-newer-boost.patch"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no check target

View File

@ -637,7 +637,8 @@ utilities for data translation and processing.")
(synopsis "Spatial database extender for PostgreSQL")
(description "PostGIS is a spatial database extender for PostgreSQL
object-relational database. It adds support for geographic objects allowing
location queries to be run in SQL.")
location queries to be run in SQL. This package provides a PostgreSQL
extension.")
(license (list
;; General license
license:gpl2+

View File

@ -135,7 +135,7 @@ printing, and psresize, for adjusting page sizes.")
(define-public ghostscript
(package
(name "ghostscript")
(version "9.24")
(version "9.26")
(source
(origin
(method url-fetch)
@ -145,10 +145,8 @@ printing, and psresize, for adjusting page sizes.")
"/ghostscript-" version ".tar.xz"))
(sha256
(base32
"1mk922rnml93w2g42yxiyn8xqanc50cm65irrgh0b6lp4kgifjfl"))
(patches (search-patches "ghostscript-CVE-2018-16509.patch"
"ghostscript-bug-699708.patch"
"ghostscript-no-header-creationdate.patch"
"1645f47all5w27bfhiq15vycdm954lmr6agqkrp68ksq6xglgvch"))
(patches (search-patches "ghostscript-no-header-creationdate.patch"
"ghostscript-no-header-id.patch"
"ghostscript-no-header-uuid.patch"))
(modules '((guix build utils)))

View File

@ -53,6 +53,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -220,7 +221,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
(version "18.1.8")
(version "18.3.1")
(source
(origin
(method url-fetch)
@ -232,7 +233,7 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz")))
(sha256
(base32
"06y28hpynb8w1qagznr85ml48hf8264w4ji6cmvm2fy7x5zyc6xx"))
"0qyw9dj2p9n91qzc4ylck2an7ibssjvzi2bjcpv2ajk851yq47sv"))
(patches
(search-patches "mesa-skip-disk-cache-test.patch"))))
(build-system gnu-build-system)
@ -252,6 +253,7 @@ also known as DXTn or DXTC) for Mesa.")
("libva" ,(force libva-without-mesa))
("libxml2" ,libxml2)
;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
("libxrandr" ,libxrandr)
("libxvmc" ,libxvmc)
,@(match (%current-system)
((or "x86_64-linux" "i686-linux")
@ -263,18 +265,15 @@ also known as DXTn or DXTC) for Mesa.")
("wayland-protocols" ,wayland-protocols)))
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python-2)
("python2-mako" ,python2-mako)
("python" ,python)
("python-mako" ,python-mako)
("which" ,(@ (gnu packages base) which))))
(arguments
`(#:configure-flags
'(,@(match (%current-system)
("armhf-linux"
;; TODO: Add etnaviv,imx when libdrm supports etnaviv.
'("--with-gallium-drivers=freedreno,nouveau,r300,r600,swrast,tegra,vc4,virgl"))
("aarch64-linux"
((or "armhf-linux" "aarch64-linux")
;; TODO: Fix svga driver for aarch64 and armhf.
'("--with-gallium-drivers=freedreno,nouveau,pl111,r300,r600,swrast,tegra,vc4,virgl"))
'("--with-gallium-drivers=etnaviv,freedreno,imx,nouveau,pl111,r300,r600,swrast,tegra,v3d,vc4,virgl"))
(_
'("--with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
;; Enable various optional features. TODO: opencl requires libclc,
@ -289,9 +288,6 @@ also known as DXTn or DXTC) for Mesa.")
"--enable-gles2"
"--enable-gbm"
"--enable-shared-glapi"
;; Without floating point texture support, drivers such as Nouveau
;; are stuck at OpenGL 2.1 instead of OpenGL 3.0+.
"--enable-texture-float"
;; Enable Vulkan on i686-linux and x86-64-linux.
,@(match (%current-system)
@ -456,14 +452,14 @@ glxgears, glxheads, and glxinfo.")
(define-public glew
(package
(name "glew")
(version "2.0.0")
(version "2.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/glew/glew/" version
"/glew-" version ".tgz"))
(sha256
(base32
"0r37fg2s1f0jrvwh6c8cz5x6v4wqmhq42qm15cs9qs349q5c6wn5"))
"159wk5dc0ykjbxvag5i1m2mhp23zkk6ra04l26y3jc3nwvkr3ph4"))
(modules '((guix build utils)))
(snippet
'(begin
@ -546,7 +542,7 @@ OpenGL graphics API.")
(define-public libepoxy
(package
(name "libepoxy")
(version "1.5.2")
(version "1.5.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -554,10 +550,11 @@ OpenGL graphics API.")
version "/libepoxy-" version ".tar.xz"))
(sha256
(base32
"1n57xj5i6giw4mp5s59w1m9bm33sd6gjg7r00dzzvcwya6326mm9"))))
"0ga3qjv50x37my6pw5xr14g5n6z78hy5s8s06kays8c3ab2mha80"))))
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'bootstrap)
(add-before
'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
@ -569,7 +566,7 @@ OpenGL graphics API.")
(("libGL.so.1") (string-append mesa "/lib/libGL.so.1"))
(("libEGL.so.1") (string-append mesa "/lib/libEGL.so.1")))
#t))))))
(build-system gnu-build-system)
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python)))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
@ -82,7 +82,7 @@
(define dbus
(package
(name "dbus")
(version "1.12.10")
(version "1.12.12")
(source (origin
(method url-fetch)
(uri (string-append
@ -90,7 +90,7 @@
version ".tar.gz"))
(sha256
(base32
"1xywijmgfad4m3cxp0b4l6kvypwc53ckmhwwzbrc6n32jwj3ssab"))
"1y7mxhkw2shd9mi9s62k81lz8npjkrafapr4fyfms7hs04kg4ilm"))
(patches (search-patches "dbus-helper-search-path.patch"))))
(build-system gnu-build-system)
(arguments
@ -159,7 +159,7 @@ shared NFS home directories.")
(define glib
(package
(name "glib")
(version "2.56.2")
(version "2.56.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
@ -167,7 +167,7 @@ shared NFS home directories.")
name "-" version ".tar.xz"))
(sha256
(base32
"12d738n1wpvrn39zvy9xazg5h6vzyiwsw8z1qibcj09mh4bbsjnn"))
"1cjcqz77m62zrx7224vl3f2cxwqf28r5xpqb2jy7av0vr2scb959"))
(patches (search-patches "glib-tests-timer.patch"))))
(build-system gnu-build-system)
(outputs '("out" ; everything
@ -194,9 +194,6 @@ shared NFS home directories.")
(modify-phases %standard-phases
(add-before 'build 'pre-build
(lambda* (#:key inputs outputs #:allow-other-keys)
;; For building deterministic pyc files
(setenv "DETERMINISTIC_BUILD" "1")
;; For tests/gdatetime.c.
(setenv "TZDIR"
(string-append (assoc-ref inputs "tzdata")
@ -495,7 +492,7 @@ by GDBus included in Glib.")
(define libsigc++
(package
(name "libsigc++")
(version "2.10.0")
(version "2.10.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libsigc++/"
@ -503,7 +500,7 @@ by GDBus included in Glib.")
name "-" version ".tar.xz"))
(sha256
(base32
"10cd54l4zihss9qxfhd2iip2k7mr292k37i54r2cpgv0c8sdchzq"))))
"00v08km4wwzbh6vjxb21388wb9dm6g2xh14rgwabnv4c2wk5z8n9"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("m4" ,m4)))
@ -722,7 +719,15 @@ up the Gnome environment, and are used in many unrelated projects.")
"0z261fwrszxb28ccg3hsg9rizig4s84zvwmx6y31a4pyv7bvs5w3")))))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--enable-vala-bindings")))
'(#:configure-flags '("--enable-vala-bindings")
;; '../tools/glib-*.py' generate files but the target dependencies are
;; (presumably) not fully specified in the makefile, leading to
;; parallel build errors like:
;;
;; EOFError: EOF read where object expected
;; make[2]: *** [Makefile:1906: _gen/register-dbus-glib-marshallers-body.h] Error 1
#:parallel-build? #f))
(native-inputs
`(("glib" ,glib "bin") ; uses glib-mkenums
("gobject-introspection" ,gobject-introspection)

View File

@ -364,12 +364,6 @@ formats like PNG, SVG, PDF and EPS.")
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'check 'use-empty-ssl-cert-file
(lambda _
;; The ca-certificates.crt is not available in the build
;; environment.
(setenv "SSL_CERT_FILE" "/dev/null")
#t))
(add-before 'check 'disable-failing-tests
(lambda _
;; The PicasaWeb API tests fail with gnome-online-accounts@3.24.2.
@ -2309,16 +2303,15 @@ configuration storage systems.")
(define-public json-glib
(package
(name "json-glib")
(version "1.4.2")
(version "1.4.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(patches (search-patches "json-glib-fix-tests-32bit.patch"))
(sha256
(base32
"1j3dd2xj1l9fi12m1gpmfgf5p4c1w0i970m6k62k3is98yj0jxrd"))))
"0ixwyis47v5bkx6h8a1iqlw3638cxcv57ivxv4gw2gaig51my33j"))))
(build-system meson-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
@ -2411,7 +2404,7 @@ library.")
(define-public glib-networking
(package
(name "glib-networking")
(version "2.54.1")
(version "2.58.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/glib-networking/"
@ -2419,28 +2412,17 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32
"0bq16m9nh3gcz9x2fvygr0iwxd2pxcbrm3lj3kihsnh1afv8g9za"))
(patches
(search-patches "glib-networking-ssl-cert-file.patch"))))
(build-system gnu-build-system)
"0s006gs9nsq6mg31spqha1jffzmp6qjh10y27h0fxf1iw1ah5ymx"))
(patches (search-patches "glib-networking-connection.patch"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
'("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-giomoduledir
;; Install GIO modules into $out/lib/gio/modules.
`(#:configure-flags '("-Dlibproxy_support=false")
#:phases (modify-phases %standard-phases
(add-before 'check 'disable-TLSv1.3
(lambda _
(substitute* "configure"
(("GIO_MODULE_DIR=.*")
(string-append "GIO_MODULE_DIR=" %output
"/lib/gio/modules\n")))
#t))
(add-before 'check 'use-empty-ssl-cert-file
(lambda _
;; The ca-certificates.crt is not available in the build
;; environment.
(setenv "SSL_CERT_FILE" "/dev/null")
;; XXX: One test fails when TLS 1.3 is enabled, fixed in 2.60.0:
;; <https://gitlab.com/gnutls/gnutls/issues/615>.
(setenv "G_TLS_GNUTLS_PRIORITY" "NORMAL:-VERS-TLS1.3")
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)
@ -2531,9 +2513,6 @@ libxml to ease remote use of the RESTful API.")
;; The 'check-local' target runs 'env LANG=C sort -u',
;; unset 'LC_ALL' to make 'LANG' working.
(unsetenv "LC_ALL")
;; The ca-certificates.crt is not available in the build
;; environment.
(setenv "SSL_CERT_FILE" "/dev/null")
;; HTTPD in Guix uses mod_event and does not build prefork.
(substitute* "tests/httpd.conf"
(("^LoadModule mpm_prefork_module.*$") "\n"))
@ -2571,7 +2550,8 @@ libxml to ease remote use of the RESTful API.")
"" ;URI of subject
"127.0.0.1" ;IP address of subject
"" ;signing?
"" ;encryption?
"" ;encryption (RSA)?
"" ;data encryption?
"" ;sign OCSP requests?
"" ;sign code?
"" ;time stamping?
@ -5678,7 +5658,7 @@ like switching to windows and launching applications.")
(define-public gtk-vnc
(package
(name "gtk-vnc")
(version "0.7.1")
(version "0.9.0")
(source
(origin
(method url-fetch)
@ -5687,7 +5667,7 @@ like switching to windows and launching applications.")
name "-" version ".tar.xz"))
(sha256
(base32
"1cdaywj5lqnl5b22qzd7k7lmacsnmk8b8rc4drk6gvqmcrlsljzk"))))
"1dya1wc9vis8h0fv625pii1n70cckf1xjg1m2hndz989d118i6is"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--with-gtk=3.0")))
@ -5767,7 +5747,7 @@ easy, safe, and automatic.")
("dbus" ,dbus)
("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
("sqlite" ,sqlite-with-fts5)
("sqlite" ,sqlite)
("nettle" ,nettle) ; XXX why is this needed?
("poppler" ,poppler)
("libgsf" ,libgsf)

View File

@ -442,7 +442,7 @@ in the Mozilla clients.")
(define-public nss
(package
(name "nss")
(version "3.39")
(version "3.41")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@ -453,7 +453,7 @@ in the Mozilla clients.")
"nss-" version ".tar.gz")))
(sha256
(base32
"0jw6qlfl2g47hhx056nvnj6h92bk3sn46hy3ig61a911dzblvrkb"))
"0bbif42fzz5gk451sv3yphdrl7m4p6zgk5jk0307j06xs3sihbmb"))
;; Create nss.pc and nss-config.
(patches (search-patches "nss-pkgconfig.patch"
"nss-increase-test-timeout.patch"))))
@ -493,7 +493,7 @@ in the Mozilla clients.")
(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 "DOMSUF" "localdomain")
(setenv "USE_IP" "TRUE")
(setenv "IP_ADDRESS" "127.0.0.1")
@ -501,7 +501,7 @@ in the Mozilla clients.")
;; leading to test failures:
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To
;; work around that, set the time to roughly the release date.
(invoke "faketime" "2018-09-01" "./nss/tests/all.sh")))
(invoke "faketime" "2018-12-01" "./nss/tests/all.sh")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -827,7 +827,7 @@ from forcing GEXP-PROMISE."
("libxt" ,libxt)
("libffi" ,libffi)
("ffmpeg" ,ffmpeg)
("libvpx" ,libvpx)
("libvpx" ,libvpx-1.7)
("icu4c" ,icu4c)
("pixman" ,pixman)
("pulseaudio" ,pulseaudio)

View File

@ -102,7 +102,7 @@ arrays of data.")
(define-public gstreamer
(package
(name "gstreamer")
(version "1.14.3")
(version "1.14.4")
(source
(origin
(method url-fetch)
@ -111,7 +111,7 @@ arrays of data.")
version ".tar.xz"))
(sha256
(base32
"0mh4755an4gk0z3ygqhjpdjk0r2cwswbpwfgl0x6qmnln4757bhk"))))
"1izzhnlsy83rgr4zl3jcl1sryxqbbigrrqw3j4x3nnphqnb6ckzr"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(arguments
@ -150,7 +150,7 @@ This package provides the core library and elements.")
(define-public gst-plugins-base
(package
(name "gst-plugins-base")
(version "1.14.3")
(version "1.14.4")
(source
(origin
(method url-fetch)
@ -158,7 +158,7 @@ This package provides the core library and elements.")
name "-" version ".tar.xz"))
(sha256
(base32
"0lkr1fm3bz21nqq9vi5v74mlxw6dd6i7piw00fhc5zz0dg1ikczh"))))
"0qbllw4kphchwhy4p7ivdysigx69i97gyw6q0rvkx1j81r4kjqfa"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(propagated-inputs
@ -209,16 +209,17 @@ for the GStreamer multimedia library.")
(define-public gst-plugins-good
(package
(name "gst-plugins-good")
(version "1.14.3")
(version "1.14.4")
(source
(origin
(method url-fetch)
(uri (string-append
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(patches (search-patches "gst-plugins-good-libvpx-compat.patch"))
(sha256
(base32
"0pgzgfqbfp8lz2ns68797xfxdr0cr5rpi93wd1h2grhbmzkbq4ji"))))
"0y89qynb4b6fry3h43z1r99qslmi3m8xhlq0i5baq2nbc0r5b2sz"))))
(build-system gnu-build-system)
(inputs
`(("aalib" ,aalib)
@ -249,7 +250,8 @@ for the GStreamer multimedia library.")
("pkg-config" ,pkg-config)
("python-wrapper" ,python-wrapper)))
(arguments
`(#:phases
`(#:make-flags '("CFLAGS=-DHAVE_VPX_1_8") ;XXX: Remove for >1.14.
#:phases
(modify-phases %standard-phases
(add-after
'unpack 'disable-failing-tests
@ -271,14 +273,14 @@ developers consider to have good quality code and correct functionality.")
(define-public gst-plugins-bad
(package
(name "gst-plugins-bad")
(version "1.14.3")
(version "1.14.4")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
"1mczcna91f3kkk3yv5fkfa8nmqdr9d93aq9z4d8sv18vkiflw8mj"))))
"1r8dma3x127rbx42yab7kwq7q1bhkmvz2ykn0rnqnzl95q74w2wi"))))
(outputs '("out" "doc"))
(build-system gnu-build-system)
(arguments
@ -346,7 +348,7 @@ par compared to the rest.")
(define-public gst-plugins-ugly
(package
(name "gst-plugins-ugly")
(version "1.14.3")
(version "1.14.4")
(source
(origin
(method url-fetch)
@ -354,7 +356,7 @@ par compared to the rest.")
name "/" name "-" version ".tar.xz"))
(sha256
(base32
"01i31g5rvw36rjlyi9w24n0g1xa6053d14vaiba6vqpas727z123"))))
"08vd1xgwmapnviah47zv5h2r02qdd20y4f07rvv5zhv6y4vxh0mc"))))
(build-system gnu-build-system)
(inputs
`(("gst-plugins-base" ,gst-plugins-base)
@ -381,7 +383,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.")
(define-public gst-libav
(package
(name "gst-libav")
(version "1.14.3")
(version "1.14.4")
(source (origin
(method url-fetch)
(uri (string-append
@ -389,7 +391,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.")
name "-" version ".tar.xz"))
(sha256
(base32
"0xxnb80yhfa42x4wx1928zydaal35b2mcj0zdcdsv1apnjdm40wv"))
"1nk5g24z2xx5kaw5cg8dv8skdc516inahmkymcz8bxqxj28qbmyz"))
(modules '((guix build utils)))
(snippet
'(begin
@ -417,7 +419,7 @@ compression formats through the use of the libav library.")
(define-public python-gst
(package
(name "python-gst")
(version "1.14.3")
(version "1.14.4")
(source (origin
(method url-fetch)
(uri (string-append
@ -425,7 +427,7 @@ compression formats through the use of the libav library.")
"gst-python-" version ".tar.xz"))
(sha256
(base32
"01w3mpimbm8drifhrkvpns79h15kd9h9v0dynr7yb12kjrnfghsg"))))
"06ssx19fs6pg4d32p9ph9w4f0xwmxaw2dxfj17rqkn5njd7v5zfh"))))
(build-system gnu-build-system)
(arguments
;; XXX: Factorize python-sitedir with python-build-system.

View File

@ -78,7 +78,9 @@
#:use-module (gnu packages cups)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg))
#:use-module (gnu packages xdisorg)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
(define-public atk
(package
@ -115,16 +117,14 @@ tools have full access to view and control running applications.")
(define-public cairo
(package
(name "cairo")
(version "1.14.12")
(version "1.16.0")
(source (origin
(method url-fetch)
(uri (string-append "https://cairographics.org/releases/cairo-"
version ".tar.xz"))
(sha256
(base32
"05mzyxkvsfc1annjw2dja8vka01ampp9pp93lg09j8hba06g144c"))
(patches (search-patches "cairo-CVE-2016-9082.patch"
"cairo-setjmp-wrapper.patch"))))
"0c930mk5xr2bshbdljv005j3j8zr47gqmkry3q6qgvqky6rjjysy"))))
(build-system gnu-build-system)
(propagated-inputs
`(("fontconfig" ,fontconfig)
@ -182,7 +182,7 @@ affine transformation (scale, rotation, shear, etc.).")
(define-public harfbuzz
(package
(name "harfbuzz")
(version "1.8.8")
(version "2.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.freedesktop.org/software/"
@ -190,7 +190,7 @@ affine transformation (scale, rotation, shear, etc.).")
version ".tar.bz2"))
(sha256
(base32
"1ag3scnm1fcviqgx2p4858y433mr0ndqw6zccnccrqcr9mpcird8"))))
"047q63jr513azf3g1y7f5xn60b4jdjs9zsmrx04sfw5rasyzrk5p"))))
(build-system gnu-build-system)
(outputs '("out"
"bin")) ; 160K, only hb-view depend on cairo
@ -458,7 +458,7 @@ highlighting and other features typical of a source code editor.")
"0ixfmnxjylx06mjaw116apymwi1a8rnkmkbbvqaxxg2pfwy9fl6x"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags '("-Dinstalled-tests=false")
`(#:configure-flags '("-Dinstalled_tests=false")
#:phases
(modify-phases %standard-phases
(add-after
@ -473,12 +473,15 @@ highlighting and other features typical of a source code editor.")
;; ERROR:pixbuf-jpeg.c:74:test_type9_rotation_exif_tag:
;; assertion failed (error == NULL): Data differ
;; (gdk-pixbuf-error-quark, 0)
((".*'pixbuf-jpeg'.*") "")
;; Extend the timeout of the test suite.
;; TODO: Check upstreaming effort:
;; https://gitlab.gnome.org/GNOME/gdk-pixbuf/merge_requests/21
(("300") "1800"))
((".*'pixbuf-jpeg'.*") ""))
#t))
;; The slow tests take longer than the specified timeout.
,@(if (any (cute string=? <> (%current-system))
'("armhf-linux" "aarch64-linux"))
'((replace 'check
(lambda _
(invoke "meson" "test" "--timeout-multiplier" "5"))))
'())
(add-before 'configure 'aid-install-script
(lambda* (#:key outputs #:allow-other-keys)
;; "build-aux/post-install.sh" invokes `gdk-pixbuf-query-loaders`
@ -690,7 +693,7 @@ application suites.")
(name "gtk+")
;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
;; mate.scm will also need to be updated.
(version "3.24.0")
(version "3.24.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -698,9 +701,18 @@ application suites.")
name "-" version ".tar.xz"))
(sha256
(base32
"1a1jbsh9fg5ykmwrcl3svy7xfvx0b87d314qsx9n483pj8w93s82"))
"14l8mimdm44r3h5pn5hzigl1z25jna8jxvb16l88v4nc4zj0afsv"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Version 3.24.2 was released with a typo that broke the build.
;; See upstream commit 2905fc861acda3d134a198e56ef2f6c962ad3061
;; at <https://gitlab.gnome.org/GNOME/gtk/tree/gtk-3-24>
(substitute* "docs/tools/shooter.c"
(("gdk_screen_get_dfeault") "gdk_screen_get_default"))
#t))))
(outputs '("out" "bin" "doc"))
(propagated-inputs
`(("at-spi2-atk" ,at-spi2-atk)
@ -1347,7 +1359,7 @@ and routines to assist in editing internationalized text.")
(define-public girara
(package
(name "girara")
(version "0.2.9")
(version "0.3.2")
(source (origin
(method url-fetch)
(uri
@ -1355,7 +1367,7 @@ and routines to assist in editing internationalized text.")
version ".tar.xz"))
(sha256
(base32
"0lkxrfna818wkkr2f6mdzf15y5z8xl1b9592ylmzjbqsqya3w7x8"))))
"1kc6n1mxjxa7wvwnqy94qfg8l9jvx9qrvrr2kc7m4g0z20x3a00p"))))
(native-inputs `(("pkg-config" ,pkg-config)
("check" ,check)
("gettext" ,gettext-minimal)

View File

@ -560,6 +560,45 @@ HTML (via SXML) or any other format for rendering.")
It has a nice, simple s-expression based syntax.")
(license license:lgpl3+)))
(define-public guile-squee
(let ((commit "a85902a92bf6f58a1d35fd974a01ade163deda8d")
(revision "0"))
(package
(name "guile-squee")
(version (string-append "0-" revision "." (string-take commit 7)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://notabug.org/cwebber/guile-squee.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0p1lpsp4kx57j3ai1dkxilm4ziavzzx8wbbc42m3hpziq0a7qz5z"))))
(build-system guile-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "squee.scm"
(("dynamic-link \"libpq\"")
(string-append
"dynamic-link \""
(assoc-ref inputs "postgresql") "/lib/libpq.so"
"\"")))
#t)))))
(inputs
`(("postgresql" ,postgresql)))
(native-inputs
`(("guile" ,guile-2.2)))
(home-page "https://notabug.org/cwebber/guile-squee")
(synopsis "Connect to PostgreSQL using Guile")
(description
"@code{squee} is a Guile library for connecting to PostgreSQL databases
using Guile's foreign function interface.")
(license license:lgpl3+))))
(define-public guile-colorized
(package
(name "guile-colorized")
@ -1798,14 +1837,14 @@ interface for reading articles in any format.")
(define-public guile-redis
(package
(name "guile-redis")
(version "1.0.0")
(version "1.3.0")
(home-page "https://github.com/aconchillo/guile-redis")
(source (origin
(method url-fetch)
(uri (string-append home-page "/archive/" version ".tar.gz"))
(sha256
(base32
"1dp5fmqvma59pvp1nfpq6hqgbmjici8sd1y8llahl87fynw1dvr9"))))
"1li70a2716my9q9zfq0qn2x5d1cir9k2vx0jm9glm464yaf1vj39"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)

View File

@ -32,7 +32,7 @@
(define-public icu4c
(package
(name "icu4c")
(version "62.1")
(version "63.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -42,7 +42,7 @@
(string-map (lambda (x) (if (char=? x #\.) #\_ x)) version)
"-src.tgz"))
(sha256
(base32 "18ssgnwzzpm1g1fvbm9h1fvryiwxvvn5wc3fdakdsl33cs6qdn9x"))))
(base32 "17fbk0lm2clsxbmjzvyp245ayx0n4chji3ky1f3fbz2ljjv91i05"))))
(build-system gnu-build-system)
(inputs
`(("perl" ,perl)))

View File

@ -466,7 +466,7 @@ extracting icontainer icon files.")
(define-public libtiff
(package
(name "libtiff")
(version "4.0.9")
(version "4.0.10")
(source
(origin
(method url-fetch)
@ -474,11 +474,7 @@ extracting icontainer icon files.")
version ".tar.gz"))
(sha256
(base32
"1kfg4q01r4mqn7dj63ifhi6pmqzbf4xax6ni6kkk81ri5kndwyvf"))
(patches (search-patches "libtiff-CVE-2017-9935.patch"
"libtiff-CVE-2017-18013.patch"
"libtiff-CVE-2018-8905.patch"
"libtiff-CVE-2018-10963.patch"))))
"1r4np635gr6zlc0bic38dzvxia6iqzcrary4n1ylarzpr8fd2lic"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;1.3 MiB of HTML documentation
@ -1302,14 +1298,14 @@ PNG, and performs PNG integrity checks and corrections.")
(define-public libjpeg-turbo
(package
(name "libjpeg-turbo")
(version "2.0.0")
(version "2.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/" name "/" version "/"
name "-" version ".tar.gz"))
(sha256
(base32
"0s48zz6awd493hmb200abmsizh68fh1jmz98r41n4c8dbl87d23p"))))
"1zv6z093l3x3jzygvni7b819j7xhn6d63jhcdrckj7fz67n6ry75"))))
(build-system cmake-build-system)
(native-inputs
`(("nasm" ,nasm)))

View File

@ -48,14 +48,14 @@
;; The 7 release series has an incompatible API, while the 6 series is still
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
;; users are ready for the 7-series API.
(version "6.9.10-14")
(version "6.9.10-16")
(source (origin
(method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz"))
(sha256
(base32
"0vcfjvdk9in92x808djvy94l5gylpgds4a7mlr8jrxsv9snx88yi"))))
"1ylbv69r8l3d4za4i8q41cs6lq06mnhiq4qm03rvs3vp3gyp1m9x"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")

View File

@ -124,14 +124,14 @@ limited support for fork events.")
(define-public libuv
(package
(name "libuv")
(version "1.23.0")
(version "1.24.0")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"09yf7c71n8b80nbsv4lsmq5nqmb0rylhpx3z9jgkv5za9lr6sx6i"))))
"01pg0zsfr8mxlpipkbpw0dpsl26x5s966f5br7dx9ac29abk419q"))))
(build-system gnu-build-system)
(arguments
'(;; XXX: Some tests want /dev/tty, attempt to make connections, etc.

View File

@ -966,9 +966,48 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(file-name "libreoffice-mdds.patch")
(sha256
(base32
"0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f"))))
(search-patches "libreoffice-icu.patch"
"libreoffice-glm.patch")))))
"0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f")))
;; The Poppler API changed rapidly in the versions leading 0.72.
;; Thus, we need several patches from upstream, each adapting to
;; different Poppler changes since version 0.68.
(origin
(method url-fetch)
(uri (string-append "https://github.com/LibreOffice/core/commit/"
"1688a395d05125b83eac6cd5c43f0e3f2f66c491"
".patch"))
(file-name "libreoffice-poppler-compat.patch")
(sha256
(base32
"0ia5avmj772mrgs6m4qqf01hs8hzpy3nafidj7w7gqx2zz2s5ih9")))
(origin
(method url-fetch)
(uri (string-append "https://github.com/LibreOffice/core/commit/"
"5e8bdd9203dd642111c62a6668ee665a20d4ba19"
".patch"))
(file-name "libreoffice-poppler-gbool.patch")
(sha256
(base32
"19kc74h5vnk48l2vny8zmm2lkxpwc7g8n9d3wwpg99748dvbmikd")))
(origin
(method url-fetch)
(uri (string-append "https://github.com/LibreOffice/core/commit/"
"8ff41a26caf51544699863c89598d37d93dc1b21"
".patch"))
(file-name "libreoffice-poppler-0.71.patch")
(sha256
(base32
"1dsd0gynjf7d6412dd2sx70xa2s8kld7ibyjdkwg5w9hhi2zxw2f"))))
(search-patches "libreoffice-boost.patch"
"libreoffice-icu.patch"
"libreoffice-glm.patch")))
(modules '((guix build utils)))
(snippet
'(begin
(for-each (lambda (file)
;; Adjust to renamed function in Poppler 0.72.
(substitute* file (("getCString") "c_str")))
(find-files "sdext/source/pdfimport/xpdfwrapper"))
#t))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("bison" ,bison)

View File

@ -368,10 +368,10 @@ connections from and to iOS devices by connecting to a socket provided by a
"m"))))
(propagated-inputs
`(("openssl" ,openssl)
("libplist" ,libplist)
("libusbmuxd" ,libusbmuxd)))
(inputs
`(("libplist" ,libplist)
("python" ,python)))
`(("python" ,python)))
(native-inputs
`(("pkg-config" ,pkg-config)
("python-cython" ,python-cython)
@ -386,6 +386,55 @@ addressbook/calendars/notes and bookmarks and (using libgpod) synchronize
music and video to the device.")
(license license:lgpl2.1+)))
(define-public ifuse
(package
(name "ifuse")
(version "1.1.3")
(source (origin
(method url-fetch)
(uri (string-append "http://www.libimobiledevice.org/downloads/"
"ifuse-" version ".tar.bz2"))
(sha256
(base32
"1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257"))))
(inputs
`(("fuse" ,fuse)
("libimobiledevice" ,libimobiledevice)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(build-system gnu-build-system)
(home-page "http://www.libimobiledevice.org/")
(synopsis "Mount iOS devices")
(description "This package provides @command{ifuse}, a command to mount
iOS devices and access their contents.")
(license license:lgpl2.1+)))
(define-public usbmuxd
(package
(name "usbmuxd")
(version "1.1.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.libimobiledevice.org/downloads/"
"usbmuxd-" version ".tar.bz2"))
(sha256
(base32
"0bdlc7a8plvglqqx39qqampqm6y0hcdws76l9dffwl22zss4i29y"))))
(inputs
`(("libplist" ,libplist)
("libusb" ,libusb)
("libimobiledevice" ,libimobiledevice)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(build-system gnu-build-system)
(home-page "http://www.libimobiledevice.org/")
(synopsis "Multiplex connections over USB to an iOS device")
(description "This package provides the @code{usbmuxd} daemon
which multiplexes connections over USB to an iOS device. To
users, it means you can sync your music, contacts, photos, etc.
over USB.")
(license license:gpl2+)))
(define-public libmtp
(package
(name "libmtp")

View File

@ -413,8 +413,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
It has been modified to remove all non-free binary blobs.")
(license license:gpl2)))
(define %linux-libre-version "4.20.6")
(define %linux-libre-hash "1wn5qf40xapsl3j19wrvgfz7ar5i0sfrri72wi78ydy4c7ik3gs5")
(define %linux-libre-version "4.20.7")
(define %linux-libre-hash "05jbpg4ivcbr8xi5ki03f4n57hnhc52nfjk1ik8czag7f4ph9v0b")
(define %linux-libre-4.20-patches
(list %boot-logo-patch
@ -427,8 +427,8 @@ It has been modified to remove all non-free binary blobs.")
#:patches %linux-libre-4.20-patches
#:configuration-file kernel-config))
(define %linux-libre-4.19-version "4.19.19")
(define %linux-libre-4.19-hash "1sgcca9zpw5hza6vkza7613pd8bmvvd2kmd2f0xkl5fyrna7dipq")
(define %linux-libre-4.19-version "4.19.20")
(define %linux-libre-4.19-hash "1rs4jvp88n23n9a6f037sn498fzl1fn96zsjjmjngb8nmjr1y9vp")
(define %linux-libre-4.19-patches
(list %boot-logo-patch
@ -441,8 +441,8 @@ It has been modified to remove all non-free binary blobs.")
#:patches %linux-libre-4.19-patches
#:configuration-file kernel-config))
(define %linux-libre-4.14-version "4.14.97")
(define %linux-libre-4.14-hash "056cnap79a0m4n9cldqfr3sbx61wvxwnpz6x9fh6lq0byqcil26k")
(define %linux-libre-4.14-version "4.14.98")
(define %linux-libre-4.14-hash "165wlqqpb16zhrwihsb75y153xyz8q5dbi14xim7jsnvwlbh5i79")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
@ -451,14 +451,14 @@ It has been modified to remove all non-free binary blobs.")
#:configuration-file kernel-config))
(define-public linux-libre-4.9
(make-linux-libre "4.9.154"
"18qy7d8ndjwx65s2z18z30px94y8ci3ymvbv0mgdcbp16brak9zf"
(make-linux-libre "4.9.155"
"0fyj8dqhpqi3jh6i58avyvmg4mp9bplnpiffpp3fdka4v85lx152"
'("x86_64-linux" "i686-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.4
(make-linux-libre "4.4.172"
"000bz3jfg0li3rwlf2c80df6682lhi59hj1kwm4hw7whgg69xi7b"
(make-linux-libre "4.4.173"
"1iy8qzjvcssf7ppb590lqzhb01ap2fjqv9iam691q1d4r8vmgcsh"
'("x86_64-linux" "i686-linux")
#:configuration-file kernel-config))
@ -1027,7 +1027,7 @@ intercept and print the system calls executed by the program.")
(define-public alsa-lib
(package
(name "alsa-lib")
(version "1.1.6")
(version "1.1.7")
(source (origin
(method url-fetch)
(uri (string-append
@ -1035,7 +1035,7 @@ intercept and print the system calls executed by the program.")
version ".tar.bz2"))
(sha256
(base32
"096pwrnhj36yndldvs2pj4r871zhcgisks0is78f1jkjn9sd4b2z"))))
"02fw7dw202mjid49w9ki3dsfcyvid5fj488561bdzcm3haw00q4x"))))
(build-system gnu-build-system)
(home-page "https://www.alsa-project.org/")
(synopsis "The Advanced Linux Sound Architecture libraries")
@ -1047,14 +1047,14 @@ MIDI functionality to the Linux-based operating system.")
(define-public alsa-utils
(package
(name "alsa-utils")
(version "1.1.6")
(version "1.1.7")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.alsa-project.org/pub/utils/"
name "-" version ".tar.bz2"))
(sha256
(base32
"0vnkyymgwj9rfdb11nvab30dnfrylmakdfildxl0y8mj836awp0m"))))
"02jlw6a22j2rr7inggfgk2hzx3w0fjhvhs0dn1afpzdp9aspzchx"))))
(build-system gnu-build-system)
(arguments
;; XXX: Disable man page creation until we have DocBook.
@ -1094,14 +1094,14 @@ MIDI functionality to the Linux-based operating system.")
(define-public alsa-plugins
(package
(name "alsa-plugins")
(version "1.1.6")
(version "1.1.7")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.alsa-project.org/pub/plugins/"
name "-" version ".tar.bz2"))
(sha256
(base32
"04qcwkisbh0d6lnh0rw1k6n869fbs6zbfq6yvb41rymiwgmk27bg"))))
"0iys4zl1davzyg3mn9lvil1n3k1ifrg3v1caj3k4dqyrnrd40jx7"))))
(build-system gnu-build-system)
;; TODO: Split libavcodec and speex if possible. It looks like they can not
;; be split, there are references to both in files.
@ -1110,7 +1110,12 @@ MIDI functionality to the Linux-based operating system.")
;; obsolete.
(outputs '("out" "pulseaudio" "jack"))
(arguments
`(#:phases
`(#:configure-flags '(;; Do not install a "local" configuration targeted
;; for /etc/alsa. On GuixSD plugins are loaded from
;; the ALSA service, and other distributions likely
;; won't use these files.
"--with-alsalconfdir=/tmp/noop")
#:phases
(modify-phases %standard-phases
(add-after 'install 'split
(lambda* (#:key inputs outputs #:allow-other-keys)
@ -1119,27 +1124,17 @@ MIDI functionality to the Linux-based operating system.")
(jack (assoc-ref outputs "jack"))
(jacklib (string-append jack "/lib/alsa-lib"))
(pua (assoc-ref outputs "pulseaudio"))
(pualib (string-append pua "/lib/alsa-lib"))
(puaconf (string-append pua "/share/alsa/alsa.conf.d")))
(pualib (string-append pua "/lib/alsa-lib")))
;; For jack.
(mkdir-p jacklib)
(for-each (lambda (file)
(rename-file file (string-append jacklib "/" (basename file))))
(find-files out ".*jack\\.(la|so)"))
;; For pluseaudio.
(mkdir-p puaconf)
;; For pulseaudio.
(mkdir-p pualib)
(chdir (string-append out "/share"))
(for-each (lambda (file)
(rename-file file (string-append puaconf "/" (basename file))))
(find-files out "\\.(conf|example)"))
(for-each (lambda (file)
(rename-file file (string-append pualib "/" (basename file))))
(find-files out ".*pulse\\.(la|so)"))
(chdir "..")
;; We have moved the files to output pulsaudio, the
;; directory is now empty.
(delete-file-recursively (string-append out "/share"))
#t))))))
(inputs
`(("alsa-lib" ,alsa-lib)
@ -1257,7 +1252,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
(define-public iproute
(package
(name "iproute2")
(version "4.19.0")
(version "4.20.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -1265,7 +1260,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
version ".tar.xz"))
(sha256
(base32
"114rlb3bvrf7q6yr03mn1rj6gl7mrg0psvm2dx0qb2kxyjhmrv6r"))))
"1a7xyvqjxfnm7rk21amm0xgxa38clg7q7cmc4dmlg27q81mambf8"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
@ -2075,20 +2070,26 @@ from the module-init-tools project.")
;; The post-systemd fork, maintained by Gentoo.
(package
(name "eudev")
(version "3.2.5")
(version "3.2.7")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/gentoo/eudev/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference (url "https://github.com/gentoo/eudev")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0dlkcgy7j4fdcksqrpc373zfybiif1bal3n6lpy1kfc5280j02c7"))
"1la7x7v7yqb84wnc7w0kj53sa0an0m9xp6wn01ypi8drh02wjjy2"))
(patches (search-patches "eudev-rules-directory.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-source-writable
(lambda _
;; XXX: Git checkouts are read-only, but this package needs to
;; modify some of its files.
(for-each make-file-writable (find-files "."))
#t))
(add-before 'bootstrap 'patch-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "man/make.sh"
@ -4717,6 +4718,13 @@ libraries, which are often integrated directly into libfabric.")
(string-append %output "/include")))
(substitute* "Makefile"
(("/lib64") "/lib"))
#t))
(add-after 'unpack 'patch-sysmacros
(lambda _
(substitute* "ipath/ipath_proto.c"
(("#include <sys/poll.h>" m)
(string-append m "\n"
"#include <sys/sysmacros.h>")))
#t)))))
(synopsis "Intel Performance Scaled Messaging (PSM) Libraries")
(description

View File

@ -17,7 +17,7 @@
;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
@ -525,13 +525,6 @@ and corrections. It is based on a Bayesian filter.")
(man (string-append out "/share/man")))
(install-file "docs/offlineimap.1" (string-append man "/man1"))
(install-file "docs/offlineimapui.7" (string-append man "/man7"))
#t)))
(add-after 'install-documentation 'wrap-binary
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin/offlineimap")))
(wrap-program bin
`("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))
#t))))))
(home-page "https://www.offlineimap.org")
(synopsis "Sync emails between two repositories")
@ -764,14 +757,14 @@ invoking @command{notifymuch} from the post-new hook.")
(define-public notmuch
(package
(name "notmuch")
(version "0.28")
(version "0.28.1")
(source (origin
(method url-fetch)
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
version ".tar.gz"))
(sha256
(base32
"0dqarmjc8544m2w7bqrqmvsfy55fw82707z3lz9cql8nr777bjmc"))))
"0mcsfkrp6mpy374m5rwwgm9md8qzvwa3s4rbzid4cnkx2cwfj4fi"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@ -1861,7 +1854,7 @@ converts them to maildir format directories.")
(define-public mpop
(package
(name "mpop")
(version "1.4.0")
(version "1.4.2")
(source
(origin
(method url-fetch)
@ -1869,7 +1862,7 @@ converts them to maildir format directories.")
name "-" version ".tar.xz"))
(sha256
(base32
"14xsvpm5bc1wycisq882gqrnamnyi1q4rlk6anlw8ihzvwgm4h2j"))))
"1rx5mhgqkm7swbynrhbsz32v85h0rydb4kqfgfs9jrznd9d14m2d"))))
(build-system gnu-build-system)
(inputs
`(("gnutls" ,gnutls)
@ -2317,7 +2310,7 @@ on the fly. Both programs are written in C and are very fast.")
(define-public swaks
(package
(name "swaks")
(version "20170101.0")
(version "20181104.0")
(source
(origin
(method url-fetch)
@ -2326,7 +2319,7 @@ on the fly. Both programs are written in C and are very fast.")
version ".tar.gz"))
(sha256
(base32
"0pli4mlhasnqqxmmxalwyg3x7n2vhcbgsnp2xgddamjavv82vrl4"))))
"0n1yd27xcyb1ylp5gln3yv5gzi9r377hjy1j32367kgb3247ygq2"))))
(build-system perl-build-system)
(inputs
`(("perl-net-dns" ,perl-net-dns)

View File

@ -749,7 +749,7 @@ incompatible with HDF5.")
(define-public hdf5
(package
(name "hdf5")
(version "1.8.19")
(version "1.8.21")
(source
(origin
(method url-fetch)
@ -759,12 +759,14 @@ incompatible with HDF5.")
version ".tar.bz2")
(string-append "https://support.hdfgroup.org/ftp/HDF5/"
"current"
(apply string-append
(take (string-split version #\.) 2))
(match (string-split version #\.)
((major minor _ ...)
(string-append major minor)))
"/src/hdf5-" version ".tar.bz2")))
(sha256
(base32 "0f3jfbqpaaq21ighi40qzs52nb52kc2d2yjk541rjmsx20b3ih2r"))
(patches (list (search-patch "hdf5-config-date.patch")))))
(base32 "03glk4w4wyb1jyb443g53y3y1ncnf6mj2cqwm6avfr2awkgb3cg5"))
(patches (search-patches "hdf5-config-date.patch"
"hdf5-1.8-mpi-deprecations.patch"))))
(build-system gnu-build-system)
(inputs
`(("zlib" ,zlib)))
@ -877,7 +879,8 @@ extremely large and complex data collections.")
"/src/hdf5-" version ".tar.bz2")))
(sha256
(base32 "1pr85fa1sh2ky6ai2hs3f21lp252grl2cq3wbyi4rh7dm83gyrqj"))
(patches (list (search-patch "hdf5-config-date.patch")))))))
(patches (search-patches "hdf5-config-date.patch"
"hdf5-mpi-deprecations.patch"))))))
(define-public hdf-java
(package
@ -2331,7 +2334,8 @@ void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g,
"RowPerm = NOROWPERM;"))
#t))
(patches (search-patches "superlu-dist-scotchmetis.patch"
"superlu-dist-awpm-grid.patch"))))
"superlu-dist-awpm-grid.patch"
"superlu-dist-fix-mpi-deprecations.patch"))))
(build-system cmake-build-system)
(native-inputs
`(("tcsh" ,tcsh)))
@ -2691,7 +2695,7 @@ to BMP, JPEG or PNG image formats.")
(define-public maxima
(package
(name "maxima")
(version "5.42.1")
(version "5.42.2")
(source
(origin
(method url-fetch)
@ -2699,7 +2703,7 @@ to BMP, JPEG or PNG image formats.")
version "-source/" name "-" version ".tar.gz"))
(sha256
(base32
"1ka0xf70a55ndgmyrq7p5xxbd78pq7bfkqhgxsivaqdw6gn5lmcg"))
"0kdncy6137sg3rradirxzj10mkcvafxd892zlclwhr9sa7b12zhn"))
(patches (search-patches "maxima-defsystem-mkdir.patch"))))
(build-system gnu-build-system)
(inputs
@ -2802,7 +2806,7 @@ point numbers.")
(define-public wxmaxima
(package
(name "wxmaxima")
(version "18.11.4")
(version "19.01.3")
(source
(origin
(method git-fetch)
@ -2812,7 +2816,7 @@ point numbers.")
(file-name (git-file-name name version))
(sha256
(base32
"1sz8n9v23q442l7yjj67pjh0dk78rl4cbcc3j8m1bm88anlfxl9r"))))
"1vwahx3zxkn3qlv4z0fm7v8wh0wspvs026alrh7ff7s0c2dcy95x"))))
(build-system cmake-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)))
@ -2926,7 +2930,7 @@ parts of it.")
(define-public openblas
(package
(name "openblas")
(version "0.3.3")
(version "0.3.4")
(source
(origin
(method url-fetch)
@ -2935,7 +2939,7 @@ parts of it.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0cvlixnpc3cdvvn3f30phfvsgnqljqix6wn72ps9rj7xdhvw06jg"))))
"1s56lgilyyw86dzmj3jkci9zsg24n60wq4d0zri1hrxlxb6ihimj"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -4244,3 +4248,485 @@ linear algebra primitives specifically targeting graph analytics.")
license:gpl2+ ;include/psort/(funnel|sort)*.h
license:x11 ;usort and psort
license:bsd-3)))) ;CombBLAS and MersenneTwister.h
(define-public dune-common
(package
(name "dune-common")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-common-" version ".tar.gz"))
(sha256
(base32
"019wcr1qf7jwyxx1y5y290wdlglylskvbb2m01ljkzcza2xnlmhw"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags)))
;; These tests fail because they require a fully functional MPI
;; environment.
(add-after 'unpack 'disable-failing-tests
(lambda _
(setenv "ARGS"
(string-append "--exclude-regex '("
(string-join
(list
"remoteindicestest"
"remoteindicestest-mpi-2"
"syncertest"
"syncertest-mpi-2"
"variablesizecommunicatortest"
"variablesizecommunicatortest-mpi-2"
"arithmetictestsuitetest"
"assertandreturntest"
"assertandreturntest_ndebug"
"concept"
"debugaligntest"
"mpicollectivecommunication"
"mpicollectivecommunication-mpi-2"
"mpiguardtest"
"mpiguardtest-mpi-2"
"mpihelpertest"
"mpihelpertest-mpi-2"
"mpihelpertest2"
"mpihelpertest2-mpi-2")
"|")
")'"))
#t)))))
(inputs
`(("gmp" ,gmp)
("metis" ,metis)
("openmpi" ,openmpi)
("openblas" ,openblas)
("python" ,python)
("superlu" ,superlu)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "DUNE, the Distributed and Unified Numerics Environment is a
modular toolbox for solving @dfn{partial differential equations} (PDEs) with
grid-based methods. It supports the easy implementation of methods like
@dfn{Finite Elements} (FE), @dfn{Finite Volumes} (FV), and also @dfn{Finite
Differences} (FD).")
;; GPL version 2 with "runtime exception" to make it behave like LGPLv2.
(license license:gpl2)))
(define-public dune-geometry
(package
(name "dune-geometry")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-geometry-" version ".tar.gz"))
(sha256
(base32
"0hlaaxjyv9j05blasvb67sy02hd0w4g9znf68gdh3l731dd1aqbn"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags))))))
(inputs
`(("dune-common" ,dune-common)
("openmpi" ,openmpi)
;; Optional
("openblas" ,openblas)
("gmp" ,gmp)
("python" ,python)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "DUNE, the Distributed and Unified Numerics Environment is a
modular toolbox for solving @dfn{partial differential equations} (PDEs) with
grid-based methods. It supports the easy implementation of methods like
@dfn{Finite Elements} (FE), @dfn{Finite Volumes} (FV), and also @dfn{Finite
Differences} (FD).
This package contains the basic DUNE geometry classes.")
;; GPL version 2 with "runtime exception"
(license license:gpl2)))
(define-public dune-grid
(package
(name "dune-grid")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-grid-" version ".tar.gz"))
(sha256
(base32
"1jp4vscm9yb9xg0lh7apzccfkhvgbnk652yahigmh3cvzpl4acd0"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags)))
;; These tests fail because they require a fully functional MPI
;; environment.
(add-after 'unpack 'disable-failing-tests
(lambda _
(setenv "ARGS"
(string-append "--exclude-regex '("
(string-join
(list
"scsgmappertest"
"conformvolumevtktest"
"gnuplottest"
"nonconformboundaryvtktest"
"subsamplingvtktest"
"vtktest"
"vtktest-mpi-2"
"vtksequencetest"
"gmshtest-onedgrid"
"test-dgf-yasp"
"test-dgf-yasp-offset"
"test-dgf-oned"
"test-geogrid-yaspgrid"
"test-gridinfo"
"test-identitygrid"
"testiteratorranges"
"test-hierarchicsearch"
"test-parallel-ug-mpi-2"
"test-yaspgrid-backuprestore-equidistant"
"test-yaspgrid-backuprestore-equidistant-mpi-2"
"test-yaspgrid-backuprestore-equidistantoffset"
"test-yaspgrid-backuprestore-equidistantoffset-mpi-2"
"test-yaspgrid-backuprestore-tensor"
"test-yaspgrid-backuprestore-tensor-mpi-2"
"test-yaspgrid-tensorgridfactory"
"test-yaspgrid-tensorgridfactory-mpi-2"
"test-yaspgrid-yaspfactory-1d"
"test-yaspgrid-yaspfactory-1d-mpi-2"
"test-yaspgrid-yaspfactory-2d"
"test-yaspgrid-yaspfactory-2d-mpi-2"
"test-yaspgrid-yaspfactory-3d"
"test-yaspgrid-yaspfactory-3d-mpi-2"
"globalindexsettest"
"persistentcontainertest"
"structuredgridfactorytest"
"tensorgridfactorytest"
"vertexordertest")
"|")
")'"))
#t)))))
(inputs
`(("dune-common" ,dune-common)
("dune-geometry" ,dune-geometry)
("gmp" ,gmp)
("metis" ,metis)
("openblas" ,openblas)
("openmpi" ,openmpi)
("python" ,python)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "DUNE, the Distributed and Unified Numerics Environment is a
modular toolbox for solving @dfn{partial differential equations} (PDEs) with
grid-based methods. It supports the easy implementation of methods like
@dfn{Finite Elements} (FE), @dfn{Finite Volumes} (FV), and also @dfn{Finite
Differences} (FD).
This package contains the basic DUNE grid classes.")
;; GPL version 2 with "runtime exception"
(license license:gpl2)))
(define-public dune-istl
(package
(name "dune-istl")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-istl-" version ".tar.gz"))
(sha256
(base32
"0l2gyrvys5w6wsmk0ckbb7295s80b7yk7qrl7x66akv2jv1nzq2w"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags)))
;; These tests fail because they require a fully functional MPI
;; environment.
(add-after 'unpack 'disable-failing-tests
(lambda _
(setenv "ARGS"
(string-append "--exclude-regex '("
(string-join
(list
"galerkintest"
"hierarchytest"
"pamgtest"
"pamg_comm_repart_test"
"matrixredisttest"
"vectorcommtest"
"matrixmarkettest")
"|")
")'"))
#t)))))
(inputs
`(("dune-common" ,dune-common)
("openmpi" ,openmpi)
;; Optional
("metis" ,metis)
("superlu" ,superlu)
("openblas" ,openblas)
("gmp" ,gmp)
("python" ,python)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "DUNE, the Distributed and Unified Numerics Environment is a
modular toolbox for solving @dfn{partial differential equations} (PDEs) with
grid-based methods.
This is the iterative solver template library which provides generic sparse
matrix/vector classes and a variety of solvers based on these classes. A
special feature is the use of templates to exploit the recursive block
structure of finite element matrices at compile time. Available solvers
include Krylov methods, (block-) incomplete decompositions and
aggregation-based algebraic multigrid.")
;; GPL version 2 with "runtime exception"
(license license:gpl2)))
(define-public dune-localfunctions
(package
(name "dune-localfunctions")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-localfunctions-" version ".tar.gz"))
(sha256
(base32
"19c6zjinwwpy8jh4v4prhphyd438rapd4x80fj93apmwgw04nrhl"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags))))))
(inputs
`(("dune-common" ,dune-common)
("dune-geometry" ,dune-geometry)
("openmpi" ,openmpi)
;; Optional
("metis" ,metis)
("superlu" ,superlu)
("gmp" ,gmp)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment") ; TODO
(description "This DUNE module provides interface and implementation for
shape functions defined on the DUNE reference elements. In addition to the
shape function, interpolation operators and special keys are provided which
can be used to assemble global function spaces on finite-element grids.
This package provides an interface and implementation for shape functions
defined on the DUNE reference elements. In addition to the shape function,
interpolation operators and special keys are provided which can be used to
assemble global function spaces on finite-element grids.")
;; GPL version 2 with "runtime exception"
(license license:gpl2)))
(define-public dune-alugrid
(package
(name "dune-alugrid")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dune-project.org/download/"
version "/dune-alugrid-" version ".tar.gz"))
(sha256
(base32
"1l9adgyjpra8mvwm445s0lpjshnb63jag85fb2hisbjn6bm320yj"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; 7 of 8 tests fail because they need a full MPI
; environment
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-include
(lambda _
(substitute* "dune/alugrid/test/test-alugrid.cc"
(("doc/grids/gridfactory/testgrids")
"doc/dune-grid/grids/gridfactory/testgrids"))
#t))
(add-after 'build 'build-tests
(lambda* (#:key inputs make-flags #:allow-other-keys)
(setenv "CPLUS_INCLUDE_PATH"
(string-append (assoc-ref inputs "dune-grid") "/share:"
(getenv "CPLUS_INCLUDE_PATH")))
(apply invoke "make" "build_tests" make-flags))))))
(inputs
`(("dune-common" ,dune-common)
("dune-geometry" ,dune-geometry)
("dune-grid" ,dune-grid)
("openmpi" ,openmpi)
;; Optional
("metis" ,metis)
("openblas" ,openblas)
("python" ,python)
("superlu" ,superlu)
("gmp" ,gmp)
("zlib" ,zlib)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "ALUGrid is an adaptive, loadbalancing, unstructured
implementation of the DUNE grid interface supporting either simplices or
cubes.")
(license license:gpl2+)))
(define-public dune-typetree
(package
(name "dune-typetree")
(version "2.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.dune-project.org/staging/dune-typetree.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0mnv6w2f22lz3j4bdpdjq55vjm8xxfx9v4vvhg9bd36xpsbjpjp9"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-tests
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "build_tests" make-flags))))))
(inputs
`(("dune-common" ,dune-common)
("openmpi" ,openmpi)
;; Optional
("openblas" ,openblas)
("python" ,python)
("metis" ,metis)
("superlu" ,superlu)
("gmp" ,gmp)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "TypeTree is a template library for constructing and
operating on statically typed trees of objects.")
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
(license (list license:lgpl3+ license:gpl2))))
(define-public dune-functions
(package
(name "dune-functions")
(version "2.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.dune-project.org/staging/dune-functions.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1an8gb477n8j0kzpbrv7nr1snh8pxip0gsxq6w63jc83gg3dj200"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; FIXME: tests require dune-uugrid
(inputs
`(("dune-common" ,dune-common)
("dune-istl" ,dune-istl)
("dune-localfunctions" ,dune-localfunctions)
("dune-grid" ,dune-grid)
("dune-geometry" ,dune-geometry)
("dune-typetree" ,dune-typetree)
("openmpi" ,openmpi)
("openblas" ,openblas)
("metis" ,metis)
("python" ,python)
("superlu" ,superlu)
("gmp" ,gmp)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Distributed and Unified Numerics Environment")
(description "The dune-functions module provides an abstraction layer for
global finite element functions. Its two main concepts are functions
implemented as callable objects, and bases of finite element spaces.")
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
(license (list license:lgpl3+ license:gpl2))))
(define-public dune-pdelab
(package
(name "dune-pdelab")
(version "2.6.0-rc1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.dune-project.org/pdelab/dune-pdelab")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"07g0s9448z65vjrq88g5rv3340iifil85k170n8kbqchsvi4ny5v"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ; XXX: the tests cannot be compiled
(inputs
`(("dune-common" ,dune-common)
("dune-istl" ,dune-istl)
("dune-localfunctions" ,dune-localfunctions)
("dune-geometry" ,dune-geometry)
("dune-grid" ,dune-grid)
("dune-typetree" ,dune-typetree)
("dune-functions" ,dune-functions)
("openmpi" ,openmpi)
;; Optional
("openblas" ,openblas)
("eigen" ,eigen)
("metis" ,metis)
("python" ,python)
("superlu" ,superlu)
("gmp" ,gmp)))
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(home-page "https://dune-project.org/")
(synopsis "Differential equations solver toolbox")
(description "PDELab is a partial differential equations solver toolbox
built on top of DUNE, the Distributed and Unified Numerics Environment.")
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
(license (list license:lgpl3+ license:gpl2))))

View File

@ -245,7 +245,7 @@ terminal using ncurses.")
"0m0mjb049sl62vx13h9waavysa30mk0rphacksnvf94n13la62v5"))))
(build-system gnu-build-system)
(inputs `(("libmpdclient" ,libmpdclient)
("boost" ,boost-cxx14)
("boost" ,boost)
("readline" ,readline)
("ncurses" ,ncurses)
("taglib" ,taglib)

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
@ -33,6 +33,7 @@
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages gcc)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages xorg)
@ -40,6 +41,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages perl)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages parallel)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages valgrind)
#:use-module (srfi srfi-1)
@ -156,7 +158,7 @@ bind processes, and much more.")
(define-public openmpi
(package
(name "openmpi")
(version "3.0.1")
(version "4.0.0")
(source
(origin
(method url-fetch)
@ -165,12 +167,13 @@ bind processes, and much more.")
"/downloads/openmpi-" version ".tar.bz2"))
(sha256
(base32
"0pbqrm5faf57nasy1s81wqivl7zvxmv8lzjh8hvb0f3qxv8m0d36"))))
"0srnjwzsmyhka9hhnmqm86qck4w3xwjm8g6sbns58wzbrwv8l2rg"))))
(build-system gnu-build-system)
(inputs
`(("hwloc" ,hwloc "lib")
("gfortran" ,gfortran)
("libfabric" ,libfabric)
("libevent" ,libevent)
,@(if (and (not (%current-target-system))
(member (%current-system) (package-supported-systems psm)))
`(("psm" ,psm))
@ -180,7 +183,8 @@ bind processes, and much more.")
`(("psm2" ,psm2))
'())
("rdma-core" ,rdma-core)
("valgrind" ,valgrind)))
("valgrind" ,valgrind)
("slurm" ,slurm))) ;for PMI support (launching via "srun")
(native-inputs
`(("pkg-config" ,pkg-config)
("perl" ,perl)))
@ -189,15 +193,15 @@ bind processes, and much more.")
`(#:configure-flags `("--enable-mpi-ext=affinity" ;cr doesn't work
"--enable-memchecker"
"--with-sge"
;; VampirTrace is obsoleted by scorep and disabling
;; it reduces the closure size considerably.
"--disable-vt"
,(string-append "--with-valgrind="
(assoc-ref %build-inputs "valgrind"))
,(string-append "--with-hwloc="
(assoc-ref %build-inputs "hwloc")))
"--with-psm"
"--with-psm2"
"--with-valgrind"
"--with-hwloc=external"
"--with-libevent"
;; Enable support for SLURM's Process Manager
;; Interface (PMI).
,(string-append "--with-pmi="
(assoc-ref %build-inputs "slurm")))
#:phases (modify-phases %standard-phases
(add-before 'build 'remove-absolute
(lambda _
@ -212,8 +216,8 @@ bind processes, and much more.")
(("_ABSOLUTE") ""))
;; Avoid valgrind (which pulls in gdb etc.).
(substitute*
'("./ompi/mca/io/romio314/src/io_romio314_component.c")
(("MCA_io_romio314_COMPLETE_CONFIGURE_FLAGS")
'("./ompi/mca/io/romio321/src/io_romio321_component.c")
(("MCA_io_romio321_COMPLETE_CONFIGURE_FLAGS")
"\"[elided to reduce closure]\""))
#t))
(add-before 'build 'scrub-timestamps ;reproducibility
@ -263,7 +267,7 @@ only provides @code{MPI_THREAD_FUNNELED}.")))
(setenv "OMPI_MCA_plm_rsh_agent" (which "false"))
;; Allow oversubscription in case there are less physical cores available
;; in the build environment than the package wants while testing.
(setenv "OMPI_MCA_rmaps_base_oversubscribe" "yes")
(setenv "OMPI_MCA_rmaps_base_mapping_policy" "core:OVERSUBSCRIBE")
#t))
(define-public python-mpi4py

View File

@ -3637,7 +3637,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
(define-public musescore
(package
(name "musescore")
(version "3.0.1")
(version "3.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3646,7 +3646,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
(file-name (git-file-name name version))
(sha256
(base32
"085qwfv3fsgry1pnx531w83lnyvf7kbaklipdf8zqa9shi6d3x9i"))
"1w9il6gg0dh4yi20nbdcibx5z5z4bvzppq8wsqf1l916hnczsj3s"))
(modules '((guix build utils)))
(snippet
;; Un-bundle OpenSSL and remove unused libraries.
@ -3660,7 +3660,11 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
'("thirdparty/freetype"
"thirdparty/openssl"
"thirdparty/portmidi"))
#t))))
#t))
;; Fix compilation error due to BUILD_WEBENGINE CMake option not
;; properly handled. Applied upstream already:
;; <https://github.com/musescore/MuseScore/commit/bb0c1a9b4940f3f6b52c0df535289ec8a3bc9e03>
(patches (search-patches "musescore-fix-use_webengine.patch"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags

View File

@ -75,14 +75,14 @@ themselves.")
;; This version is not API-compatible with version 2. In particular, lsh
;; cannot use it yet. So keep it separate.
(package (inherit nettle-2)
(version "3.4")
(version "3.4.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/nettle/nettle-"
version ".tar.gz"))
(sha256
(base32
"150y8655h629wn946dvzasq16qxsc1m9nf58mifvhl350bgl4ymf"))))
"1bcji95n1iz9p9vsgdgr26v6s7zhpsxfbjjwpqcihpfd6lawyhgr"))))
(arguments
(substitute-keyword-arguments (package-arguments nettle-2)
((#:configure-flags flags)

File diff suppressed because it is too large Load Diff

View File

@ -92,11 +92,15 @@
;; Give -L arguments for cyrus-sasl to avoid propagation.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(sasl (assoc-ref inputs "cyrus-sasl")))
(krb5 (assoc-ref inputs "mit-krb5"))) ;propagated from cyrus-sasl
;; The ancient Libtool bundled with OpenLDAP copies the linker flags
;; from Cyrus-SASL and embeds them into its own .la files. Add an
;; absolute reference to Kerberos so it does not have to be propagated.
(substitute* (map (lambda (f) (string-append out "/" f))
'("lib/libldap.la" "lib/libldap_r.la"))
(("-lsasl2" lib)
(string-append "-L" sasl "/lib " lib)))
(("-lkrb5" lib)
(string-append "-L" krb5 "/lib " lib)))
#t))))))
(synopsis "Implementation of the Lightweight Directory Access Protocol")
(description

View File

@ -4,9 +4,9 @@
;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
@ -836,23 +836,14 @@ on top of GNU Guix.")
(define-public gcab
(package
(name "gcab")
(version "1.1")
(version "1.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
version "/" name "-" version ".tar.xz"))
(uri (string-append "mirror://gnome/sources/gcab/"
version "/gcab-" version ".tar.xz"))
(sha256
(base32
"0l19sr6pg0cfcddmi5n79d08mjjbhn427ip5jlsy9zddq9r24aqr"))
;; gcab 1.1 has a hard dependency on git — even when building
;; from a tarball. Remove it early so guix environment gcab
;; can actually build what guix build --source gcab returns.
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "meson.build"
(("git_version = .*$") "git_version = []\n"))
#t))))
"038h5kk41si2hc9d9169rrlvp8xgsxq27kri7hv2vr39gvz9cbas"))))
(build-system meson-build-system)
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums
@ -961,7 +952,7 @@ the bootloader configuration.")
(define-public flatpak
(package
(name "flatpak")
(version "1.1.0")
(version "1.2.0")
(source
(origin
(method url-fetch)
@ -969,7 +960,7 @@ the bootloader configuration.")
version "/flatpak-" version ".tar.xz"))
(sha256
(base32
"0bkjwh49kajyd78vdh0g9arb352a7rccaifas9zxa78phhja2v2p"))))
"1bdk6qmsvy4d80245x1si9qvrga2f2yalj9qfmf1lqj5ljxxxifv"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ;; Tests fail due to trying to create files where it can't.
@ -988,6 +979,7 @@ the bootloader configuration.")
("pkg-config" ,pkg-config)))
(inputs `(("appstream-glib" ,appstream-glib)
("bubblewrap" ,bubblewrap)
("dconf" ,dconf)
("gdk-pixbuf" ,gdk-pixbuf)
("gpgme" ,gpgme)
("json-glib" ,json-glib)

View File

@ -0,0 +1,41 @@
Fixes compilation with Mesa >= 18.2.5.
Modified from upstream to work on allegro4:
https://github.com/liballeg/allegro5/commit/a40d30e21802ecf5c9382cf34af9b01bd3781e47
diff --git a/addons/allegrogl/include/alleggl.h b/addons/allegrogl/include/alleggl.h
index 0f86a6768..652dd024e 100644
--- a/addons/allegrogl/include/alleggl.h
+++ b/addons/allegrogl/include/alleggl.h
@@ -103,10 +103,14 @@
/* HACK: Prevent both Mesa and SGI's broken headers from screwing us */
#define __glext_h_
+#define __gl_glext_h_
#define __glxext_h_
+#define __glx_glxext_h_
#include <GL/gl.h>
#undef __glext_h_
+#undef __gl_glext_h_
#undef __glxext_h_
+#undef __glx_glxext_h_
#endif /* ALLEGRO_MACOSX */
diff --git a/addons/allegrogl/include/allegrogl/GLext/glx_ext_defs.h b/addons/allegrogl/include/allegrogl/GLext/glx_ext_defs.h
index 49c502091..fba8aea5d 100644
--- a/addons/allegrogl/include/allegrogl/GLext/glx_ext_defs.h
+++ b/addons/allegrogl/include/allegrogl/GLext/glx_ext_defs.h
@@ -1,7 +1,9 @@
/* HACK: Prevent both Mesa and SGI's broken headers from screwing us */
#define __glxext_h_
+#define __glx_glxext_h_
#include <GL/glx.h>
#undef __glxext_h_
+#undef __glx_glxext_h_
#ifndef GLX_VERSION_1_3
#define _ALLEGRO_GLX_VERSION_1_3
--
2.20.0

View File

@ -1,122 +0,0 @@
From: Adrian Johnson <ajohnson@redneon.com>
Date: Thu, 20 Oct 2016 21:12:30 +1030
Subject: [PATCH] image: prevent invalid ptr access for > 4GB images
Image data is often accessed using:
image->data + y * image->stride
On 64-bit achitectures if the image data is > 4GB, this computation
will overflow since both y and stride are 32-bit types.
bug report: https://bugs.freedesktop.org/show_bug.cgi?id=98165
patch: https://bugs.freedesktop.org/attachment.cgi?id=127421
---
boilerplate/cairo-boilerplate.c | 4 +++-
src/cairo-image-compositor.c | 4 ++--
src/cairo-image-surface-private.h | 2 +-
src/cairo-mesh-pattern-rasterizer.c | 2 +-
src/cairo-png.c | 2 +-
src/cairo-script-surface.c | 3 ++-
6 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/boilerplate/cairo-boilerplate.c b/boilerplate/cairo-boilerplate.c
index 7fdbf79..4804dea 100644
--- a/boilerplate/cairo-boilerplate.c
+++ b/boilerplate/cairo-boilerplate.c
@@ -42,6 +42,7 @@
#undef CAIRO_VERSION_H
#include "../cairo-version.h"
+#include <stddef.h>
#include <stdlib.h>
#include <ctype.h>
#include <assert.h>
@@ -976,7 +977,8 @@ cairo_surface_t *
cairo_boilerplate_image_surface_create_from_ppm_stream (FILE *file)
{
char format;
- int width, height, stride;
+ int width, height;
+ ptrdiff_t stride;
int x, y;
unsigned char *data;
cairo_surface_t *image = NULL;
diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c
index 48072f8..3ca0006 100644
--- a/src/cairo-image-compositor.c
+++ b/src/cairo-image-compositor.c
@@ -1575,7 +1575,7 @@ typedef struct _cairo_image_span_renderer {
pixman_image_t *src, *mask;
union {
struct fill {
- int stride;
+ ptrdiff_t stride;
uint8_t *data;
uint32_t pixel;
} fill;
@@ -1594,7 +1594,7 @@ typedef struct _cairo_image_span_renderer {
struct finish {
cairo_rectangle_int_t extents;
int src_x, src_y;
- int stride;
+ ptrdiff_t stride;
uint8_t *data;
} mask;
} u;
diff --git a/src/cairo-image-surface-private.h b/src/cairo-image-surface-private.h
index 8ca694c..7e78d61 100644
--- a/src/cairo-image-surface-private.h
+++ b/src/cairo-image-surface-private.h
@@ -71,7 +71,7 @@ struct _cairo_image_surface {
int width;
int height;
- int stride;
+ ptrdiff_t stride;
int depth;
unsigned owns_data : 1;
diff --git a/src/cairo-mesh-pattern-rasterizer.c b/src/cairo-mesh-pattern-rasterizer.c
index 1b63ca8..e7f0db6 100644
--- a/src/cairo-mesh-pattern-rasterizer.c
+++ b/src/cairo-mesh-pattern-rasterizer.c
@@ -470,7 +470,7 @@ draw_pixel (unsigned char *data, int width, int height, int stride,
tg += tg >> 16;
tb += tb >> 16;
- *((uint32_t*) (data + y*stride + 4*x)) = ((ta << 16) & 0xff000000) |
+ *((uint32_t*) (data + y*(ptrdiff_t)stride + 4*x)) = ((ta << 16) & 0xff000000) |
((tr >> 8) & 0xff0000) | ((tg >> 16) & 0xff00) | (tb >> 24);
}
}
diff --git a/src/cairo-png.c b/src/cairo-png.c
index 562b743..aa8c227 100644
--- a/src/cairo-png.c
+++ b/src/cairo-png.c
@@ -673,7 +673,7 @@ read_png (struct png_read_closure_t *png_closure)
}
for (i = 0; i < png_height; i++)
- row_pointers[i] = &data[i * stride];
+ row_pointers[i] = &data[i * (ptrdiff_t)stride];
png_read_image (png, row_pointers);
png_read_end (png, info);
diff --git a/src/cairo-script-surface.c b/src/cairo-script-surface.c
index ea0117d..91e4baa 100644
--- a/src/cairo-script-surface.c
+++ b/src/cairo-script-surface.c
@@ -1202,7 +1202,8 @@ static cairo_status_t
_write_image_surface (cairo_output_stream_t *output,
const cairo_image_surface_t *image)
{
- int stride, row, width;
+ int row, width;
+ ptrdiff_t stride;
uint8_t row_stack[CAIRO_STACK_BUFFER_SIZE];
uint8_t *rowdata;
uint8_t *data;
--
2.1.4

View File

@ -1,78 +0,0 @@
Revert faulty commit to avoid undefined behaviour:
https://bugs.freedesktop.org/show_bug.cgi?id=104325
Taken from this upstream commit:
https://cgit.freedesktop.org/cairo/commit/?h=1.14&id=2acc4382c54bd8239361ceed14423412a343d311
diff --git a/src/cairo-bentley-ottmann-rectangular.c b/src/cairo-bentley-ottmann-rectangular.c
index cb2e30c..5541bdc 100644
--- a/src/cairo-bentley-ottmann-rectangular.c
+++ b/src/cairo-bentley-ottmann-rectangular.c
@@ -593,12 +593,6 @@ sweep_line_insert (sweep_line_t *sweep, rectangle_t *rectangle)
pqueue_push (sweep, rectangle);
}
-static int
-sweep_line_setjmp (sweep_line_t *sweep_line)
-{
- return setjmp (sweep_line->unwind);
-}
-
static cairo_status_t
_cairo_bentley_ottmann_tessellate_rectangular (rectangle_t **rectangles,
int num_rectangles,
@@ -615,7 +609,7 @@ _cairo_bentley_ottmann_tessellate_rectangular (rectangle_t **rectangles,
rectangles, num_rectangles,
fill_rule,
do_traps, container);
- if ((status = sweep_line_setjmp (&sweep_line)))
+ if ((status = setjmp (sweep_line.unwind)))
return status;
rectangle = rectangle_pop_start (&sweep_line);
diff --git a/src/cairo-png.c b/src/cairo-png.c
index e64b14a..068617d 100644
--- a/src/cairo-png.c
+++ b/src/cairo-png.c
@@ -158,14 +158,6 @@ png_simple_warning_callback (png_structp png,
*/
}
-static int
-png_setjmp (png_struct *png)
-{
-#ifdef PNG_SETJMP_SUPPORTED
- return setjmp (png_jmpbuf (png));
-#endif
- return 0;
-}
/* Starting with libpng-1.2.30, we must explicitly specify an output_flush_fn.
* Otherwise, we will segfault if we are writing to a stream. */
@@ -237,8 +229,10 @@ write_png (cairo_surface_t *surface,
goto BAIL4;
}
- if (png_setjmp (png))
+#ifdef PNG_SETJMP_SUPPORTED
+ if (setjmp (png_jmpbuf (png)))
goto BAIL4;
+#endif
png_set_write_fn (png, closure, write_func, png_simple_output_flush_fn);
@@ -577,11 +571,12 @@ read_png (struct png_read_closure_t *png_closure)
png_set_read_fn (png, png_closure, stream_read_func);
status = CAIRO_STATUS_SUCCESS;
-
- if (png_setjmp (png)) {
+#ifdef PNG_SETJMP_SUPPORTED
+ if (setjmp (png_jmpbuf (png))) {
surface = _cairo_surface_create_in_error (status);
goto BAIL;
}
+#endif
png_read_info (png, info);

View File

@ -1,33 +0,0 @@
From 126a97d1f22f7d784d392b2b7d5aadf0a4e18c0d Mon Sep 17 00:00:00 2001
From: Petter <petter@mykolab.ch>
Date: Thu, 27 Apr 2017 20:28:02 +0200
Subject: [PATCH] Avoid checking uninitialized member + simplify condition
---
qmltermwidget/lib/TerminalDisplay.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/qmltermwidget/lib/TerminalDisplay.cpp b/qmltermwidget/lib/TerminalDisplay.cpp
index 189a609..36d2cd2 100644
--- a/qmltermwidget/lib/TerminalDisplay.cpp
+++ b/qmltermwidget/lib/TerminalDisplay.cpp
@@ -325,6 +325,7 @@ TerminalDisplay::TerminalDisplay(QQuickItem *parent)
,_terminalSizeHint(false)
,_terminalSizeStartup(true)
,_bidiEnabled(false)
+,_mouseMarks(false)
,_actSel(0)
,_wordSelectionMode(false)
,_lineSelectionMode(false)
@@ -1846,7 +1847,7 @@ void TerminalDisplay::mousePressEvent(QMouseEvent* ev)
}
else if ( ev->button() == Qt::MidButton )
{
- if ( _mouseMarks || (!_mouseMarks && (ev->modifiers() & Qt::ShiftModifier)) )
+ if ( _mouseMarks || (ev->modifiers() & Qt::ShiftModifier) )
emitSelection(true,ev->modifiers() & Qt::ControlModifier);
else
emit mouseSignal( 1, charColumn +1, charLine +1 +_scrollBar->value() -_scrollBar->maximum() , 0);
--
2.12.2

View File

@ -1,25 +0,0 @@
From c91d7ae5dbb00c8392a9f93283dc56c3e296cccd Mon Sep 17 00:00:00 2001
From: Petter <petter@mykolab.ch>
Date: Thu, 27 Apr 2017 20:19:21 +0200
Subject: [PATCH] Fix size of the array passed to memset()
---
qmltermwidget/lib/History.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qmltermwidget/lib/History.cpp b/qmltermwidget/lib/History.cpp
index 0f9c13f..ab6f7be 100644
--- a/qmltermwidget/lib/History.cpp
+++ b/qmltermwidget/lib/History.cpp
@@ -515,7 +515,7 @@ void HistoryScrollBlockArray::addCells(const Character a[], int count)
// put cells in block's data
assert((count * sizeof(Character)) < ENTRIES);
- memset(b->data, 0, ENTRIES);
+ memset(b->data, 0, sizeof(b->data));
memcpy(b->data, a, count * sizeof(Character));
b->size = count * sizeof(Character);
--
2.12.2

View File

@ -1,32 +0,0 @@
From 08628fda19128b75248548357e416bc373f14f91 Mon Sep 17 00:00:00 2001
From: Yen Chi Hsuan <yan12125@gmail.com>
Date: Sat, 18 Mar 2017 02:50:34 +0800
Subject: [PATCH] Fix memory leak in hotspot (URLs & emails) detection
---
qmltermwidget/lib/Filter.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/qmltermwidget/lib/Filter.cpp b/qmltermwidget/lib/Filter.cpp
index 5ca7bee..2e8d2fb 100644
--- a/qmltermwidget/lib/Filter.cpp
+++ b/qmltermwidget/lib/Filter.cpp
@@ -26,6 +26,7 @@
// Qt
#include <QAction>
#include <QApplication>
+#include <QtAlgorithms>
#include <QClipboard>
#include <QString>
#include <QTextStream>
@@ -194,6 +195,7 @@ Filter::~Filter()
}
void Filter::reset()
{
+ qDeleteAll(_hotspotList);
_hotspots.clear();
_hotspotList.clear();
}
--
2.12.2

View File

@ -1,130 +0,0 @@
Fix CVE-2013-4122.
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-4122
Patch copied from upstream source repository:
https://github.com/cyrusimap/cyrus-sasl/commit/dedad73e5e7a75d01a5f3d5a6702ab8ccd2ff40d
From dedad73e5e7a75d01a5f3d5a6702ab8ccd2ff40d Mon Sep 17 00:00:00 2001
From: mancha <mancha1@hush.com>
Date: Thu, 11 Jul 2013 10:08:07 +0100
Subject: Handle NULL returns from glibc 2.17+ crypt()
Starting with glibc 2.17 (eglibc 2.17), crypt() fails with EINVAL
(w/ NULL return) if the salt violates specifications. Additionally,
on FIPS-140 enabled Linux systems, DES/MD5-encrypted passwords
passed to crypt() fail with EPERM (w/ NULL return).
When using glibc's crypt(), check return value to avoid a possible
NULL pointer dereference.
Patch by mancha1@hush.com.
---
pwcheck/pwcheck_getpwnam.c | 3 ++-
pwcheck/pwcheck_getspnam.c | 4 +++-
saslauthd/auth_getpwent.c | 4 +++-
saslauthd/auth_shadow.c | 8 +++-----
4 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/pwcheck/pwcheck_getpwnam.c b/pwcheck/pwcheck_getpwnam.c
index 4b34222..400289c 100644
--- a/pwcheck/pwcheck_getpwnam.c
+++ b/pwcheck/pwcheck_getpwnam.c
@@ -32,6 +32,7 @@ char *userid;
char *password;
{
char* r;
+ char* crpt_passwd;
struct passwd *pwd;
pwd = getpwnam(userid);
@@ -41,7 +42,7 @@ char *password;
else if (pwd->pw_passwd[0] == '*') {
r = "Account disabled";
}
- else if (strcmp(pwd->pw_passwd, crypt(password, pwd->pw_passwd)) != 0) {
+ else if (!(crpt_passwd = crypt(password, pwd->pw_passwd)) || strcmp(pwd->pw_passwd, (const char *)crpt_passwd) != 0) {
r = "Incorrect password";
}
else {
diff --git a/pwcheck/pwcheck_getspnam.c b/pwcheck/pwcheck_getspnam.c
index 2b11286..6d607bb 100644
--- a/pwcheck/pwcheck_getspnam.c
+++ b/pwcheck/pwcheck_getspnam.c
@@ -32,13 +32,15 @@ char *userid;
char *password;
{
struct spwd *pwd;
+ char *crpt_passwd;
pwd = getspnam(userid);
if (!pwd) {
return "Userid not found";
}
- if (strcmp(pwd->sp_pwdp, crypt(password, pwd->sp_pwdp)) != 0) {
+ crpt_passwd = crypt(password, pwd->sp_pwdp);
+ if (!crpt_passwd || strcmp(pwd->sp_pwdp, (const char *)crpt_passwd) != 0) {
return "Incorrect password";
}
else {
diff --git a/saslauthd/auth_getpwent.c b/saslauthd/auth_getpwent.c
index fc8029d..d4ebe54 100644
--- a/saslauthd/auth_getpwent.c
+++ b/saslauthd/auth_getpwent.c
@@ -77,6 +77,7 @@ auth_getpwent (
{
/* VARIABLES */
struct passwd *pw; /* pointer to passwd file entry */
+ char *crpt_passwd; /* encrypted password */
int errnum;
/* END VARIABLES */
@@ -105,7 +106,8 @@ auth_getpwent (
}
}
- if (strcmp(pw->pw_passwd, (const char *)crypt(password, pw->pw_passwd))) {
+ crpt_passwd = crypt(password, pw->pw_passwd);
+ if (!crpt_passwd || strcmp(pw->pw_passwd, (const char *)crpt_passwd)) {
if (flags & VERBOSE) {
syslog(LOG_DEBUG, "DEBUG: auth_getpwent: %s: invalid password", login);
}
diff --git a/saslauthd/auth_shadow.c b/saslauthd/auth_shadow.c
index 677131b..1988afd 100644
--- a/saslauthd/auth_shadow.c
+++ b/saslauthd/auth_shadow.c
@@ -210,8 +210,8 @@ auth_shadow (
RETURN("NO Insufficient permission to access NIS authentication database (saslauthd)");
}
- cpw = strdup((const char *)crypt(password, sp->sp_pwdp));
- if (strcmp(sp->sp_pwdp, cpw)) {
+ cpw = crypt(password, sp->sp_pwdp);
+ if (!cpw || strcmp(sp->sp_pwdp, (const char *)cpw)) {
if (flags & VERBOSE) {
/*
* This _should_ reveal the SHADOW_PW_LOCKED prefix to an
@@ -221,10 +221,8 @@ auth_shadow (
syslog(LOG_DEBUG, "DEBUG: auth_shadow: pw mismatch: '%s' != '%s'",
sp->sp_pwdp, cpw);
}
- free(cpw);
RETURN("NO Incorrect password");
}
- free(cpw);
/*
* The following fields will be set to -1 if:
@@ -286,7 +284,7 @@ auth_shadow (
RETURN("NO Invalid username");
}
- if (strcmp(upw->upw_passwd, crypt(password, upw->upw_passwd)) != 0) {
+ if (!(cpw = crypt(password, upw->upw_passwd)) || (strcmp(upw->upw_passwd, (const char *)cpw) != 0)) {
if (flags & VERBOSE) {
syslog(LOG_DEBUG, "auth_shadow: pw mismatch: %s != %s",
password, upw->upw_passwd);
--
cgit v0.12

View File

@ -0,0 +1,21 @@
Fix build on 32-bit architectures with Mesa 18.3. Patch taken from upstream:
https://git.enlightenment.org/core/efl.git/commit/?id=0d2b624f1e24240a1c4e651aa1cfe9a8dd10a573
diff --git a/src/lib/evas/Evas_GL.h b/src/lib/evas/Evas_GL.h
index b6b642400f..4f67b1695f 100644
--- a/src/lib/evas/Evas_GL.h
+++ b/src/lib/evas/Evas_GL.h
@@ -4272,9 +4272,11 @@ typedef signed int GLfixed; // Changed khronos_int32_t
#ifndef GL_ES_VERSION_2_0
/* GL types for handling large vertex buffer objects */
-#include <stddef.h>
+# ifndef GL_VERSION_1_5
+# include <stddef.h>
typedef ptrdiff_t GLintptr; // Changed khronos_intptr_t
typedef ptrdiff_t GLsizeiptr; // Changed khronos_ssize_t
+# endif
#endif
/* Some definitions from GLES 3.0.

View File

@ -0,0 +1,30 @@
https://github.com/geometer/FBReader/commit/b7c78e965d06f78043a57e230c866c3af3f5a1eb.patch
https://github.com/geometer/FBReader/issues/310
https://github.com/geometer/FBReader/pull/311/commits
From b7c78e965d06f78043a57e230c866c3af3f5a1eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Sun, 9 Dec 2018 10:18:03 +0100
Subject: [PATCH] fix compatibility with curl-7.62
https://github.com/curl/curl/commit/3f3b26d6fe
---
zlibrary/core/src/unix/curl/ZLCurlNetworkManager.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/zlibrary/core/src/unix/curl/ZLCurlNetworkManager.cpp b/zlibrary/core/src/unix/curl/ZLCurlNetworkManager.cpp
index 54cc37f6c..03e2a5721 100644
--- a/zlibrary/core/src/unix/curl/ZLCurlNetworkManager.cpp
+++ b/zlibrary/core/src/unix/curl/ZLCurlNetworkManager.cpp
@@ -285,9 +285,11 @@ std::string ZLCurlNetworkManager::perform(const ZLExecutionData::Vector &dataLis
#endif
errors.insert(ZLStringUtil::printf(errorResource["peerFailedVerificationMessage"].value(), ZLNetworkUtil::hostFromUrl(url)));
break;
+#if LIBCURL_VERSION_NUM < 0x073e00
case CURLE_SSL_CACERT:
errors.insert(ZLStringUtil::printf(errorResource["sslCertificateAuthorityMessage"].value(), ZLNetworkUtil::hostFromUrl(url)));
break;
+#endif
case CURLE_SSL_CACERT_BADFILE:
errors.insert(ZLStringUtil::printf(errorResource["sslBadCertificateFileMessage"].value(), request.sslCertificate().Path));
break;

View File

@ -1,193 +0,0 @@
Ghostscript 9.24 was released with an incomplete fix for CVE-2018-16509:
https://nvd.nist.gov/vuln/detail/CVE-2018-16509
https://bugs.chromium.org/p/project-zero/issues/detail?id=1640#c19
https://bugs.ghostscript.com/show_bug.cgi?id=699718
The reproducers no longer work after applying these commits:
https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=5812b1b78fc4d36fdc293b7859de69241140d590
https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=e914f1da46e33decc534486598dc3eadf69e6efb
https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=3e5d316b72e3965b7968bb1d96baa137cd063ac6
https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=643b24dbd002fb9c131313253c307cf3951b3d47
This patch is a "squashed" version of those.
diff --git a/Resource/Init/gs_setpd.ps b/Resource/Init/gs_setpd.ps
index bba3c8c0e..8fa7c51df 100644
--- a/Resource/Init/gs_setpd.ps
+++ b/Resource/Init/gs_setpd.ps
@@ -95,27 +95,41 @@ level2dict begin
{ % Since setpagedevice doesn't create new device objects,
% we must (carefully) reinstall the old parameters in
% the same device.
- .currentpagedevice pop //null currentdevice //null .trysetparams
+ .currentpagedevice pop //null currentdevice //null
+ { .trysetparams } .internalstopped
+ {
+ //null
+ } if
dup type /booleantype eq
{ pop pop }
- { % This should never happen!
+ {
SETPDDEBUG { (Error in .trysetparams!) = pstack flush } if
- cleartomark pop pop pop
+ {cleartomark pop pop pop} .internalstopped pop
+ % if resetting the entire device state failed, at least put back the
+ % security related key
+ currentdevice //null //false mark /.LockSafetyParams
+ currentpagedevice /.LockSafetyParams .knownget not
+ {systemdict /SAFER .knownget not {//false} } if
+ .putdeviceparamsonly
/.installpagedevice cvx /rangecheck signalerror
}
ifelse pop pop
% A careful reading of the Red Book reveals that an erasepage
% should occur, but *not* an initgraphics.
erasepage .beginpage
- } bind def
+ } bind executeonly def
/.uninstallpagedevice
- { 2 .endpage { .currentnumcopies //false .outputpage } if
+ {
+ {2 .endpage { .currentnumcopies //false .outputpage } if} .internalstopped pop
nulldevice
} bind def
(%grestorepagedevice) cvn
- { .uninstallpagedevice grestore .installpagedevice
+ {
+ .uninstallpagedevice
+ grestore
+ .installpagedevice
} bind def
(%grestoreallpagedevice) cvn
diff --git a/psi/zdevice2.c b/psi/zdevice2.c
index 0c7080d57..159a0c0d9 100644
--- a/psi/zdevice2.c
+++ b/psi/zdevice2.c
@@ -251,8 +251,8 @@ z2currentgstate(i_ctx_t *i_ctx_p)
/* ------ Wrappers for operators that reset the graphics state. ------ */
/* Check whether we need to call out to restore the page device. */
-static bool
-restore_page_device(const gs_gstate * pgs_old, const gs_gstate * pgs_new)
+static int
+restore_page_device(i_ctx_t *i_ctx_p, const gs_gstate * pgs_old, const gs_gstate * pgs_new)
{
gx_device *dev_old = gs_currentdevice(pgs_old);
gx_device *dev_new;
@@ -260,9 +260,10 @@ restore_page_device(const gs_gstate * pgs_old, const gs_gstate * pgs_new)
gx_device *dev_t2;
bool samepagedevice = obj_eq(dev_old->memory, &gs_int_gstate(pgs_old)->pagedevice,
&gs_int_gstate(pgs_new)->pagedevice);
+ bool LockSafetyParams = dev_old->LockSafetyParams;
if ((dev_t1 = (*dev_proc(dev_old, get_page_device)) (dev_old)) == 0)
- return false;
+ return 0;
/* If we are going to putdeviceparams in a callout, we need to */
/* unlock temporarily. The device will be re-locked as needed */
/* by putdeviceparams from the pgs_old->pagedevice dict state. */
@@ -271,23 +272,51 @@ restore_page_device(const gs_gstate * pgs_old, const gs_gstate * pgs_new)
dev_new = gs_currentdevice(pgs_new);
if (dev_old != dev_new) {
if ((dev_t2 = (*dev_proc(dev_new, get_page_device)) (dev_new)) == 0)
- return false;
- if (dev_t1 != dev_t2)
- return true;
+ samepagedevice = true;
+ else if (dev_t1 != dev_t2)
+ samepagedevice = false;
+ }
+
+ if (LockSafetyParams && !samepagedevice) {
+ const int required_ops = 512;
+ const int required_es = 32;
+
+ /* The %grestorepagedevice must complete: the biggest danger
+ is operand stack overflow. As we use get/putdeviceparams
+ that means pushing all the device params onto the stack,
+ pdfwrite having by far the largest number of parameters
+ at (currently) 212 key/value pairs - thus needing (currently)
+ 424 entries on the op stack. Allowing for working stack
+ space, and safety margin.....
+ */
+ if (required_ops + ref_stack_count(&o_stack) >= ref_stack_max_count(&o_stack)) {
+ gs_currentdevice(pgs_old)->LockSafetyParams = LockSafetyParams;
+ return_error(gs_error_stackoverflow);
+ }
+ /* We also want enough exec stack space - 32 is an overestimate of
+ what we need to complete the Postscript call out.
+ */
+ if (required_es + ref_stack_count(&e_stack) >= ref_stack_max_count(&e_stack)) {
+ gs_currentdevice(pgs_old)->LockSafetyParams = LockSafetyParams;
+ return_error(gs_error_execstackoverflow);
+ }
}
/*
* The current implementation of setpagedevice just sets new
* parameters in the same device object, so we have to check
* whether the page device dictionaries are the same.
*/
- return !samepagedevice;
+ return samepagedevice ? 0 : 1;
}
/* - grestore - */
static int
z2grestore(i_ctx_t *i_ctx_p)
{
- if (!restore_page_device(igs, gs_gstate_saved(igs)))
+ int code = restore_page_device(i_ctx_p, igs, gs_gstate_saved(igs));
+ if (code < 0) return code;
+
+ if (code == 0)
return gs_grestore(igs);
return push_callout(i_ctx_p, "%grestorepagedevice");
}
@@ -297,7 +326,9 @@ static int
z2grestoreall(i_ctx_t *i_ctx_p)
{
for (;;) {
- if (!restore_page_device(igs, gs_gstate_saved(igs))) {
+ int code = restore_page_device(i_ctx_p, igs, gs_gstate_saved(igs));
+ if (code < 0) return code;
+ if (code == 0) {
bool done = !gs_gstate_saved(gs_gstate_saved(igs));
gs_grestore(igs);
@@ -328,11 +359,15 @@ z2restore(i_ctx_t *i_ctx_p)
if (code < 0) return code;
while (gs_gstate_saved(gs_gstate_saved(igs))) {
- if (restore_page_device(igs, gs_gstate_saved(igs)))
+ code = restore_page_device(i_ctx_p, igs, gs_gstate_saved(igs));
+ if (code < 0) return code;
+ if (code > 0)
return push_callout(i_ctx_p, "%restore1pagedevice");
gs_grestore(igs);
}
- if (restore_page_device(igs, gs_gstate_saved(igs)))
+ code = restore_page_device(i_ctx_p, igs, gs_gstate_saved(igs));
+ if (code < 0) return code;
+ if (code > 0)
return push_callout(i_ctx_p, "%restorepagedevice");
code = dorestore(i_ctx_p, asave);
@@ -355,9 +390,12 @@ static int
z2setgstate(i_ctx_t *i_ctx_p)
{
os_ptr op = osp;
+ int code;
check_stype(*op, st_igstate_obj);
- if (!restore_page_device(igs, igstate_ptr(op)))
+ code = restore_page_device(i_ctx_p, igs, igstate_ptr(op));
+ if (code < 0) return code;
+ if (code == 0)
return zsetgstate(i_ctx_p);
return push_callout(i_ctx_p, "%setgstatepagedevice");
}

View File

@ -1,160 +0,0 @@
Additional security fix that missed 9.24.
Taken from upstream:
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=fb713b3818b52d8a6cf62c951eba2e1795ff9624
From fb713b3818b52d8a6cf62c951eba2e1795ff9624 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Thu, 6 Sep 2018 09:16:22 +0100
Subject: [PATCH] Bug 699708 (part 1): 'Hide' non-replaceable error handlers
for SAFER
We already had a 'private' dictionary for non-standard errors: gserrordict.
This now includes all the default error handlers, the dictionary is made
noaccess and all the prodedures are bound and executeonly.
When running with -dSAFER, in the event of a Postscript error, instead of
pulling the handler from errordict, we'll pull it from gserrordict - thus
malicious input cannot trigger problems by the use of custom error handlers.
errordict remains open and writeable, so files such as the Quality Logic tests
that install their own handlers will still 'work', with the exception that the
custom error handlers will not be called.
This is a 'first pass', 'sledgehammer' approach: a nice addition would to allow
an integrator to specify a list of errors that are not to be replaced (for
example, embedded applications would probably want to ensure that VMerror is
always handled as they intend).
---
Resource/Init/gs_init.ps | 29 ++++++++++++++++++-----------
psi/interp.c | 30 +++++++++++++++++++++---------
2 files changed, 39 insertions(+), 20 deletions(-)
diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps
index 071c39205..bc8b7951c 100644
--- a/Resource/Init/gs_init.ps
+++ b/Resource/Init/gs_init.ps
@@ -881,7 +881,7 @@ userdict /.currentresourcefile //null put
{ not exch pop exit } { pop } ifelse
}
for exch pop .quit
- } bind def
+ } bind executeonly def
/.errorhandler % <command> <errorname> .errorhandler -
{ % Detect an internal 'stopped'.
1 .instopped { //null eq { pop pop stop } if } if
@@ -926,7 +926,7 @@ userdict /.currentresourcefile //null put
$error /globalmode get $error /.nosetlocal get and .setglobal
$error /.inerror //false put
stop
- } bind def
+ } bind executeonly def
% Define the standard handleerror. We break out the printing procedure
% (.printerror) so that it can be extended for binary output
% if the Level 2 facilities are present.
@@ -976,7 +976,7 @@ userdict /.currentresourcefile //null put
ifelse % newerror
end
flush
- } bind def
+ } bind executeonly def
/.printerror_long % long error printout,
% $error is on the dict stack
{ % Push the (anonymous) stack printing procedure.
@@ -1053,14 +1053,14 @@ userdict /.currentresourcefile //null put
{ (Current file position is ) print position = }
if
- } bind def
+ } bind executeonly def
% Define a procedure for clearing the error indication.
/.clearerror
{ $error /newerror //false put
$error /errorname //null put
$error /errorinfo //null put
0 .setoserrno
- } bind def
+ } bind executeonly def
% Define $error. This must be in local VM.
.currentglobal //false .setglobal
@@ -1086,11 +1086,15 @@ end
/errordict ErrorNames length 3 add dict
.forcedef % errordict is local, systemdict is global
.setglobal % back to global VM
-% For greater Adobe compatibility, we put all non-standard errors in a
-% separate dictionary, gserrordict. It does not need to be in local VM,
-% because PostScript programs do not access it.
+% gserrordict contains all the default error handling methods, but unlike
+% errordict it is noaccess after creation (also it is in global VM).
+% When running 'SAFER', we'll ignore the contents of errordict, which
+% may have been tampered with by the running job, and always use gserrordict
+% gserrordict also contains any non-standard errors, for better compatibility
+% with Adobe.
+%
% NOTE: the name gserrordict is known to the interpreter.
-/gserrordict 5 dict def
+/gserrordict ErrorNames length 3 add dict def
% Register an error in errordict. We make this a procedure because we only
% register the Level 1 errors here: the rest are registered by "feature"
% files. However, ErrorNames contains all of the error names regardless of
@@ -1119,8 +1123,11 @@ errordict begin
} bind def
end % errordict
-% Put non-standard errors in gserrordict.
-gserrordict /unknownerror errordict /unknownerror get put
+% Put all the default handlers in gserrordict
+gserrordict
+errordict {2 index 3 1 roll put} forall
+noaccess pop
+% remove the non-standard errors from errordict
errordict /unknownerror .undef
% Define a stable private copy of handleerror that we will always use under
% JOBSERVER mode.
diff --git a/psi/interp.c b/psi/interp.c
index c27b70dca..d41a9d3f5 100644
--- a/psi/interp.c
+++ b/psi/interp.c
@@ -661,16 +661,28 @@ again:
return code;
if (gs_errorname(i_ctx_p, code, &error_name) < 0)
return code; /* out-of-range error code! */
- /*
- * For greater Adobe compatibility, only the standard PostScript errors
- * are defined in errordict; the rest are in gserrordict.
+
+ /* If LockFilePermissions is true, we only refer to gserrordict, which
+ * is not accessible to Postcript jobs
*/
- if (dict_find_string(systemdict, "errordict", &perrordict) <= 0 ||
- (dict_find(perrordict, &error_name, &epref) <= 0 &&
- (dict_find_string(systemdict, "gserrordict", &perrordict) <= 0 ||
- dict_find(perrordict, &error_name, &epref) <= 0))
- )
- return code; /* error name not in errordict??? */
+ if (i_ctx_p->LockFilePermissions) {
+ if (((dict_find_string(systemdict, "gserrordict", &perrordict) <= 0 ||
+ dict_find(perrordict, &error_name, &epref) <= 0))
+ )
+ return code; /* error name not in errordict??? */
+ }
+ else {
+ /*
+ * For greater Adobe compatibility, only the standard PostScript errors
+ * are defined in errordict; the rest are in gserrordict.
+ */
+ if (dict_find_string(systemdict, "errordict", &perrordict) <= 0 ||
+ (dict_find(perrordict, &error_name, &epref) <= 0 &&
+ (dict_find_string(systemdict, "gserrordict", &perrordict) <= 0 ||
+ dict_find(perrordict, &error_name, &epref) <= 0))
+ )
+ return code; /* error name not in errordict??? */
+ }
doref = *epref;
epref = &doref;
/* Push the error object on the operand stack if appropriate. */
--
2.18.0

View File

@ -0,0 +1,51 @@
https://gitlab.gnome.org/GNOME/glib-networking/issues/4
https://gitlab.gnome.org/GNOME/glib-networking/commit/55daf3e5fd4bc9e4ebad1a9eab93f852dcbf527e.patch
This ultimately rejected work-around should be removed with the next
release, as the bug has supposedly been fixed for real.
From 55daf3e5fd4bc9e4ebad1a9eab93f852dcbf527e Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@igalia.com>
Date: Thu, 19 Jul 2018 11:16:35 -0500
Subject: [PATCH] Fix intermittent failures in missing client private key test
Because our APIs do nice things like encapsulating the TLS connection
establishment, we have our test server writing to the client after
establishing the TCP connection, because the TLS connection is
established. It's fine in theory, but results in some weirdness like the
server seeing its write having completed successfully before TLS
connection establishment. Normally that's what happens and this test
passes (server sees no error), but sometimes the server sees that the
client has already failed and the test fails.
This is unfortunate, and tricky to fix properly, so let's just remove
the bad check. The point of the test is to ensure that the TLS
connection is not established, and the client-side check is going to
have to be sufficient, because rewriting the test to wait for the TLS
connection to be established on the server side is quite tricky: my
naive attempt resulted in both sides waiting forever on the other.
P.S. At no point in this test does the server ever examine the client
certificate. That's not quite what I expected when I added the test, but
it's fine.
Fixes #4
---
tls/tests/connection.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/tls/tests/connection.c b/tls/tests/connection.c
index 94645c3..390275d 100644
--- a/tls/tests/connection.c
+++ b/tls/tests/connection.c
@@ -1125,7 +1125,6 @@ test_client_auth_fail_missing_client_private_key (TestConnection *test,
g_main_loop_run (test->loop);
g_assert_error (test->read_error, G_TLS_ERROR, G_TLS_ERROR_CERTIFICATE_REQUIRED);
- g_assert_no_error (test->server_error);
}
static void
--
2.18.1

View File

@ -1,29 +0,0 @@
From b010e41346d418220582c20ab8d7f3971e4fb78a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= <iyzsong@gmail.com>
Date: Fri, 14 Aug 2015 17:28:36 +0800
Subject: [PATCH] gnutls: Allow overriding the anchor file location by
'SSL_CERT_FILE'
---
tls/gnutls/gtlsbackend-gnutls.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tls/gnutls/gtlsbackend-gnutls.c b/tls/gnutls/gtlsbackend-gnutls.c
index 55ec1a5..217d3c8 100644
--- a/tls/gnutls/gtlsbackend-gnutls.c
+++ b/tls/gnutls/gtlsbackend-gnutls.c
@@ -101,8 +101,10 @@ g_tls_backend_gnutls_real_create_database (GTlsBackendGnutls *self,
GError **error)
{
const gchar *anchor_file = NULL;
+ anchor_file = g_getenv ("SSL_CERT_FILE");
#ifdef GTLS_SYSTEM_CA_FILE
- anchor_file = GTLS_SYSTEM_CA_FILE;
+ if (!anchor_file)
+ anchor_file = GTLS_SYSTEM_CA_FILE;
#endif
return g_tls_file_database_new (anchor_file, error);
}
--
2.4.3

View File

@ -1,24 +0,0 @@
FIXME: The static test fails with an error such as:
/tmp/guix-build-gnutls-3.5.13.drv-0/ccOnGPmc.o: In function `main':
c.29617.tmp.c:(.text+0x5): undefined reference to `gnutls_global_init'
collect2: error: ld returned 1 exit status
FAIL pkgconfig.sh (exit status: 1)
diff --git a/tests/pkgconfig.sh b/tests/pkgconfig.sh
index 6bd4e62f9..05aab8278 100755
--- a/tests/pkgconfig.sh
+++ b/tests/pkgconfig.sh
@@ -57,11 +57,7 @@ echo "Trying dynamic linking with:"
echo " * flags: $(${PKGCONFIG} --libs gnutls)"
echo " * common: ${COMMON}"
echo " * lib: ${CFLAGS}"
-cc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON}
-
-echo ""
-echo "Trying static linking with $(${PKGCONFIG} --libs --static gnutls)"
-cc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --static --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON}
+gcc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON}
rm -f ${TMPFILE} ${TMPFILE_O}

View File

@ -0,0 +1,58 @@
Fix build with libvpx 1.8.
Taken from this upstream commit:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/commit/b6e6f1ae73375ef66a5748069843aaed1a83e6a6
Note: Remove the HAVE_VPX_1_8 build flag with this patch. It was added
to avoid re-creating the configure script.
diff --git a/configure.ac b/configure.ac
index 5e4cff126..8c20e5081 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1054,6 +1054,10 @@ AG_GST_CHECK_FEATURE(VPX, [VPX decoder], vpx, [
AC_DEFINE(HAVE_VPX_1_4, 1, [Defined if the VPX library version is 1.4 or bigger])
], [true])
+ PKG_CHECK_MODULES(VPX_180, vpx >= 1.8.0, [
+ AC_DEFINE(HAVE_VPX_1_8, 1, [Defined if the VPX library version is 1.8 or bigger])
+ ], [true])
+
LIBS="$OLD_LIBS"
CFLAGS="$OLD_CFLAGS"
fi
diff --git a/ext/vpx/gstvpxdec.c b/ext/vpx/gstvpxdec.c
index c3f0f625f..da4322513 100644
--- a/ext/vpx/gstvpxdec.c
+++ b/ext/vpx/gstvpxdec.c
@@ -62,6 +62,7 @@ gst_vpx_dec_post_processing_flags_get_type (void)
{C_FLAGS (VP8_DEBLOCK), "Deblock", "deblock"},
{C_FLAGS (VP8_DEMACROBLOCK), "Demacroblock", "demacroblock"},
{C_FLAGS (VP8_ADDNOISE), "Add noise", "addnoise"},
+#ifndef HAVE_VPX_1_8
{C_FLAGS (VP8_DEBUG_TXT_FRAME_INFO),
"Print frame information",
"visualize-frame-info"},
@@ -74,6 +75,7 @@ gst_vpx_dec_post_processing_flags_get_type (void)
{C_FLAGS (VP8_DEBUG_TXT_RATE_INFO),
"Print video rate info",
"visualize-rate-info"},
+#endif
{C_FLAGS (VP8_MFQE), "Multi-frame quality enhancement", "mfqe"},
{0, NULL, NULL}
};
diff --git a/ext/vpx/meson.build b/ext/vpx/meson.build
index 6ed440728..0d2340b32 100644
--- a/ext/vpx/meson.build
+++ b/ext/vpx/meson.build
@@ -48,6 +48,10 @@ if vpx_dep.found()
vpx_args += '-DHAVE_VPX_1_4'
endif
+ if dependency('vpx', version : '>=1.8.0', required : false).found()
+ vpx_args += '-DHAVE_VPX_1_8'
+ endif
+
gstvpx = library('gstvpx',
vpx_sources,
c_args : gst_plugins_good_args + vpx_args,

View File

@ -0,0 +1,169 @@
--- a/src/H5.c
+++ b/src/H5.c
@@ -138,7 +138,7 @@
if (mpi_initialized && !mpi_finalized) {
int key_val;
- if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_NULL_COPY_FN,
+ if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_COMM_NULL_COPY_FN,
(MPI_Comm_delete_attr_function *)H5_mpi_delete_cb,
&key_val, NULL)))
HMPI_GOTO_ERROR(FAIL, "MPI_Comm_create_keyval failed", mpi_code)
--- hdf5-1.8.19/testpar/t_cache.c
+++ hdf5-1.8.19/testpar/t_cache.c
@@ -1187,20 +1187,20 @@
struct mssg_t sample; /* used to compute displacements */
/* setup the displacements array */
- if ( ( MPI_SUCCESS != MPI_Address(&sample.req, &displs[0]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.src, &displs[1]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.dest, &displs[2]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.mssg_num, &displs[3]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.base_addr, &displs[4]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.len, &displs[5]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.ver, &displs[6]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.count, &displs[7]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.magic, &displs[8]) ) ) {
+ if ( ( MPI_SUCCESS != MPI_Get_address(&sample.req, &displs[0]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.src, &displs[1]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.dest, &displs[2]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.mssg_num, &displs[3]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.base_addr, &displs[4]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.len, &displs[5]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.ver, &displs[6]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.count, &displs[7]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.magic, &displs[8]) ) ) {
nerrors++;
success = FALSE;
if ( verbose ) {
- HDfprintf(stdout, "%d:%s: MPI_Address() call failed.\n",
+ HDfprintf(stdout, "%d:%s: MPI_Get_address() call failed.\n",
world_mpi_rank, fcn_name);
}
@@ -1215,14 +1215,14 @@
if ( success ) {
- result = MPI_Type_struct(9, block_len, displs, mpi_types, &mpi_mssg_t);
+ result = MPI_Type_create_struct(9, block_len, displs, mpi_types, &mpi_mssg_t);
if ( result != MPI_SUCCESS ) {
nerrors++;
success = FALSE;
if ( verbose ) {
- HDfprintf(stdout, "%d:%s: MPI_Type_struct() call failed.\n",
+ HDfprintf(stdout, "%d:%s: MPI_Type_create_struct() call failed.\n",
world_mpi_rank, fcn_name);
}
}
--- hdf5-1.8.19/testpar/t_mpi.c
+++ hdf5-1.8.19/testpar/t_mpi.c
@@ -279,7 +279,7 @@
printf("Skipped GB file range test "
"because MPI_Offset cannot support it\n");
}else{
- buf = HDmalloc(MB);
+ buf = (char *)HDmalloc(MB);
VRFY((buf!=NULL), "malloc succeed");
/* open a new file. Remove it first in case it exists. */
@@ -624,7 +624,7 @@
and this platform.
1. Details for the test:
-1) Create two derived datatypes with MPI_Type_hindexed:
+1) Create two derived datatypes with MPI_Type_create_hindexed:
datatype1:
count = 1, blocklens = 1, offsets = 0,
base type = MPI_BYTE(essentially a char)
@@ -633,7 +633,7 @@
base type = MPI_BYTE
2) Using these two derived datatypes,
- Build another derived datatype with MPI_Type_struct:
+ Build another derived datatype with MPI_Type_create_struct:
advtype: derived from datatype1 and datatype2
advtype:
count = 2, blocklens[0] = 1, blocklens[1]=1,
@@ -676,10 +676,9 @@
int mpi_err_strlen;
int mpi_err;
int i;
- int nerrors = 0; /* number of errors */
MPI_Datatype etype,filetype;
MPI_Datatype adv_filetype,bas_filetype[2];
- MPI_Datatype etypenew, filetypenew;
+ MPI_Datatype filetypenew;
MPI_Offset disp;
MPI_Status Status;
MPI_Aint adv_disp[2];
@@ -715,7 +714,7 @@
blocklens[0] = 1;
offsets[0] = 0;
- if((mpi_err= MPI_Type_hindexed(count,blocklens,offsets,MPI_BYTE,&filetype))
+ if((mpi_err= MPI_Type_create_hindexed(count,blocklens,offsets,MPI_BYTE,&filetype))
!= MPI_SUCCESS){
MPI_Error_string(mpi_err, mpi_err_str, &mpi_err_strlen);
printf("MPI_Type_contiguous failed (%s)\n", mpi_err_str);
@@ -731,7 +730,7 @@
count = 1;
blocklens[0]=1;
offsets[0] = 1;
- if((mpi_err= MPI_Type_hindexed(count,blocklens,offsets,MPI_BYTE,&filetypenew))
+ if((mpi_err= MPI_Type_create_hindexed(count,blocklens,offsets,MPI_BYTE,&filetypenew))
!= MPI_SUCCESS){
MPI_Error_string(mpi_err, mpi_err_str, &mpi_err_strlen);
printf("MPI_Type_contiguous failed (%s)\n", mpi_err_str);
@@ -752,10 +751,10 @@
bas_filetype[0] = filetype;
bas_filetype[1] = filetypenew;
- if((mpi_err= MPI_Type_struct(outcount,adv_blocklens,adv_disp,bas_filetype,&adv_filetype))
+ if((mpi_err= MPI_Type_create_struct(outcount,adv_blocklens,adv_disp,bas_filetype,&adv_filetype))
!= MPI_SUCCESS){
MPI_Error_string(mpi_err, mpi_err_str, &mpi_err_strlen);
- printf("MPI_Type_struct failed (%s)\n", mpi_err_str);
+ printf("MPI_Type_create_struct failed (%s)\n", mpi_err_str);
return 1;
}
if((mpi_err=MPI_Type_commit(&adv_filetype))!=MPI_SUCCESS){
@@ -842,7 +841,7 @@
processes are needed.
1. Details for the test:
-1) Create one derived datatype with MPI_Type_hindexed:
+1) Create one derived datatype with MPI_Type_create_hindexed:
2) Choosing at least two processes to contribute none for IO with
the buf size inside MPI_Write_at_all to 0.
@@ -898,7 +897,7 @@
offsets[1] = (mpi_size+mpi_rank)*count;
if(count !=0) {
- if((mpi_err = MPI_Type_hindexed(2,
+ if((mpi_err = MPI_Type_create_hindexed(2,
blocklens,
offsets,
etype,
@@ -914,7 +913,7 @@
return 1;
} /* end if */
- if((mpi_err = MPI_Type_hindexed(2,
+ if((mpi_err = MPI_Type_create_hindexed(2,
blocklens,
offsets,
etype,
@@ -1098,7 +1097,7 @@
* calls. By then, MPI calls may not work.
*/
if (H5dont_atexit() < 0){
- printf("Failed to turn off atexit processing. Continue.\n", mpi_rank);
+ printf("Failed to turn off atexit processing. Continue.\n");
};
H5open();
if (parse_options(argc, argv) != 0){

View File

@ -0,0 +1,61 @@
--- a/src/H5.c
+++ b/src/H5.c
@@ -138,7 +138,7 @@
if (mpi_initialized && !mpi_finalized) {
int key_val;
- if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_NULL_COPY_FN,
+ if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_COMM_NULL_COPY_FN,
(MPI_Comm_delete_attr_function *)H5_mpi_delete_cb,
&key_val, NULL)))
HMPI_GOTO_ERROR(FAIL, "MPI_Comm_create_keyval failed", mpi_code)
--- hdf5-1.10.4/testpar/t_cache.c
+++ hdf5-1.10.4/testpar/t_cache.c
@@ -1217,20 +1217,20 @@
struct mssg_t sample; /* used to compute displacements */
/* setup the displacements array */
- if ( ( MPI_SUCCESS != MPI_Address(&sample.req, &displs[0]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.src, &displs[1]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.dest, &displs[2]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.mssg_num, &displs[3]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.base_addr, &displs[4]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.len, &displs[5]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.ver, &displs[6]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.count, &displs[7]) ) ||
- ( MPI_SUCCESS != MPI_Address(&sample.magic, &displs[8]) ) ) {
+ if ( ( MPI_SUCCESS != MPI_Get_address(&sample.req, &displs[0]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.src, &displs[1]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.dest, &displs[2]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.mssg_num, &displs[3]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.base_addr, &displs[4]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.len, &displs[5]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.ver, &displs[6]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.count, &displs[7]) ) ||
+ ( MPI_SUCCESS != MPI_Get_address(&sample.magic, &displs[8]) ) ) {
nerrors++;
success = FALSE;
if ( verbose ) {
- HDfprintf(stdout, "%d:%s: MPI_Address() call failed.\n",
+ HDfprintf(stdout, "%d:%s: MPI_Get_address() call failed.\n",
world_mpi_rank, FUNC);
}
@@ -1245,14 +1245,14 @@
if ( success ) {
- result = MPI_Type_struct(9, block_len, displs, mpi_types, &mpi_mssg_t);
+ result = MPI_Type_create_struct(9, block_len, displs, mpi_types, &mpi_mssg_t);
if ( result != MPI_SUCCESS ) {
nerrors++;
success = FALSE;
if ( verbose ) {
- HDfprintf(stdout, "%d:%s: MPI_Type_struct() call failed.\n",
+ HDfprintf(stdout, "%d:%s: MPI_Type_create_struct() call failed.\n",
world_mpi_rank, FUNC);
}
}

View File

@ -0,0 +1,499 @@
Fix compatibility with Poppler >= 0.69.
This is a combination of these upstream commits:
https://gitlab.com/inkscape/inkscape/commit/722e121361d0f784083d10e897155b7d4e44e515
https://gitlab.com/inkscape/inkscape/commit/402c0274420fe39fd2f3393bc7d8d8879d436358
...with slight adjustments for the 0.92.3 release tarball.
diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake
--- a/CMakeScripts/DefineDependsandFlags.cmake
+++ b/CMakeScripts/DefineDependsandFlags.cmake
@@ -116,18 +116,6 @@ if(ENABLE_POPPLER)
set(HAVE_POPPLER_GLIB ON)
endif()
endif()
- if(POPPLER_VERSION VERSION_GREATER "0.26.0" OR
- POPPLER_VERSION VERSION_EQUAL "0.26.0")
- set(POPPLER_EVEN_NEWER_COLOR_SPACE_API ON)
- endif()
- if(POPPLER_VERSION VERSION_GREATER "0.29.0" OR
- POPPLER_VERSION VERSION_EQUAL "0.29.0")
- set(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API ON)
- endif()
- if(POPPLER_VERSION VERSION_GREATER "0.58.0" OR
- POPPLER_VERSION VERSION_EQUAL "0.58.0")
- set(POPPLER_NEW_OBJECT_API ON)
- endif()
else()
set(ENABLE_POPPLER_CAIRO OFF)
endif()
diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp
--- a/src/extension/internal/pdfinput/pdf-input.cpp
+++ b/src/extension/internal/pdfinput/pdf-input.cpp
@@ -793,7 +793,7 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) {
dlg->getImportSettings(prefs);
// Apply crop settings
- PDFRectangle *clipToBox = NULL;
+ _POPPLER_CONST PDFRectangle *clipToBox = NULL;
double crop_setting;
sp_repr_get_double(prefs, "cropTo", &crop_setting);
diff --git a/src/extension/internal/pdfinput/pdf-input.h b/src/extension/internal/pdfinput/pdf-input.h
--- a/src/extension/internal/pdfinput/pdf-input.h
+++ b/src/extension/internal/pdfinput/pdf-input.h
@@ -15,6 +15,7 @@
#endif
#ifdef HAVE_POPPLER
+#include "poppler-transition-api.h"
#include <gtkmm/dialog.h>
diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp
--- a/src/extension/internal/pdfinput/pdf-parser.cpp
+++ b/src/extension/internal/pdfinput/pdf-parser.cpp
@@ -36,6 +36,7 @@ extern "C" {
#include "pdf-parser.h"
#include "util/units.h"
+#include "glib/poppler-features.h"
#include "goo/gmem.h"
#include "goo/GooString.h"
#include "GlobalParams.h"
@@ -294,8 +295,8 @@ PdfParser::PdfParser(XRef *xrefA,
int /*pageNum*/,
int rotate,
Dict *resDict,
- PDFRectangle *box,
- PDFRectangle *cropBox) :
+ _POPPLER_CONST PDFRectangle *box,
+ _POPPLER_CONST PDFRectangle *cropBox) :
xref(xrefA),
builder(builderA),
subPage(gFalse),
@@ -317,7 +318,7 @@ PdfParser::PdfParser(XRef *xrefA,
builder->setDocumentSize(Inkscape::Util::Quantity::convert(state->getPageWidth(), "pt", "px"),
Inkscape::Util::Quantity::convert(state->getPageHeight(), "pt", "px"));
- double *ctm = state->getCTM();
+ const double *ctm = state->getCTM();
double scaledCTM[6];
for (int i = 0; i < 6; ++i) {
baseMatrix[i] = ctm[i];
@@ -352,7 +353,7 @@ PdfParser::PdfParser(XRef *xrefA,
PdfParser::PdfParser(XRef *xrefA,
Inkscape::Extension::Internal::SvgBuilder *builderA,
Dict *resDict,
- PDFRectangle *box) :
+ _POPPLER_CONST PDFRectangle *box) :
xref(xrefA),
builder(builderA),
subPage(gTrue),
@@ -571,7 +572,7 @@ const char *PdfParser::getPreviousOperator(unsigned int look_back) {
void PdfParser::execOp(Object *cmd, Object args[], int numArgs) {
PdfOperator *op;
- char *name;
+ const char *name;
Object *argPtr;
int i;
@@ -619,7 +620,7 @@ void PdfParser::execOp(Object *cmd, Object args[], int numArgs) {
(this->*op->func)(argPtr, numArgs);
}
-PdfOperator* PdfParser::findOp(char *name) {
+PdfOperator* PdfParser::findOp(const char *name) {
int a = -1;
int b = numOps;
int cmp = -1;
@@ -1751,7 +1752,7 @@ void PdfParser::doShadingPatternFillFallback(GfxShadingPattern *sPat,
GBool stroke, GBool eoFill) {
GfxShading *shading;
GfxPath *savedPath;
- double *ctm, *btm, *ptm;
+ const double *ctm, *btm, *ptm;
double m[6], ictm[6], m1[6];
double xMin, yMin, xMax, yMax;
double det;
@@ -1993,7 +1994,7 @@ void PdfParser::doFunctionShFill1(GfxFunctionShading *shading,
GfxColor color0M, color1M, colorM0, colorM1, colorMM;
GfxColor colors2[4];
double functionColorDelta = colorDeltas[pdfFunctionShading-1];
- double *matrix;
+ const double *matrix;
double xM, yM;
int nComps, i, j;
@@ -2173,7 +2174,7 @@ void PdfParser::doPatchMeshShFill(GfxPatchMeshShading *shading) {
}
}
-void PdfParser::fillPatch(GfxPatch *patch, int nComps, int depth) {
+void PdfParser::fillPatch(_POPPLER_CONST GfxPatch *patch, int nComps, int depth) {
GfxPatch patch00 = blankPatch();
GfxPatch patch01 = blankPatch();
GfxPatch patch10 = blankPatch();
@@ -2581,7 +2582,11 @@ void PdfParser::opShowSpaceText(Object args[], int /*numArgs*/)
}
}
+#if POPPLER_CHECK_VERSION(0,64,0)
void PdfParser::doShowText(const GooString *s) {
+#else
+void PdfParser::doShowText(GooString *s) {
+#endif
GfxFont *font;
int wMode;
double riseX, riseY;
@@ -2590,11 +2595,15 @@ void PdfParser::doShowText(const GooString *s) {
double x, y, dx, dy, tdx, tdy;
double originX, originY, tOriginX, tOriginY;
double oldCTM[6], newCTM[6];
- double *mat;
+ const double *mat;
Object charProc;
Dict *resDict;
Parser *oldParser;
+#if POPPLER_CHECK_VERSION(0,64,0)
+ const char *p;
+#else
char *p;
+#endif
int len, n, uLen;
font = state->getFont();
@@ -2630,7 +2639,7 @@ void PdfParser::doShowText(const GooString *s) {
double lineX = state->getLineX();
double lineY = state->getLineY();
oldParser = parser;
- p = g_strdup(s->getCString());
+ p = s->getCString();
len = s->getLength();
while (len > 0) {
n = font->getNextChar(p, len, &code,
@@ -2685,7 +2694,7 @@ void PdfParser::doShowText(const GooString *s) {
} else {
state->textTransformDelta(0, state->getRise(), &riseX, &riseY);
- p = g_strdup(s->getCString());
+ p = s->getCString();
len = s->getLength();
while (len > 0) {
n = font->getNextChar(p, len, &code,
@@ -2731,7 +2740,11 @@ void PdfParser::opXObject(Object args[], int /*numArgs*/)
{
Object obj1, obj2, obj3, refObj;
- char *name = g_strdup(args[0].getName());
+#if POPPLER_CHECK_VERSION(0,64,0)
+ const char *name = args[0].getName();
+#else
+ char *name = args[0].getName();
+#endif
#if defined(POPPLER_NEW_OBJECT_API)
if ((obj1 = res->lookupXObject(name)).isNull()) {
#else
@@ -3656,7 +3669,6 @@ void PdfParser::opBeginImage(Object /*args*/[], int /*numArgs*/)
Stream *PdfParser::buildImageStream() {
Object dict;
Object obj;
- char *key;
Stream *str;
// build dictionary
@@ -3674,26 +3686,17 @@ Stream *PdfParser::buildImageStream() {
obj.free();
#endif
} else {
- key = copyString(obj.getName());
-#if defined(POPPLER_NEW_OBJECT_API)
- obj = parser->getObj();
-#else
- obj.free();
- parser->getObj(&obj);
-#endif
- if (obj.isEOF() || obj.isError()) {
- gfree(key);
+ Object obj2;
+ _POPPLER_CALL(obj2, parser->getObj);
+ if (obj2.isEOF() || obj2.isError()) {
+ _POPPLER_FREE(obj);
break;
}
-#if defined(POPPLER_NEW_OBJECT_API)
- dict.dictAdd(key, std::move(obj));
- }
- obj = parser->getObj();
-#else
- dict.dictAdd(key, &obj);
+ _POPPLER_DICTADD(dict, obj.getName(), obj2);
+ _POPPLER_FREE(obj);
+ _POPPLER_FREE(obj2);
}
- parser->getObj(&obj);
-#endif
+ _POPPLER_CALL(obj, parser->getObj);
}
if (obj.isEOF()) {
error(errSyntaxError, getPos(), "End of file in inline image");
diff --git a/src/extension/internal/pdfinput/pdf-parser.h b/src/extension/internal/pdfinput/pdf-parser.h
--- a/src/extension/internal/pdfinput/pdf-parser.h
+++ b/src/extension/internal/pdfinput/pdf-parser.h
@@ -9,6 +9,7 @@
#define PDF_PARSER_H
#ifdef HAVE_POPPLER
+#include "poppler-transition-api.h"
#ifdef USE_GCC_PRAGMAS
#pragma interface
@@ -25,6 +26,7 @@ namespace Inkscape {
// TODO clean up and remove using:
using Inkscape::Extension::Internal::SvgBuilder;
+#include "glib/poppler-features.h"
#include "goo/gtypes.h"
#include "Object.h"
@@ -127,11 +129,14 @@ public:
// Constructor for regular output.
PdfParser(XRef *xrefA, SvgBuilder *builderA, int pageNum, int rotate,
- Dict *resDict, PDFRectangle *box, PDFRectangle *cropBox);
+ Dict *resDict,
+ _POPPLER_CONST PDFRectangle *box,
+ _POPPLER_CONST PDFRectangle *cropBox);
// Constructor for a sub-page object.
PdfParser(XRef *xrefA, Inkscape::Extension::Internal::SvgBuilder *builderA,
- Dict *resDict, PDFRectangle *box);
+ Dict *resDict,
+ _POPPLER_CONST PDFRectangle *box);
virtual ~PdfParser();
@@ -185,7 +190,7 @@ private:
void go(GBool topLevel);
void execOp(Object *cmd, Object args[], int numArgs);
- PdfOperator *findOp(char *name);
+ PdfOperator *findOp(const char *name);
GBool checkArg(Object *arg, TchkType type);
int getPos();
@@ -256,7 +261,7 @@ private:
double x2, double y2, GfxColor *color2,
int nComps, int depth);
void doPatchMeshShFill(GfxPatchMeshShading *shading);
- void fillPatch(GfxPatch *patch, int nComps, int depth);
+ void fillPatch(_POPPLER_CONST GfxPatch *patch, int nComps, int depth);
void doEndPath();
// path clipping operators
@@ -287,7 +292,12 @@ private:
void opMoveShowText(Object args[], int numArgs);
void opMoveSetShowText(Object args[], int numArgs);
void opShowSpaceText(Object args[], int numArgs);
+#if POPPLER_CHECK_VERSION(0,64,0)
void doShowText(const GooString *s);
+#else
+ void doShowText(GooString *s);
+#endif
+
// XObject operators
void opXObject(Object args[], int numArgs);
diff --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h
new file mode 100644
--- /dev/null
+++ b/src/extension/internal/pdfinput/poppler-transition-api.h
@@ -0,0 +1,39 @@
+#ifndef SEEN_POPPLER_TRANSITION_API_H
+#define SEEN_POPPLER_TRANSITION_API_H
+
+#include <glib/poppler-features.h>
+
+#if POPPLER_CHECK_VERSION(0,70,0)
+#define _POPPLER_CONST const
+#else
+#define _POPPLER_CONST
+#endif
+
+#if POPPLER_CHECK_VERSION(0,69,0)
+#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(key, std::move(obj))
+#elif POPPLER_CHECK_VERSION(0,58,0)
+#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(copyString(key), std::move(obj))
+#else
+#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(copyString(key), &obj)
+#endif
+
+#if POPPLER_CHECK_VERSION(0,58,0)
+#define POPPLER_NEW_OBJECT_API
+#define _POPPLER_FREE(obj)
+#define _POPPLER_CALL(ret, func) (ret = func())
+#define _POPPLER_CALL_ARGS(ret, func, ...) (ret = func(__VA_ARGS__))
+#else
+#define _POPPLER_FREE(obj) (obj).free()
+#define _POPPLER_CALL(ret, func) (*func(&ret))
+#define _POPPLER_CALL_ARGS(ret, func, ...) (*func(__VA_ARGS__, &ret))
+#endif
+
+#if POPPLER_CHECK_VERSION(0, 29, 0)
+#define POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API
+#endif
+
+#if POPPLER_CHECK_VERSION(0, 25, 0)
+#define POPPLER_EVEN_NEWER_COLOR_SPACE_API
+#endif
+
+#endif
diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp
--- a/src/extension/internal/pdfinput/svg-builder.cpp
+++ b/src/extension/internal/pdfinput/svg-builder.cpp
@@ -625,7 +625,7 @@ gchar *SvgBuilder::_createPattern(GfxPattern *pattern, GfxState *state, bool is_
if ( pattern != NULL ) {
if ( pattern->getType() == 2 ) { // Shading pattern
GfxShadingPattern *shading_pattern = static_cast<GfxShadingPattern *>(pattern);
- double *ptm;
+ const double *ptm;
double m[6] = {1, 0, 0, 1, 0, 0};
double det;
@@ -672,7 +672,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
Inkscape::XML::Node *pattern_node = _xml_doc->createElement("svg:pattern");
// Set pattern transform matrix
- double *p2u = tiling_pattern->getMatrix();
+ const double *p2u = tiling_pattern->getMatrix();
double m[6] = {1, 0, 0, 1, 0, 0};
double det;
det = _ttm[0] * _ttm[3] - _ttm[1] * _ttm[2]; // see LP Bug 1168908
@@ -698,7 +698,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
pattern_node->setAttribute("patternUnits", "userSpaceOnUse");
// Set pattern tiling
// FIXME: don't ignore XStep and YStep
- double *bbox = tiling_pattern->getBBox();
+ const double *bbox = tiling_pattern->getBBox();
sp_repr_set_svg_double(pattern_node, "x", 0.0);
sp_repr_set_svg_double(pattern_node, "y", 0.0);
sp_repr_set_svg_double(pattern_node, "width", bbox[2] - bbox[0]);
@@ -751,7 +751,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
*/
gchar *SvgBuilder::_createGradient(GfxShading *shading, double *matrix, bool for_shading) {
Inkscape::XML::Node *gradient;
- Function *func;
+ _POPPLER_CONST Function *func;
int num_funcs;
bool extend0, extend1;
@@ -865,7 +865,7 @@ static bool svgGetShadingColorRGB(GfxShading *shading, double offset, GfxRGB *re
#define INT_EPSILON 8
bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *shading,
- Function *func) {
+ _POPPLER_CONST Function *func) {
int type = func->getType();
if ( type == 0 || type == 2 ) { // Sampled or exponential function
GfxRGB stop1, stop2;
@@ -877,9 +877,9 @@ bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *sh
_addStopToGradient(gradient, 1.0, &stop2, 1.0);
}
} else if ( type == 3 ) { // Stitching
- StitchingFunction *stitchingFunc = static_cast<StitchingFunction*>(func);
- double *bounds = stitchingFunc->getBounds();
- double *encode = stitchingFunc->getEncode();
+ auto stitchingFunc = static_cast<_POPPLER_CONST StitchingFunction*>(func);
+ const double *bounds = stitchingFunc->getBounds();
+ const double *encode = stitchingFunc->getEncode();
int num_funcs = stitchingFunc->getNumFuncs();
// Add stops from all the stitched functions
@@ -890,7 +890,7 @@ bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *sh
svgGetShadingColorRGB(shading, bounds[i + 1], &color);
// Add stops
if (stitchingFunc->getFunc(i)->getType() == 2) { // process exponential fxn
- double expE = (static_cast<ExponentialFunction*>(stitchingFunc->getFunc(i)))->getE();
+ double expE = (static_cast<_POPPLER_CONST ExponentialFunction*>(stitchingFunc->getFunc(i)))->getE();
if (expE > 1.0) {
expE = (bounds[i + 1] - bounds[i])/expE; // approximate exponential as a single straight line at x=1
if (encode[2*i] == 0) { // normal sequence
@@ -1020,9 +1020,9 @@ void SvgBuilder::updateFont(GfxState *state) {
GfxFont *font = state->getFont();
// Store original name
if (font->getName()) {
- _font_specification = g_strdup(font->getName()->getCString());
+ _font_specification = font->getName()->getCString();
} else {
- _font_specification = (char*) "Arial";
+ _font_specification = "Arial";
}
// Prune the font name to get the correct font family name
@@ -1030,7 +1030,7 @@ void SvgBuilder::updateFont(GfxState *state) {
char *font_family = NULL;
char *font_style = NULL;
char *font_style_lowercase = NULL;
- char *plus_sign = strstr(_font_specification, "+");
+ const char *plus_sign = strstr(_font_specification, "+");
if (plus_sign) {
font_family = g_strdup(plus_sign + 1);
_font_specification = plus_sign + 1;
@@ -1148,7 +1148,7 @@ void SvgBuilder::updateFont(GfxState *state) {
Inkscape::CSSOStringStream os_font_size;
double css_font_size = _font_scaling * state->getFontSize();
if ( font->getType() == fontType3 ) {
- double *font_matrix = font->getFontMatrix();
+ const double *font_matrix = font->getFontMatrix();
if ( font_matrix[0] != 0.0 ) {
css_font_size *= font_matrix[3] / font_matrix[0];
}
@@ -1193,7 +1193,7 @@ void SvgBuilder::updateTextPosition(double tx, double ty) {
void SvgBuilder::updateTextMatrix(GfxState *state) {
_flushText();
// Update text matrix
- double *text_matrix = state->getTextMat();
+ const double *text_matrix = state->getTextMat();
double w_scale = sqrt( text_matrix[0] * text_matrix[0] + text_matrix[2] * text_matrix[2] );
double h_scale = sqrt( text_matrix[1] * text_matrix[1] + text_matrix[3] * text_matrix[3] );
double max_scale;
diff --git a/src/extension/internal/pdfinput/svg-builder.h b/src/extension/internal/pdfinput/svg-builder.h
--- a/src/extension/internal/pdfinput/svg-builder.h
+++ b/src/extension/internal/pdfinput/svg-builder.h
@@ -15,6 +15,7 @@
#endif
#ifdef HAVE_POPPLER
+#include "poppler-transition-api.h"
class SPDocument;
namespace Inkscape {
@@ -80,7 +81,7 @@ struct SvgGlyph {
bool style_changed; // Set to true if style has to be reset
SPCSSAttr *style;
int render_mode; // Text render mode
- char *font_specification; // Pointer to current font specification
+ const char *font_specification; // Pointer to current font specification
};
/**
@@ -174,7 +175,7 @@ private:
void _addStopToGradient(Inkscape::XML::Node *gradient, double offset,
GfxRGB *color, double opacity);
bool _addGradientStops(Inkscape::XML::Node *gradient, GfxShading *shading,
- Function *func);
+ _POPPLER_CONST Function *func);
gchar *_createTilingPattern(GfxTilingPattern *tiling_pattern, GfxState *state,
bool is_stroke=false);
// Image/mask creation
@@ -202,7 +203,7 @@ private:
SPCSSAttr *_font_style; // Current font style
GfxFont *_current_font;
- char *_font_specification;
+ const char *_font_specification;
double _font_scaling;
bool _need_font_update;
Geom::Affine _text_matrix;

View File

@ -1,174 +0,0 @@
Fix floating point issues on 32-bit platforms:
https://gitlab.gnome.org/GNOME/json-glib/issues/27
This is an amalgamation of the following upstream commits:
https://gitlab.gnome.org/GNOME/json-glib/commit/70e2648e02232c1a439a7418388f18fee9afb3fe
https://gitlab.gnome.org/GNOME/json-glib/commit/675e27505776a1d77fa1ffd1974284890caec1f4
diff --git a/json-glib/tests/json-test-utils.h b/json-glib/tests/json-test-utils.h
new file mode 100644
index 0000000..83a02c6
--- /dev/null
+++ b/json-glib/tests/json-test-utils.h
@@ -0,0 +1,21 @@
+#include <string.h>
+#include <math.h>
+#include <float.h>
+#include <glib.h>
+#include <json-glib/json-glib.h>
+
+#define json_fuzzy_equals(n1,n2,epsilon) \
+ (((n1) > (n2) ? ((n1) - (n2)) : ((n2) - (n1))) < (epsilon))
+
+#define json_assert_fuzzy_equals(n1,n2,epsilon) \
+ G_STMT_START { \
+ double __n1 = (n1), __n2 = (n2), __epsilon = (epsilon); \
+ if (json_fuzzy_equals (__n1, __n2, __epsilon)) ; else { \
+ g_assertion_message_cmpnum (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
+ #n1 " == " #n2 " (+/- " #epsilon ")", \
+ __n1, "==", __n2, 'f'); \
+ } \
+ } G_STMT_END
+
+#define json_assert_almost_equals(n1,n2) \
+ json_assert_fuzzy_equals (n1, n2, DBL_EPSILON)
diff --git a/json-glib/tests/array.c b/json-glib/tests/array.c
index 98afeab..426cd72 100644
--- a/json-glib/tests/array.c
+++ b/json-glib/tests/array.c
@@ -1,9 +1,4 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <glib.h>
-#include <json-glib/json-glib.h>
+#include "json-test-utils.h"
static void
test_empty_array (void)
@@ -37,7 +32,7 @@ test_add_element (void)
json_array_add_double_element (array, 3.14);
g_assert_cmpint (json_array_get_length (array), ==, 3);
- g_assert_cmpfloat (json_array_get_double_element (array, 2), ==, 3.14);
+ json_assert_fuzzy_equals (json_array_get_double_element (array, 2), 3.14, 0.001);
json_array_add_boolean_element (array, TRUE);
g_assert_cmpint (json_array_get_length (array), ==, 4);
diff --git a/json-glib/tests/node.c b/json-glib/tests/node.c
index 23bda63..80beb78 100644
--- a/json-glib/tests/node.c
+++ b/json-glib/tests/node.c
@@ -1,6 +1,4 @@
-#include <glib.h>
-#include <json-glib/json-glib.h>
-#include <string.h>
+#include "json-test-utils.h"
static void
test_init_int (void)
@@ -19,7 +17,7 @@ test_init_double (void)
JsonNode *node = json_node_new (JSON_NODE_VALUE);
json_node_set_double (node, 3.14159);
- g_assert_cmpfloat (json_node_get_double (node), ==, 3.14159);
+ json_assert_fuzzy_equals (json_node_get_double (node), 3.14159, 0.00001);
json_node_free (node);
}
@@ -119,13 +117,13 @@ test_get_int (void)
json_node_set_int (node, 0);
g_assert_cmpint (json_node_get_int (node), ==, 0);
- g_assert_cmpfloat (json_node_get_double (node), ==, 0.0);
+ json_assert_almost_equals (json_node_get_double (node), 0.0);
g_assert (!json_node_get_boolean (node));
g_assert (!json_node_is_null (node));
json_node_set_int (node, 42);
g_assert_cmpint (json_node_get_int (node), ==, 42);
- g_assert_cmpfloat (json_node_get_double (node), ==, 42.0);
+ json_assert_almost_equals (json_node_get_double (node), 42.0);
g_assert (json_node_get_boolean (node));
g_assert (!json_node_is_null (node));
@@ -138,7 +136,7 @@ test_get_double (void)
JsonNode *node = json_node_new (JSON_NODE_VALUE);
json_node_set_double (node, 3.14);
- g_assert_cmpfloat (json_node_get_double (node), ==, 3.14);
+ json_assert_fuzzy_equals (json_node_get_double (node), 3.14, 0.001);
g_assert_cmpint (json_node_get_int (node), ==, 3);
g_assert (json_node_get_boolean (node));
@@ -232,9 +230,9 @@ test_gvalue_autopromotion (void)
g_print ("Expecting a gdouble, got a %s\n", g_type_name (G_VALUE_TYPE (&check)));
g_assert_cmpint (G_VALUE_TYPE (&check), ==, G_TYPE_DOUBLE);
- g_assert_cmpfloat ((float) g_value_get_double (&check), ==, 3.14159f);
+ json_assert_fuzzy_equals (g_value_get_double (&check), 3.14159, 0.00001);
g_assert_cmpint (G_VALUE_TYPE (&value), !=, G_VALUE_TYPE (&check));
- g_assert_cmpfloat ((gdouble) g_value_get_float (&value), ==, g_value_get_double (&check));
+ json_assert_almost_equals (g_value_get_float (&value), g_value_get_double (&check));
g_value_unset (&value);
g_value_unset (&check);
diff --git a/json-glib/tests/parser.c b/json-glib/tests/parser.c
index f71584a..8c52a1d 100644
--- a/json-glib/tests/parser.c
+++ b/json-glib/tests/parser.c
@@ -1,11 +1,5 @@
-#include "config.h"
-
+#include "json-test-utils.h"
#include <stdlib.h>
-#include <stdio.h>
-
-#include <glib.h>
-
-#include <json-glib/json-glib.h>
static const gchar *test_empty_string = "";
static const gchar *test_empty_array_string = "[ ]";
@@ -38,13 +32,13 @@ verify_string_value (JsonNode *node)
static void
verify_double_value (JsonNode *node)
{
- g_assert_cmpfloat (10.2e3, ==, json_node_get_double (node));
+ json_assert_fuzzy_equals (10.2e3, json_node_get_double (node), 0.1);
}
static void
verify_negative_double_value (JsonNode *node)
{
- g_assert_cmpfloat (-3.14, ==, json_node_get_double (node));
+ json_assert_fuzzy_equals (-3.14, json_node_get_double (node), 0.01);
}
static const struct {
diff --git a/json-glib/tests/reader.c b/json-glib/tests/reader.c
index 43a6aac..9bab312 100644
--- a/json-glib/tests/reader.c
+++ b/json-glib/tests/reader.c
@@ -1,9 +1,4 @@
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <glib.h>
-
-#include <json-glib/json-glib.h>
+#include "json-test-utils.h"
static const gchar *test_base_array_data =
"[ 0, true, null, \"foo\", 3.14, [ false ], { \"bar\" : 42 } ]";
@@ -78,7 +73,7 @@ test_base_object (void)
g_assert (json_reader_get_error (reader) == NULL);
json_reader_read_member (reader, "double");
- g_assert_cmpfloat (json_reader_get_double_value (reader), ==, 42.47);
+ json_assert_fuzzy_equals (json_reader_get_double_value (reader), 42.47, 0.01);
json_reader_end_element (reader);
g_object_unref (reader);

View File

@ -0,0 +1,17 @@
Fix compatibility with newer Boost.
Extracted from this upstream commit:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=23a8d5ffbbe58761b89f590f0735abccd69a3681
diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
--- a/sfx2/source/appl/shutdownicon.cxx
+++ b/sfx2/source/appl/shutdownicon.cxx
@@ -144,7 +144,7 @@ bool LoadModule()
#endif // ENABLE_QUICKSTART_APPLET
}
assert(!boost::logic::indeterminate(loaded));
- return loaded;
+ return bool(loaded);
}
}

View File

@ -1,45 +0,0 @@
Fix CVE-2017-18013:
http://bugzilla.maptools.org/show_bug.cgi?id=2770
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-18013
Patch copied from upstream source repository:
https://gitlab.com/libtiff/libtiff/commit/c6f41df7b581402dfba3c19a1e3df4454c551a01
From c6f41df7b581402dfba3c19a1e3df4454c551a01 Mon Sep 17 00:00:00 2001
From: Even Rouault <even.rouault@spatialys.com>
Date: Sun, 31 Dec 2017 15:09:41 +0100
Subject: [PATCH] libtiff/tif_print.c: TIFFPrintDirectory(): fix null pointer
dereference on corrupted file. Fixes
http://bugzilla.maptools.org/show_bug.cgi?id=2770
---
libtiff/tif_print.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libtiff/tif_print.c b/libtiff/tif_print.c
index 9959d353..8deceb2b 100644
--- a/libtiff/tif_print.c
+++ b/libtiff/tif_print.c
@@ -665,13 +665,13 @@ TIFFPrintDirectory(TIFF* tif, FILE* fd, long flags)
#if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__))
fprintf(fd, " %3lu: [%8I64u, %8I64u]\n",
(unsigned long) s,
- (unsigned __int64) td->td_stripoffset[s],
- (unsigned __int64) td->td_stripbytecount[s]);
+ td->td_stripoffset ? (unsigned __int64) td->td_stripoffset[s] : 0,
+ td->td_stripbytecount ? (unsigned __int64) td->td_stripbytecount[s] : 0);
#else
fprintf(fd, " %3lu: [%8llu, %8llu]\n",
(unsigned long) s,
- (unsigned long long) td->td_stripoffset[s],
- (unsigned long long) td->td_stripbytecount[s]);
+ td->td_stripoffset ? (unsigned long long) td->td_stripoffset[s] : 0,
+ td->td_stripbytecount ? (unsigned long long) td->td_stripbytecount[s] : 0);
#endif
}
}
--
2.16.1

View File

@ -1,162 +0,0 @@
Fix CVE-2017-9935
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9935
http://bugzilla.maptools.org/show_bug.cgi?id=2704
Patch copied from upstream source repository:
https://gitlab.com/libtiff/libtiff/commit/3dd8f6a357981a4090f126ab9025056c938b6940
From 3dd8f6a357981a4090f126ab9025056c938b6940 Mon Sep 17 00:00:00 2001
From: Brian May <brian@linuxpenguins.xyz>
Date: Thu, 7 Dec 2017 07:46:47 +1100
Subject: [PATCH] tiff2pdf: Fix CVE-2017-9935
Fix for http://bugzilla.maptools.org/show_bug.cgi?id=2704
This vulnerability - at least for the supplied test case - is because we
assume that a tiff will only have one transfer function that is the same
for all pages. This is not required by the TIFF standards.
We than read the transfer function for every page. Depending on the
transfer function, we allocate either 2 or 4 bytes to the XREF buffer.
We allocate this memory after we read in the transfer function for the
page.
For the first exploit - POC1, this file has 3 pages. For the first page
we allocate 2 extra extra XREF entries. Then for the next page 2 more
entries. Then for the last page the transfer function changes and we
allocate 4 more entries.
When we read the file into memory, we assume we have 4 bytes extra for
each and every page (as per the last transfer function we read). Which
is not correct, we only have 2 bytes extra for the first 2 pages. As a
result, we end up writing past the end of the buffer.
There are also some related issues that this also fixes. For example,
TIFFGetField can return uninitalized pointer values, and the logic to
detect a N=3 vs N=1 transfer function seemed rather strange.
It is also strange that we declare the transfer functions to be of type
float, when the standard says they are unsigned 16 bit values. This is
fixed in another patch.
This patch will check to ensure that the N value for every transfer
function is the same for every page. If this changes, we abort with an
error. In theory, we should perhaps check that the transfer function
itself is identical for every page, however we don't do that due to the
confusion of the type of the data in the transfer function.
---
libtiff/tif_dir.c | 3 +++
tools/tiff2pdf.c | 65 +++++++++++++++++++++++++++++++++++++------------------
2 files changed, 47 insertions(+), 21 deletions(-)
diff --git a/libtiff/tif_dir.c b/libtiff/tif_dir.c
index 2ccaf448..cbf2b693 100644
--- a/libtiff/tif_dir.c
+++ b/libtiff/tif_dir.c
@@ -1065,6 +1065,9 @@ _TIFFVGetField(TIFF* tif, uint32 tag, va_list ap)
if (td->td_samplesperpixel - td->td_extrasamples > 1) {
*va_arg(ap, uint16**) = td->td_transferfunction[1];
*va_arg(ap, uint16**) = td->td_transferfunction[2];
+ } else {
+ *va_arg(ap, uint16**) = NULL;
+ *va_arg(ap, uint16**) = NULL;
}
break;
case TIFFTAG_REFERENCEBLACKWHITE:
diff --git a/tools/tiff2pdf.c b/tools/tiff2pdf.c
index d1a9b095..c3ec0746 100644
--- a/tools/tiff2pdf.c
+++ b/tools/tiff2pdf.c
@@ -1047,6 +1047,8 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){
uint16 pagen=0;
uint16 paged=0;
uint16 xuint16=0;
+ uint16 tiff_transferfunctioncount=0;
+ float* tiff_transferfunction[3];
directorycount=TIFFNumberOfDirectories(input);
t2p->tiff_pages = (T2P_PAGE*) _TIFFmalloc(TIFFSafeMultiply(tmsize_t,directorycount,sizeof(T2P_PAGE)));
@@ -1147,26 +1149,48 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){
}
#endif
if (TIFFGetField(input, TIFFTAG_TRANSFERFUNCTION,
- &(t2p->tiff_transferfunction[0]),
- &(t2p->tiff_transferfunction[1]),
- &(t2p->tiff_transferfunction[2]))) {
- if((t2p->tiff_transferfunction[1] != (float*) NULL) &&
- (t2p->tiff_transferfunction[2] != (float*) NULL) &&
- (t2p->tiff_transferfunction[1] !=
- t2p->tiff_transferfunction[0])) {
- t2p->tiff_transferfunctioncount = 3;
- t2p->tiff_pages[i].page_extra += 4;
- t2p->pdf_xrefcount += 4;
- } else {
- t2p->tiff_transferfunctioncount = 1;
- t2p->tiff_pages[i].page_extra += 2;
- t2p->pdf_xrefcount += 2;
- }
- if(t2p->pdf_minorversion < 2)
- t2p->pdf_minorversion = 2;
+ &(tiff_transferfunction[0]),
+ &(tiff_transferfunction[1]),
+ &(tiff_transferfunction[2]))) {
+
+ if((tiff_transferfunction[1] != (float*) NULL) &&
+ (tiff_transferfunction[2] != (float*) NULL)
+ ) {
+ tiff_transferfunctioncount=3;
+ } else {
+ tiff_transferfunctioncount=1;
+ }
} else {
- t2p->tiff_transferfunctioncount=0;
+ tiff_transferfunctioncount=0;
}
+
+ if (i > 0){
+ if (tiff_transferfunctioncount != t2p->tiff_transferfunctioncount){
+ TIFFError(
+ TIFF2PDF_MODULE,
+ "Different transfer function on page %d",
+ i);
+ t2p->t2p_error = T2P_ERR_ERROR;
+ return;
+ }
+ }
+
+ t2p->tiff_transferfunctioncount = tiff_transferfunctioncount;
+ t2p->tiff_transferfunction[0] = tiff_transferfunction[0];
+ t2p->tiff_transferfunction[1] = tiff_transferfunction[1];
+ t2p->tiff_transferfunction[2] = tiff_transferfunction[2];
+ if(tiff_transferfunctioncount == 3){
+ t2p->tiff_pages[i].page_extra += 4;
+ t2p->pdf_xrefcount += 4;
+ if(t2p->pdf_minorversion < 2)
+ t2p->pdf_minorversion = 2;
+ } else if (tiff_transferfunctioncount == 1){
+ t2p->tiff_pages[i].page_extra += 2;
+ t2p->pdf_xrefcount += 2;
+ if(t2p->pdf_minorversion < 2)
+ t2p->pdf_minorversion = 2;
+ }
+
if( TIFFGetField(
input,
TIFFTAG_ICCPROFILE,
@@ -1828,9 +1852,8 @@ void t2p_read_tiff_data(T2P* t2p, TIFF* input){
&(t2p->tiff_transferfunction[1]),
&(t2p->tiff_transferfunction[2]))) {
if((t2p->tiff_transferfunction[1] != (float*) NULL) &&
- (t2p->tiff_transferfunction[2] != (float*) NULL) &&
- (t2p->tiff_transferfunction[1] !=
- t2p->tiff_transferfunction[0])) {
+ (t2p->tiff_transferfunction[2] != (float*) NULL)
+ ) {
t2p->tiff_transferfunctioncount=3;
} else {
t2p->tiff_transferfunctioncount=1;
--
2.16.1

View File

@ -1,40 +0,0 @@
Fix CVE-2018-10963:
http://bugzilla.maptools.org/show_bug.cgi?id=2795
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-10963
Patch copied from upstream source repository:
https://gitlab.com/libtiff/libtiff/commit/de144fd228e4be8aa484c3caf3d814b6fa88c6d9
From de144fd228e4be8aa484c3caf3d814b6fa88c6d9 Mon Sep 17 00:00:00 2001
From: Even Rouault <even.rouault@spatialys.com>
Date: Sat, 12 May 2018 14:24:15 +0200
Subject: [PATCH] TIFFWriteDirectorySec: avoid assertion. Fixes
http://bugzilla.maptools.org/show_bug.cgi?id=2795. CVE-2018-10963
---
libtiff/tif_dirwrite.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/libtiff/tif_dirwrite.c b/libtiff/tif_dirwrite.c
index 2430de6d..c15a28db 100644
--- a/libtiff/tif_dirwrite.c
+++ b/libtiff/tif_dirwrite.c
@@ -695,8 +695,11 @@ TIFFWriteDirectorySec(TIFF* tif, int isimage, int imagedone, uint64* pdiroff)
}
break;
default:
- assert(0); /* we should never get here */
- break;
+ TIFFErrorExt(tif->tif_clientdata,module,
+ "Cannot write tag %d (%s)",
+ TIFFFieldTag(o),
+ o->field_name ? o->field_name : "unknown");
+ goto bad;
}
}
}
--
2.17.0

View File

@ -1,61 +0,0 @@
Fix CVE-2018-8095:
http://bugzilla.maptools.org/show_bug.cgi?id=2780
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-8905
Patch copied from upstream source repository:
https://gitlab.com/libtiff/libtiff/commit/58a898cb4459055bb488ca815c23b880c242a27d
From 58a898cb4459055bb488ca815c23b880c242a27d Mon Sep 17 00:00:00 2001
From: Even Rouault <even.rouault@spatialys.com>
Date: Sat, 12 May 2018 15:32:31 +0200
Subject: [PATCH] LZWDecodeCompat(): fix potential index-out-of-bounds write.
Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2780 / CVE-2018-8905
The fix consists in using the similar code LZWDecode() to validate we
don't write outside of the output buffer.
---
libtiff/tif_lzw.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/libtiff/tif_lzw.c b/libtiff/tif_lzw.c
index 4ccb443c..94d85e38 100644
--- a/libtiff/tif_lzw.c
+++ b/libtiff/tif_lzw.c
@@ -602,6 +602,7 @@ LZWDecodeCompat(TIFF* tif, uint8* op0, tmsize_t occ0, uint16 s)
char *tp;
unsigned char *bp;
int code, nbits;
+ int len;
long nextbits, nextdata, nbitsmask;
code_t *codep, *free_entp, *maxcodep, *oldcodep;
@@ -753,13 +754,18 @@ LZWDecodeCompat(TIFF* tif, uint8* op0, tmsize_t occ0, uint16 s)
} while (--occ);
break;
}
- assert(occ >= codep->length);
- op += codep->length;
- occ -= codep->length;
- tp = op;
+ len = codep->length;
+ tp = op + len;
do {
- *--tp = codep->value;
- } while( (codep = codep->next) != NULL );
+ int t;
+ --tp;
+ t = codep->value;
+ codep = codep->next;
+ *tp = (char)t;
+ } while (codep && tp > op);
+ assert(occ >= len);
+ op += len;
+ occ -= len;
} else {
*op++ = (char)code;
occ--;
--
2.17.0

View File

@ -0,0 +1,165 @@
From bb0c1a9b4940f3f6b52c0df535289ec8a3bc9e03 Mon Sep 17 00:00:00 2001
From: Dmitri Ovodok <dmitrio95@yandex.ru>
Date: Mon, 4 Feb 2019 21:35:25 +0300
Subject: [PATCH] Fix build without USE_WEBENGINE and SCRIPT_INTERFACE
Old-style login dialog is used if USE_WEBENGINE is turned off
---
mscore/logindialog.h | 2 ++
mscore/musescore.cpp | 4 +++-
mscore/network/loginmanager.cpp | 13 +++++++++++--
mscore/network/loginmanager.h | 4 ++++
mscore/network/loginmanager_p.h | 4 ++++
5 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/mscore/logindialog.h b/mscore/logindialog.h
index 4e86ae7985..f44511d8c0 100644
--- a/mscore/logindialog.h
+++ b/mscore/logindialog.h
@@ -21,6 +21,8 @@ class LoginManager;
//---------------------------------------------------------
// LoginDialog
+// Old-style login dialog in case QtWebEngine is
+// unavailable.
//---------------------------------------------------------
class LoginDialog : public QDialog, public Ui::LoginDialog
diff --git a/mscore/musescore.cpp b/mscore/musescore.cpp
index 80c712aea9..5bb8354992 100644
--- a/mscore/musescore.cpp
+++ b/mscore/musescore.cpp
@@ -7572,12 +7572,14 @@ bool MuseScore::exportPartsPdfsToJSON(const QString& inFilePath, const QString&
}
//---------------------------------------------------------
-// getQmlEngine
+// getPluginEngine
//---------------------------------------------------------
+#ifdef SCRIPT_INTERFACE
QmlPluginEngine* MuseScore::getPluginEngine()
{
if (!_qmlEngine)
_qmlEngine = new QmlPluginEngine(this);
return _qmlEngine;
}
+#endif
diff --git a/mscore/network/loginmanager.cpp b/mscore/network/loginmanager.cpp
index a53d7fe811..664786ccc8 100644
--- a/mscore/network/loginmanager.cpp
+++ b/mscore/network/loginmanager.cpp
@@ -18,7 +18,9 @@
#include "kQOAuth/kqoauthrequest.h"
#include "kQOAuth/kqoauthrequest_xauth.h"
+#ifdef USE_WEBENGINE
#include <QWebEngineCookieStore>
+#endif
namespace Ms {
@@ -286,8 +288,11 @@ void LoginManager::onTryLoginError(const QString& error)
disconnect(this, SIGNAL(getUserError(QString)), this, SLOT(onTryLoginError(QString)));
connect(this, SIGNAL(loginSuccess()), this, SLOT(tryLogin()));
logout();
+#ifdef USE_WEBENGINE
loginInteractive();
-// mscore->showLoginDialog(); // TODO: switch depending on USE_WEBENGINE
+#else
+ mscore->showLoginDialog();
+#endif
}
/*------- END - TRY LOGIN ROUTINES ----------------------------*/
@@ -295,6 +300,7 @@ void LoginManager::onTryLoginError(const QString& error)
// loginInteractive
//---------------------------------------------------------
+#ifdef USE_WEBENGINE
void LoginManager::loginInteractive()
{
QWebEngineView* webView = new QWebEngineView;
@@ -326,6 +332,7 @@ void LoginManager::loginInteractive()
webView->load(ApiInfo::loginUrl);
webView->show();
}
+#endif
//---------------------------------------------------------
// login
@@ -346,7 +353,7 @@ void LoginManager::login(QString login, QString password)
connect(reply, &QNetworkReply::finished, this, [this, reply] {
onReplyFinished(reply, RequestType::LOGIN);
});
- }
+ }
//---------------------------------------------------------
// onLoginSuccessReply
@@ -874,6 +881,7 @@ ApiRequest ApiRequestBuilder::build() const
// musescore.com
//---------------------------------------------------------
+#ifdef USE_WEBENGINE
void ApiWebEngineRequestInterceptor::interceptRequest(QWebEngineUrlRequestInfo& request)
{
const ApiInfo& apiInfo = ApiInfo::instance();
@@ -881,4 +889,5 @@ void ApiWebEngineRequestInterceptor::interceptRequest(QWebEngineUrlRequestInfo&
request.setHttpHeader(apiInfo.clientIdHeader, apiInfo.clientId);
request.setHttpHeader(apiInfo.apiKeyHeader, apiInfo.apiKey);
}
+#endif
}
diff --git a/mscore/network/loginmanager.h b/mscore/network/loginmanager.h
index 584eeea30d..327d9fc966 100644
--- a/mscore/network/loginmanager.h
+++ b/mscore/network/loginmanager.h
@@ -13,6 +13,8 @@
#ifndef __LOGINMANAGER_H__
#define __LOGINMANAGER_H__
+#include "config.h"
+
namespace Ms {
//---------------------------------------------------------
@@ -83,7 +85,9 @@ class LoginManager : public QObject
public:
LoginManager(QAction* uploadAudioMenuAction, QObject* parent = 0);
void login(QString login, QString password);
+#ifdef USE_WEBENGINE
void loginInteractive();
+#endif
void upload(const QString& path, int nid, const QString& title, const QString& description, const QString& priv, const QString& license, const QString& tags, const QString& changes);
bool hasAccessToken();
void getUser();
diff --git a/mscore/network/loginmanager_p.h b/mscore/network/loginmanager_p.h
index 88228a3958..2848dde35a 100644
--- a/mscore/network/loginmanager_p.h
+++ b/mscore/network/loginmanager_p.h
@@ -20,6 +20,8 @@
#ifndef __LOGINMANAGER_P_H__
#define __LOGINMANAGER_P_H__
+#include "config.h"
+
namespace Ms {
//---------------------------------------------------------
@@ -102,6 +104,7 @@ class ApiRequestBuilder
// ApiWebEngineRequestInterceptor
//---------------------------------------------------------
+#ifdef USE_WEBENGINE
class ApiWebEngineRequestInterceptor : public QWebEngineUrlRequestInterceptor
{
Q_OBJECT
@@ -109,6 +112,7 @@ class ApiWebEngineRequestInterceptor : public QWebEngineUrlRequestInterceptor
ApiWebEngineRequestInterceptor(QObject* parent) : QWebEngineUrlRequestInterceptor(parent) {}
void interceptRequest(QWebEngineUrlRequestInfo& info) override;
};
+#endif
//---------------------------------------------------------
// HttpStatus

View File

@ -0,0 +1,379 @@
https://github.com/Pingus/pingus/commit/fef8cf6512fa4aa09e87643c22ef66de9ec7bb41.patch
From fef8cf6512fa4aa09e87643c22ef66de9ec7bb41 Mon Sep 17 00:00:00 2001
From: Ingo Ruhnke <grumbel@gmail.com>
Date: Sat, 26 Jul 2014 20:49:11 +0200
Subject: [PATCH] Switched to boost::signals2
---
SConscript | 5 ++---
src/editor/button.hpp | 4 ++--
src/editor/checkbox.hpp | 4 ++--
src/editor/combobox.hpp | 4 ++--
src/editor/file_list.hpp | 4 ++--
src/editor/inputbox.hpp | 6 +++---
src/editor/message_box.hpp | 2 +-
src/editor/object_selector.cpp | 4 ++--
src/editor/viewport.hpp | 4 ++--
src/pingus/components/check_box.hpp | 4 ++--
src/pingus/components/choice_box.hpp | 4 ++--
src/pingus/components/slider_box.hpp | 4 ++--
src/pingus/config_manager.hpp | 28 ++++++++++++++--------------
src/pingus/screens/option_menu.hpp | 4 ++--
14 files changed, 40 insertions(+), 41 deletions(-)
diff --git a/SConscript b/SConscript
index 758567f51..c4d25a8a9 100644
--- a/SConscript
+++ b/SConscript
@@ -187,9 +187,8 @@ class Project:
'src/engine/input/xinput/xinput_device.cpp'])
def configure_boost(self):
- if not self.conf.CheckLibWithHeader('boost_signals', 'boost/signals.hpp', 'c++'):
- if not self.conf.CheckLibWithHeader('boost_signals-mt', 'boost/signals.hpp', 'c++'):
- self.fatal_error += " * library 'boost_signals' not found\n"
+ if not self.conf.CheckHeader('boost/signals2.hpp', '<>', 'c++'):
+ self.fatal_error += " * library 'boost_signals2' not found\n"
def configure_png(self):
if self.conf.CheckMyProgram('pkg-config'):
diff --git a/src/editor/button.hpp b/src/editor/button.hpp
index c85d7da9e..d89dfe669 100644
--- a/src/editor/button.hpp
+++ b/src/editor/button.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_EDITOR_BUTTON_HPP
#define HEADER_PINGUS_EDITOR_BUTTON_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/gui/rect_component.hpp"
@@ -48,7 +48,7 @@ class Button : public GUI::RectComponent
void enable() { enabled = true; }
void disable() { enabled = false; }
- boost::signal<void()> on_click;
+ boost::signals2::signal<void()> on_click;
private:
Button (const Button&);
diff --git a/src/editor/checkbox.hpp b/src/editor/checkbox.hpp
index 7c3bc835f..66382d79b 100644
--- a/src/editor/checkbox.hpp
+++ b/src/editor/checkbox.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_EDITOR_CHECKBOX_HPP
#define HEADER_PINGUS_EDITOR_CHECKBOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/gui/rect_component.hpp"
@@ -40,7 +40,7 @@ class Checkbox : public GUI::RectComponent
bool is_checked() const { return checked; }
void on_primary_button_press(int x, int y);
- boost::signal<void (bool)> on_change;
+ boost::signals2::signal<void (bool)> on_change;
private:
Checkbox (const Checkbox&);
diff --git a/src/editor/combobox.hpp b/src/editor/combobox.hpp
index 0ca742593..603556bd9 100644
--- a/src/editor/combobox.hpp
+++ b/src/editor/combobox.hpp
@@ -18,7 +18,7 @@
#ifndef HEADER_PINGUS_EDITOR_COMBOBOX_HPP
#define HEADER_PINGUS_EDITOR_COMBOBOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/display/sprite.hpp"
#include "engine/gui/rect_component.hpp"
@@ -88,7 +88,7 @@ class Combobox : public GUI::RectComponent
void update_layout() {}
- boost::signal<void (const ComboItem&)> on_select;
+ boost::signals2::signal<void (const ComboItem&)> on_select;
private:
Combobox();
diff --git a/src/editor/file_list.hpp b/src/editor/file_list.hpp
index cc4bba2de..85efe6aa0 100644
--- a/src/editor/file_list.hpp
+++ b/src/editor/file_list.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_EDITOR_FILE_LIST_HPP
#define HEADER_PINGUS_EDITOR_FILE_LIST_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/display/sprite.hpp"
#include "engine/gui/rect_component.hpp"
@@ -61,7 +61,7 @@ class FileList : public GUI::RectComponent
bool has_more_next_pages();
bool has_more_prev_pages();
- boost::signal<void (const System::DirectoryEntry&)> on_click;
+ boost::signals2::signal<void (const System::DirectoryEntry&)> on_click;
private:
int items_per_page();
diff --git a/src/editor/inputbox.hpp b/src/editor/inputbox.hpp
index cad9663ec..87321dbba 100644
--- a/src/editor/inputbox.hpp
+++ b/src/editor/inputbox.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_EDITOR_INPUTBOX_HPP
#define HEADER_PINGUS_EDITOR_INPUTBOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/gui/rect_component.hpp"
@@ -40,8 +40,8 @@ class Inputbox : public GUI::RectComponent
void update_layout() {}
- boost::signal<void (const std::string&)> on_change;
- boost::signal<void (const std::string&)> on_enter;
+ boost::signals2::signal<void (const std::string&)> on_change;
+ boost::signals2::signal<void (const std::string&)> on_enter;
private:
Inputbox (const Inputbox&);
diff --git a/src/editor/message_box.hpp b/src/editor/message_box.hpp
index 385387a61..d885767cf 100644
--- a/src/editor/message_box.hpp
+++ b/src/editor/message_box.hpp
@@ -45,7 +45,7 @@ class MessageBox : public GUI::GroupComponent
void on_cancel_button();
public:
- boost::signal<void()> on_ok;
+ boost::signals2::signal<void()> on_ok;
private:
MessageBox(const MessageBox&);
diff --git a/src/editor/object_selector.cpp b/src/editor/object_selector.cpp
index 28e306826..f3a36b5e8 100644
--- a/src/editor/object_selector.cpp
+++ b/src/editor/object_selector.cpp
@@ -16,7 +16,7 @@
#include "editor/object_selector.hpp"
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "editor/generic_level_obj.hpp"
#include "editor/gui_style.hpp"
@@ -47,7 +47,7 @@ class ObjectSelectorButton : public GUI::RectComponent
std::string tooltip;
public:
- boost::signal<void()> on_click;
+ boost::signals2::signal<void()> on_click;
public:
ObjectSelectorButton(ObjectSelectorList* object_list_,
diff --git a/src/editor/viewport.hpp b/src/editor/viewport.hpp
index 1ae9eff7c..18868254d 100644
--- a/src/editor/viewport.hpp
+++ b/src/editor/viewport.hpp
@@ -18,7 +18,7 @@
#ifndef HEADER_PINGUS_EDITOR_VIEWPORT_HPP
#define HEADER_PINGUS_EDITOR_VIEWPORT_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include <set>
#include "editor/selection.hpp"
@@ -148,7 +148,7 @@ class Viewport : public GUI::RectComponent
void clear_selection();
- boost::signal<void (const Selection&)> selection_changed;
+ boost::signals2::signal<void (const Selection&)> selection_changed;
private:
Viewport();
Viewport (const Viewport&);
diff --git a/src/pingus/components/check_box.hpp b/src/pingus/components/check_box.hpp
index 00e23b764..5bef50f6b 100644
--- a/src/pingus/components/check_box.hpp
+++ b/src/pingus/components/check_box.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
#define HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/display/sprite.hpp"
#include "engine/gui/rect_component.hpp"
@@ -39,7 +39,7 @@ class CheckBox : public GUI::RectComponent
void set_state(bool v, bool send_signal);
- boost::signal<void (bool)> on_change;
+ boost::signals2::signal<void (bool)> on_change;
private:
CheckBox (const CheckBox&);
diff --git a/src/pingus/components/choice_box.hpp b/src/pingus/components/choice_box.hpp
index 49d6e1948..ef51b6dd2 100644
--- a/src/pingus/components/choice_box.hpp
+++ b/src/pingus/components/choice_box.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
#define HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/gui/rect_component.hpp"
@@ -36,7 +36,7 @@ class ChoiceBox : public GUI::RectComponent
void add_choice(const std::string& str);
void set_current_choice(int choice);
- boost::signal<void (std::string)> on_change;
+ boost::signals2::signal<void (std::string)> on_change;
private:
ChoiceBox (const ChoiceBox&);
diff --git a/src/pingus/components/slider_box.hpp b/src/pingus/components/slider_box.hpp
index ae4d92406..75118eac2 100644
--- a/src/pingus/components/slider_box.hpp
+++ b/src/pingus/components/slider_box.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
#define HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "engine/gui/rect_component.hpp"
@@ -39,7 +39,7 @@ class SliderBox : public GUI::RectComponent
void set_value(int v);
- boost::signal<void (int)> on_change;
+ boost::signals2::signal<void (int)> on_change;
private:
SliderBox (const SliderBox&);
diff --git a/src/pingus/config_manager.hpp b/src/pingus/config_manager.hpp
index b07b83e65..4cf08e046 100644
--- a/src/pingus/config_manager.hpp
+++ b/src/pingus/config_manager.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
#define HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
-#include <boost/signal.hpp>
+#include <boost/signals2.hpp>
#include "math/size.hpp"
#include "pingus/options.hpp"
@@ -39,55 +39,55 @@ class ConfigManager
void set_master_volume(int);
int get_master_volume() const;
- boost::signal<void(int)> on_master_volume_change;
+ boost::signals2::signal<void(int)> on_master_volume_change;
void set_sound_volume(int);
int get_sound_volume() const;
- boost::signal<void(int)> on_sound_volume_change;
+ boost::signals2::signal<void(int)> on_sound_volume_change;
void set_music_volume(int);
int get_music_volume() const;
- boost::signal<void(int)> on_music_volume_change;
+ boost::signals2::signal<void(int)> on_music_volume_change;
void set_fullscreen_resolution(const Size& size);
Size get_fullscreen_resolution() const;
- boost::signal<void(Size)> on_fullscreen_resolution_change;
+ boost::signals2::signal<void(Size)> on_fullscreen_resolution_change;
void set_fullscreen(bool);
bool get_fullscreen() const;
- boost::signal<void(bool)> on_fullscreen_change;
+ boost::signals2::signal<void(bool)> on_fullscreen_change;
void set_renderer(FramebufferType type);
FramebufferType get_renderer() const;
- boost::signal<void(FramebufferType)> on_renderer_change;
+ boost::signals2::signal<void(FramebufferType)> on_renderer_change;
void set_resizable(bool);
bool get_resizable() const;
- boost::signal<void(bool)> on_resizable_change;
+ boost::signals2::signal<void(bool)> on_resizable_change;
void set_mouse_grab(bool);
bool get_mouse_grab() const;
- boost::signal<void(bool)> on_mouse_grab_change;
+ boost::signals2::signal<void(bool)> on_mouse_grab_change;
void set_print_fps(bool);
bool get_print_fps() const;
- boost::signal<void(bool)> on_print_fps_change;
+ boost::signals2::signal<void(bool)> on_print_fps_change;
void set_language(const tinygettext::Language&);
tinygettext::Language get_language() const;
- boost::signal<void(const tinygettext::Language&)> on_language_change;
+ boost::signals2::signal<void(const tinygettext::Language&)> on_language_change;
void set_software_cursor(bool);
bool get_software_cursor() const;
- boost::signal<void(bool)> on_software_cursor_change;
+ boost::signals2::signal<void(bool)> on_software_cursor_change;
void set_auto_scrolling(bool);
bool get_auto_scrolling() const;
- boost::signal<void(bool)> on_auto_scrolling_change;
+ boost::signals2::signal<void(bool)> on_auto_scrolling_change;
void set_drag_drop_scrolling(bool);
bool get_drag_drop_scrolling() const;
- boost::signal<void(bool)> on_drag_drop_scrolling_change;
+ boost::signals2::signal<void(bool)> on_drag_drop_scrolling_change;
private:
ConfigManager (const ConfigManager&);
diff --git a/src/pingus/screens/option_menu.hpp b/src/pingus/screens/option_menu.hpp
index 60b1578d2..154ef0f69 100644
--- a/src/pingus/screens/option_menu.hpp
+++ b/src/pingus/screens/option_menu.hpp
@@ -17,7 +17,7 @@
#ifndef HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
#define HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
-#include <boost/signals.hpp>
+#include <boost/signals2.hpp>
#include <map>
#include <vector>
@@ -66,7 +66,7 @@ class OptionMenu : public GUIScreen
//Label* defaults_label;
//CheckBox* defaults_box;
- typedef std::vector<boost::signals::connection> Connections;
+ typedef std::vector<boost::signals2::connection> Connections;
Connections connections;
tinygettext::Language m_language;

View File

@ -1,80 +0,0 @@
Fix CVE-2018-19149:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19149
https://gitlab.freedesktop.org/poppler/poppler/issues/664
Patch copied from upstream source repository:
https://gitlab.freedesktop.org/poppler/poppler/commit/f162ecdea0dda5dbbdb45503c1d55d9afaa41d44
From f162ecdea0dda5dbbdb45503c1d55d9afaa41d44 Mon Sep 17 00:00:00 2001
From: Marek Kasik <mkasik@redhat.com>
Date: Fri, 20 Apr 2018 11:38:13 +0200
Subject: [PATCH] Fix crash on missing embedded file
Check whether an embedded file is actually present in the PDF
and show warning in that case.
https://bugs.freedesktop.org/show_bug.cgi?id=106137
https://gitlab.freedesktop.org/poppler/poppler/issues/236
---
glib/poppler-attachment.cc | 26 +++++++++++++++++---------
glib/poppler-document.cc | 3 ++-
2 files changed, 19 insertions(+), 10 deletions(-)
diff --git a/glib/poppler-attachment.cc b/glib/poppler-attachment.cc
index c6502e9d..11ba5bb5 100644
--- a/glib/poppler-attachment.cc
+++ b/glib/poppler-attachment.cc
@@ -111,17 +111,25 @@ _poppler_attachment_new (FileSpec *emb_file)
attachment->description = _poppler_goo_string_to_utf8 (emb_file->getDescription ());
embFile = emb_file->getEmbeddedFile();
- attachment->size = embFile->size ();
+ if (embFile != NULL && embFile->streamObject()->isStream())
+ {
+ attachment->size = embFile->size ();
- if (embFile->createDate ())
- _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime);
- if (embFile->modDate ())
- _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime);
+ if (embFile->createDate ())
+ _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime);
+ if (embFile->modDate ())
+ _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime);
- if (embFile->checksum () && embFile->checksum ()->getLength () > 0)
- attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (),
- embFile->checksum ()->getLength ());
- priv->obj_stream = embFile->streamObject()->copy();
+ if (embFile->checksum () && embFile->checksum ()->getLength () > 0)
+ attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (),
+ embFile->checksum ()->getLength ());
+ priv->obj_stream = embFile->streamObject()->copy();
+ }
+ else
+ {
+ g_warning ("Missing stream object for embedded file");
+ g_clear_object (&attachment);
+ }
return attachment;
}
diff --git a/glib/poppler-document.cc b/glib/poppler-document.cc
index 83f6aea6..ea319344 100644
--- a/glib/poppler-document.cc
+++ b/glib/poppler-document.cc
@@ -670,7 +670,8 @@ poppler_document_get_attachments (PopplerDocument *document)
attachment = _poppler_attachment_new (emb_file);
delete emb_file;
- retval = g_list_prepend (retval, attachment);
+ if (attachment != NULL)
+ retval = g_list_prepend (retval, attachment);
}
return g_list_reverse (retval);
}
--
2.19.1

View File

@ -0,0 +1,25 @@
From 223c82d1d6ed1f29f26307249827ff679e09c780 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sat, 28 Jul 2018 12:22:12 +0200
Subject: [PATCH] disable resolve_symlink
---
src/common/exec.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/common/exec.c b/src/common/exec.c
index 878fc29..6b3e283 100644
--- a/src/common/exec.c
+++ b/src/common/exec.c
@@ -218,6 +218,8 @@ find_my_exec(const char *argv0, char *retpath)
static int
resolve_symlinks(char *path)
{
+ // On GuixSD we *want* stuff relative to symlinks.
+ return 0;
#ifdef HAVE_READLINK
struct stat buf;
char orig_wd[MAXPGPATH],
--
2.18.0

View File

@ -1,4 +1,4 @@
https://sources.debian.org/data/main/p/pyqt5/5.11.2+dfsg-1/debian/patches/public_sip.diff
https://sources.debian.org/data/main/p/pyqt5/5.11.3+dfsg-1/debian/patches/public_sip.diff
From: Dmitry Shachnev <mitya57@debian.org>
Date: Tue, 3 Jul 2018 09:46:42 +0300
@ -6,30 +6,16 @@ Subject: Use the public version of sip module
Per https://www.debian.org/doc/debian-policy/#convenience-copies-of-code.
---
configure.py | 19 +------------------
1 file changed, 1 insertion(+), 18 deletions(-)
configure.py | 2 +-
designer/pluginloader.cpp | 2 +-
qmlscene/pluginloader.cpp | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/configure.py b/configure.py
index 7c48136..ca23f93 100644
index 32d03a0..3c43a14 100644
--- a/configure.py
+++ b/configure.py
@@ -642,15 +642,6 @@ class TargetConfiguration:
"Unable to import enum. Please install the enum34 "
"package from PyPI.")
- # Check there is a private copy of the sip module already installed.
- try:
- from PyQt5 import sip
- except ImportError:
- error(
- "Unable to import PyQt5.sip. Make sure you have "
- "configured SIP to create a private copy of the sip "
- "module.")
-
# Get the details of the Python interpreter library.
py_major = self.py_version >> 16
py_minor = (self.py_version >> 8) & 0x0ff
@@ -2438,7 +2429,7 @@ def get_sip_flags(target_config):
@@ -2440,7 +2440,7 @@ def get_sip_flags(target_config):
the target configuration.
"""
@ -38,18 +24,32 @@ index 7c48136..ca23f93 100644
# If we don't check for signed interpreters, we exclude the 'VendorID'
# feature
@@ -2914,14 +2905,6 @@ def check_sip(target_config):
target_config is the target configuration.
"""
diff --git a/designer/pluginloader.cpp b/designer/pluginloader.cpp
index f41d391..3ca8b11 100644
--- a/designer/pluginloader.cpp
+++ b/designer/pluginloader.cpp
@@ -167,7 +167,7 @@ bool PyCustomWidgets::importPlugins(const QString &dir, const QStringList &plugi
// Make sure we have sip.unwrapinstance.
if (!sip_unwrapinstance)
{
- sip_unwrapinstance = getModuleAttr("PyQt5.sip", "unwrapinstance");
+ sip_unwrapinstance = getModuleAttr("sip", "unwrapinstance");
- # Check there is a private copy of the sip module already installed.
- try:
- from PyQt5 import sip
- except ImportError:
- error(
- "Unable to import PyQt5.sip. Make sure you have configured "
- "SIP to create a private copy of the sip module.")
-
if target_config.sip is None:
error(
"Make sure you have a working sip on your PATH or use the "
if (!sip_unwrapinstance)
return true;
diff --git a/qmlscene/pluginloader.cpp b/qmlscene/pluginloader.cpp
index e14b946..140e80c 100644
--- a/qmlscene/pluginloader.cpp
+++ b/qmlscene/pluginloader.cpp
@@ -412,9 +412,9 @@ PyObject *PyQt5QmlPlugin::getModuleAttr(const char *module, const char *attr)
void PyQt5QmlPlugin::getSipAPI()
{
#if defined(SIP_USE_PYCAPSULE)
- sip = (const sipAPIDef *)PyCapsule_Import("PyQt5.sip._C_API", 0);
+ sip = (const sipAPIDef *)PyCapsule_Import("sip._C_API", 0);
#else
- PyObject *c_api = getModuleAttr("PyQt5.sip", "_C_API");
+ PyObject *c_api = getModuleAttr("sip", "_C_API");
if (c_api)
{

View File

@ -1,35 +0,0 @@
Avoid conflicting declaration of 'renameat2' on glibc 2.28
(see <https://github.com/meta-qt5/meta-qt5/issues/94>.)
Patch from <https://github.com/meta-qt5/meta-qt5/pull/95>
by Andreas Müller <schnitzeltony@gmail.com>.
---
src/corelib/io/qfilesystemengine_unix.cpp | 11 ++++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp
index be6ce48d0cb..1bf1bebc7f1 100644
--- a/qtbase/src/corelib/io/qfilesystemengine_unix.cpp
+++ b/qtbase/src/corelib/io/qfilesystemengine_unix.cpp
@@ -98,6 +98,17 @@ extern "C" NSString *NSTemporaryDirectory();
# define FICLONE _IOW(0x94, 9, int)
#endif
+// renameat2/statx features for non bootstrapped build
+#ifndef QT_BOOTSTRAPPED
+#ifdef __GLIBC_PREREQ
+# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1)
+# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1)
+#else
+# define QT_FEATURE_renameat2 -1
+# define QT_FEATURE_statx -1
+#endif
+#endif
+
# if defined(Q_OS_ANDROID)
// renameat2() and statx() are disabled on Android because quite a few systems
// come with sandboxes that kill applications that make system calls outside a
--
2.14.4

View File

@ -0,0 +1,18 @@
Fix build with curl >= 7.62. Patch taken from upstream:
https://pagure.io/SSSD/sssd/c/4d3841ca379afc01184453ba45ab3e75ffec60da?branch=sssd-1-16
diff --git a/src/util/tev_curl.c b/src/util/tev_curl.c
index 6a7a580..d70a429 100644
--- a/src/util/tev_curl.c
+++ b/src/util/tev_curl.c
@@ -97,7 +97,9 @@ static errno_t curl_code2errno(CURLcode crv)
return ETIMEDOUT;
case CURLE_SSL_ISSUER_ERROR:
case CURLE_SSL_CACERT_BADFILE:
+#if LIBCURL_VERSION_NUM < 0x073e00
case CURLE_SSL_CACERT:
+#endif
case CURLE_SSL_CERTPROBLEM:
return ERR_INVALID_CERT;

View File

@ -0,0 +1,57 @@
From c9cbcf8730221e366c7495073f8f8d819ee8ce89 Mon Sep 17 00:00:00 2001
From: Eric Bavier <bavier@member.fsf.org>
Date: Wed, 6 Feb 2019 10:06:59 -0600
Subject: [PATCH] Replace deprecated MPI_Attr_get.
Fixes build with OpenMPI version 4.0.
* SRC/pdgstrf.c, SRC/pdgstrf.c, SRC/superlu_grid.c: 'MPI_Attr_get' ->
'MPI_Comm_get_attr'.
---
SRC/pdgstrf.c | 2 +-
SRC/pzgstrf.c | 2 +-
SRC/superlu_grid.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/SRC/pdgstrf.c b/SRC/pdgstrf.c
index 736ffa2..f92a1ba 100644
--- a/SRC/pdgstrf.c
+++ b/SRC/pdgstrf.c
@@ -426,7 +426,7 @@ pdgstrf(superlu_dist_options_t * options, int m, int n, double anorm,
s_eps = smach_dist("Epsilon");
thresh = s_eps * anorm;
- MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
+ MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
if (!flag) {
fprintf (stderr, "Could not get TAG_UB\n");
return (-1);
diff --git a/SRC/pzgstrf.c b/SRC/pzgstrf.c
index 8896548..8800057 100644
--- a/SRC/pzgstrf.c
+++ b/SRC/pzgstrf.c
@@ -426,7 +426,7 @@ pzgstrf(superlu_dist_options_t * options, int m, int n, double anorm,
s_eps = smach_dist("Epsilon");
thresh = s_eps * anorm;
- MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
+ MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag);
if (!flag) {
fprintf (stderr, "Could not get TAG_UB\n");
return (-1);
diff --git a/SRC/superlu_grid.c b/SRC/superlu_grid.c
index 1213d27..0c0fb90 100644
--- a/SRC/superlu_grid.c
+++ b/SRC/superlu_grid.c
@@ -150,7 +150,7 @@ void superlu_gridmap(
{
int tag_ub;
if ( !grid->iam ) {
- MPI_Attr_get(Bcomm, MPI_TAG_UB, &tag_ub, &info);
+ MPI_Comm_get_attr(Bcomm, MPI_TAG_UB, &tag_ub, &info);
printf("MPI_TAG_UB %d\n", tag_ub);
/* returns 4295677672
In reality it is restricted to no greater than 16384. */
--
2.20.1

View File

@ -0,0 +1,318 @@
Fix LuaTeX compatibility with Poppler 0.72.
Upstream LuaTeX have moved from Poppler to "pplib" and thus upstream
fixes are unavailable. This is based on Arch Linux patches, with minor
changes for Poppler 0.72:
https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/texlive-bin&id=f1b424435c8fa31d9296c7a6dc17f939a8332780
diff --git a/texk/web2c/luatexdir/image/pdftoepdf.w b/texk/web2c/luatexdir/image/pdftoepdf.w
--- a/texk/web2c/luatexdir/image/pdftoepdf.w
+++ b/texk/web2c/luatexdir/image/pdftoepdf.w
@@ -35,7 +35,7 @@
extern void md5(Guchar *msg, int msgLen, Guchar *digest);
-static GBool isInit = gFalse;
+static bool isInit = false;
/* Maintain AVL tree of all PDF files for embedding */
@@ -363,10 +363,10 @@ void copyReal(PDF pdf, double d)
static void copyString(PDF pdf, GooString * string)
{
- char *p;
+ const char *p;
unsigned char c;
size_t i, l;
- p = string->getCString();
+ p = string->c_str();
l = (size_t) string->getLength();
if (pdf->cave)
pdf_out(pdf, ' ');
@@ -393,7 +393,7 @@ static void copyString(PDF pdf, GooString * string)
pdf->cave = true;
}
-static void copyName(PDF pdf, char *s)
+static void copyName(PDF pdf, const char *s)
{
pdf_out(pdf, '/');
for (; *s != 0; s++) {
@@ -468,14 +468,14 @@ static void copyObject(PDF pdf, PdfDocument * pdf_doc, Object * obj)
break;
/*
case objNum:
- GBool isNum() { return type == objInt || type == objReal; }
+ bool isNum() { return type == objInt || type == objReal; }
break;
*/
case objString:
copyString(pdf, (GooString *)obj->getString());
break;
case objName:
- copyName(pdf, (char *)obj->getName());
+ copyName(pdf, obj->getName());
break;
case objNull:
pdf_add_null(pdf);
@@ -531,22 +531,22 @@ static PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
{
switch (pagebox_spec) {
case PDF_BOX_SPEC_MEDIA:
- return page->getMediaBox();
+ return (PDFRectangle *) page->getMediaBox();
break;
case PDF_BOX_SPEC_CROP:
- return page->getCropBox();
+ return (PDFRectangle *) page->getCropBox();
break;
case PDF_BOX_SPEC_BLEED:
- return page->getBleedBox();
+ return (PDFRectangle *) page->getBleedBox();
break;
case PDF_BOX_SPEC_TRIM:
- return page->getTrimBox();
+ return (PDFRectangle *) page->getTrimBox();
break;
case PDF_BOX_SPEC_ART:
- return page->getArtBox();
+ return (PDFRectangle *) page->getArtBox();
break;
default:
- return page->getMediaBox();
+ return (PDFRectangle *) page->getMediaBox();
break;
}
}
@@ -587,11 +587,11 @@ void read_pdf_info(image_dict * idict)
PDFRectangle *pagebox;
int pdf_major_version_found, pdf_minor_version_found;
float xsize, ysize, xorig, yorig;
- if (isInit == gFalse) {
+ if (isInit == false) {
if (!(globalParams))
globalParams = new GlobalParams();
- globalParams->setErrQuiet(gFalse);
- isInit = gTrue;
+ globalParams->setErrQuiet(false);
+ isInit = true;
}
if (img_type(idict) == IMG_TYPE_PDF)
pdf_doc = refPdfDocument(img_filepath(idict), FE_FAIL);
@@ -966,7 +966,7 @@ void epdf_free()
if (PdfDocumentTree != NULL)
avl_destroy(PdfDocumentTree, destroyPdfDocument);
PdfDocumentTree = NULL;
- if (isInit == gTrue)
+ if (isInit == true)
delete globalParams;
- isInit = gFalse;
+ isInit = false;
}
diff --git a/texk/web2c/luatexdir/lua/lepdflib.cc b/texk/web2c/luatexdir/lua/lepdflib.cc
--- a/texk/web2c/luatexdir/lua/lepdflib.cc
+++ b/texk/web2c/luatexdir/lua/lepdflib.cc
@@ -240,7 +240,7 @@ static int l_new_Attribute(lua_State * L)
if (uobj->pd != NULL && uobj->pd->pc != uobj->pc)
pdfdoc_changed_error(L);
uout = new_Attribute_userdata(L);
- uout->d = new Attribute(n, nlen, (Object *)uobj->d);
+ uout->d = new Attribute((GooString)n, (Object *)uobj->d);
uout->atype = ALLOC_LEPDF;
uout->pc = uobj->pc;
uout->pd = uobj->pd;
@@ -439,7 +439,7 @@ static int l_new_Object(lua_State * L)
break;
case 1:
if (lua_isboolean (L,1)) {
- uout->d = new Object(lua_toboolean(L, 1)? gTrue : gFalse);
+ uout->d = new Object(lua_toboolean(L, 1)? true : false);
uout->atype = ALLOC_LEPDF;
uout->pc = 0;
uout->pd = NULL;
@@ -596,7 +596,7 @@ static int m_##in##_##function(lua_State * L) \
uin = (udstruct *) luaL_checkudata(L, 1, M_##in); \
if (uin->pd != NULL && uin->pd->pc != uin->pc) \
pdfdoc_changed_error(L); \
- o = ((in *) uin->d)->function(); \
+ o = (out *) ((in *) uin->d)->function(); \
if (o != NULL) { \
uout = new_##out##_userdata(L); \
uout->d = o; \
@@ -676,7 +676,7 @@ static int m_##in##_##function(lua_State * L) \
pdfdoc_changed_error(L); \
gs = (GooString *)((in *) uin->d)->function(); \
if (gs != NULL) \
- lua_pushlstring(L, gs->getCString(), gs->getLength()); \
+ lua_pushlstring(L, gs->c_str(), gs->getLength()); \
else \
lua_pushnil(L); \
return 1; \
@@ -911,7 +911,7 @@ static int m_Array_getString(lua_State * L)
if (i > 0 && i <= len) {
gs = new GooString();
if (((Array *) uin->d)->getString(i - 1, gs))
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
else
lua_pushnil(L);
delete gs;
@@ -1063,7 +1063,7 @@ static int m_Catalog_getJS(lua_State * L)
if (i > 0 && i <= len) {
gs = ((Catalog *) uin->d)->getJS(i - 1);
if (gs != NULL)
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
else
lua_pushnil(L);
delete gs;
@@ -1125,12 +1125,12 @@ m_poppler_get_INT(Dict, getLength);
static int m_Dict_add(lua_State * L)
{
- char *s;
+ const char *s;
udstruct *uin, *uobj;
uin = (udstruct *) luaL_checkudata(L, 1, M_Dict);
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
- s = copyString(luaL_checkstring(L, 2));
+ s = luaL_checkstring(L, 2);
uobj = (udstruct *) luaL_checkudata(L, 3, M_Object);
((Dict *) uin->d)->add(s, std::move(*((Object *) uobj->d)));
return 0;
@@ -1378,7 +1378,7 @@ static int m_GooString__tostring(lua_State * L)
uin = (udstruct *) luaL_checkudata(L, 1, M_GooString);
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
- lua_pushlstring(L, ((GooString *) uin->d)->getCString(),
+ lua_pushlstring(L, ((GooString *) uin->d)->c_str(),
((GooString *) uin->d)->getLength());
return 1;
}
@@ -1527,9 +1527,9 @@ static int m_Object_initBool(lua_State * L)
pdfdoc_changed_error(L);
luaL_checktype(L, 2, LUA_TBOOLEAN);
if (lua_toboolean(L, 2) != 0)
- *((Object *) uin->d) = Object(gTrue);
+ *((Object *) uin->d) = Object(true);
else
- *((Object *) uin->d) = Object(gFalse);
+ *((Object *) uin->d) = Object(false);
return 0;
}
@@ -1814,7 +1814,7 @@ static int m_Object_getString(lua_State * L)
pdfdoc_changed_error(L);
if (((Object *) uin->d)->isString()) {
gs = (GooString *)((Object *) uin->d)->getString();
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
} else
lua_pushnil(L);
return 1;
@@ -2051,7 +2051,7 @@ static int m_Object_dictAdd(lua_State * L)
pdfdoc_changed_error(L);
if (!((Object *) uin->d)->isDict())
luaL_error(L, "Object is not a Dict");
- ((Object *) uin->d)->dictAdd(copyString(s), std::move(*((Object *) uobj->d)));
+ ((Object *) uin->d)->dictAdd(s, std::move(*((Object *) uobj->d)));
return 0;
}
@@ -2470,9 +2470,9 @@ static int m_PDFDoc_getFileName(lua_State * L)
uin = (udstruct *) luaL_checkudata(L, 1, M_PDFDoc);
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
- gs = ((PdfDocument *) uin->d)->doc->getFileName();
+ gs = (GooString *) ((PdfDocument *) uin->d)->doc->getFileName();
if (gs != NULL)
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
else
lua_pushnil(L);
return 1;
@@ -2559,9 +2559,9 @@ static int m_PDFDoc_readMetadata(lua_State * L)
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) {
- gs = ((PdfDocument *) uin->d)->doc->readMetadata();
+ gs = (GooString *) ((PdfDocument *) uin->d)->doc->readMetadata();
if (gs != NULL)
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
else
lua_pushnil(L);
} else
@@ -2577,7 +2577,7 @@ static int m_PDFDoc_getStructTreeRoot(lua_State * L)
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) {
- obj = ((PdfDocument *) uin->d)->doc->getStructTreeRoot();
+ obj = (StructTreeRoot *) ((PdfDocument *) uin->d)->doc->getStructTreeRoot();
uout = new_StructTreeRoot_userdata(L);
uout->d = obj;
uout->pc = uin->pc;
@@ -3038,12 +3038,12 @@ m_poppler_get_BOOL(Attribute, isHidden);
static int m_Attribute_setHidden(lua_State * L)
{
- GBool i;
+ bool i;
udstruct *uin;
uin = (udstruct *) luaL_checkudata(L, 1, M_Attribute);
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
- i = (GBool) lua_toboolean(L, 2);
+ i = (bool) lua_toboolean(L, 2);
((Attribute *) uin->d)->setHidden(i);
return 0;
}
@@ -3180,7 +3180,7 @@ static int m_StructElement_getParentRef(lua_State * L)
// Ref is false if the C++ functione return false
static int m_StructElement_getPageRef(lua_State * L)
{
- GBool b;
+ bool b;
Ref *r;
udstruct *uin, *uout;
uin = (udstruct *) luaL_checkudata(L, 1, M_StructElement);
@@ -3226,16 +3226,16 @@ static int m_StructElement_setRevision(lua_State * L)
static int m_StructElement_getText(lua_State * L)
{
- GBool i;
+ bool i;
GooString *gs;
udstruct *uin;
uin = (udstruct *) luaL_checkudata(L, 1, M_StructElement);
if (uin->pd != NULL && uin->pd->pc != uin->pc)
pdfdoc_changed_error(L);
- i = (GBool) lua_toboolean(L, 2);
+ i = (bool) lua_toboolean(L, 2);
gs = ((StructElement *) uin->d)->getText(i);
if (gs != NULL)
- lua_pushlstring(L, gs->getCString(), gs->getLength());
+ lua_pushlstring(L, gs->c_str(), gs->getLength());
else
lua_pushnil(L);
return 1;
@@ -3321,7 +3321,7 @@ static int m_StructElement_findAttribute(lua_State * L)
{
Attribute::Type t;
Attribute::Owner o;
- GBool g;
+ bool g;
udstruct *uin, *uout;
const Attribute *a;
uin = (udstruct *) luaL_checkudata(L, 1, M_StructElement);
@@ -3329,7 +3329,7 @@ static int m_StructElement_findAttribute(lua_State * L)
pdfdoc_changed_error(L);
t = (Attribute::Type) luaL_checkint(L,1);
o = (Attribute::Owner) luaL_checkint(L,2);
- g = (GBool) lua_toboolean(L, 3);
+ g = (bool) lua_toboolean(L, 3);
a = ((StructElement *) uin->d)->findAttribute(t,g,o);
if (a!=NULL){

View File

@ -0,0 +1,188 @@
Fix compatibility with Poppler 0.72.
These files are taken from the upstream "poppler0.72.0.cc" variants and
diffed against the "newpoppler" files from the 20180414 distribution.
See revision 49336:
https://tug.org/svn/texlive/trunk/Build/source/texk/web2c/pdftexdir/
--- a/texk/web2c/pdftexdir/pdftoepdf-newpoppler.cc 1970-01-01 01:00:00.000000000 +0100
+++ b/texk/web2c/pdftexdir/pdftoepdf-newpoppler.cc 2018-12-09 21:14:58.479732695 +0100
@@ -22,7 +22,7 @@
https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
by Arch Linux. A little modifications are made to avoid a crash for
some kind of pdf images, such as figure_missing.pdf in gnuplot.
-The poppler should be 0.59.0 or newer versions.
+The poppler should be 0.72.0 or newer versions.
POPPLER_VERSION should be defined.
*/
@@ -120,7 +120,7 @@
static InObj *inObjList;
static UsedEncoding *encodingList;
-static GBool isInit = gFalse;
+static bool isInit = false;
// --------------------------------------------------------------------
// Maintain list of open embedded PDF files
@@ -317,7 +317,7 @@
pdf_puts("<<\n");
assert(r->type == objFont); // FontDescriptor is in fd_tree
for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
- key = obj->dictGetKey(i);
+ key = (char *)obj->dictGetKey(i);
if (strncmp("FontDescriptor", key, strlen("FontDescriptor")) == 0
|| strncmp("BaseFont", key, strlen("BaseFont")) == 0
|| strncmp("Encoding", key, strlen("Encoding")) == 0)
@@ -427,7 +427,7 @@
charset = fontdesc.dictLookup("CharSet");
if (!charset.isNull() &&
charset.isString() && is_subsetable(fontmap))
- epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
+ epdf_mark_glyphs(fd, (char *)charset.getString()->c_str());
else
embed_whole_font(fd);
addFontDesc(fontdescRef.getRef(), fd);
@@ -454,7 +454,7 @@
for (i = 0, l = obj->dictGetLength(); i < l; ++i) {
fontRef = obj->dictGetValNF(i);
if (fontRef.isRef())
- copyFont(obj->dictGetKey(i), &fontRef);
+ copyFont((char *)obj->dictGetKey(i), &fontRef);
else if (fontRef.isDict()) { // some programs generate pdf with embedded font object
copyName((char *)obj->dictGetKey(i));
pdf_puts(" ");
@@ -566,7 +566,7 @@
pdf_printf("%s", convertNumToPDF(obj->getNum()));
} else if (obj->isString()) {
s = (GooString *)obj->getString();
- p = s->getCString();
+ p = (char *)s->c_str();
l = s->getLength();
if (strlen(p) == (unsigned int) l) {
pdf_puts("(");
@@ -664,7 +664,7 @@
("PDF inclusion: CID fonts are not supported"
" (try to disable font replacement to fix this)");
}
- if ((s = ((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
+ if ((s = (char *)((Gfx8BitFont *) r->font)->getCharName(i)) != 0)
glyphNames[i] = s;
else
glyphNames[i] = notdef;
@@ -683,7 +683,7 @@
}
// get the pagebox according to the pagebox_spec
-static PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
+static const PDFRectangle *get_pagebox(Page * page, int pagebox_spec)
{
if (pagebox_spec == pdfboxspecmedia)
return page->getMediaBox();
@@ -715,7 +715,7 @@
{
PdfDocument *pdf_doc;
Page *page;
- PDFRectangle *pagebox;
+ const PDFRectangle *pagebox;
#ifdef POPPLER_VERSION
int pdf_major_version_found, pdf_minor_version_found;
#else
@@ -724,8 +724,8 @@
// initialize
if (!isInit) {
globalParams = new GlobalParams();
- globalParams->setErrQuiet(gFalse);
- isInit = gTrue;
+ globalParams->setErrQuiet(false);
+ isInit = true;
}
// open PDF file
pdf_doc = find_add_document(image_name);
@@ -849,7 +849,7 @@
pageObj = xref->fetch(pageRef->num, pageRef->gen);
pageDict = pageObj.getDict();
rotate = page->getRotate();
- PDFRectangle *pagebox;
+ const PDFRectangle *pagebox;
// write the Page header
pdf_puts("/Type /XObject\n");
pdf_puts("/Subtype /Form\n");
@@ -977,7 +977,7 @@
}
l = dic1.getLength();
for (i = 0; i < l; i++) {
- groupDict.dictAdd(copyString(dic1.getKey(i)),
+ groupDict.dictAdd((const char *)copyString(dic1.getKey(i)),
dic1.getValNF(i));
}
// end modification
@@ -1001,14 +1001,14 @@
pdf_puts("/Resources <<\n");
for (i = 0, l = obj1->dictGetLength(); i < l; ++i) {
obj2 = obj1->dictGetVal(i);
- key = obj1->dictGetKey(i);
+ key = (char *)obj1->dictGetKey(i);
if (strcmp("Font", key) == 0)
copyFontResources(&obj2);
else if (strcmp("ProcSet", key) == 0)
copyProcSet(&obj2);
else
- copyOtherResources(&obj2, key);
+ copyOtherResources(&obj2, (char *)key);
}
pdf_puts(">>\n");
}
--- a/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc 1970-01-01 01:00:00.000000000 +0100
+++ b/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc 2018-12-09 21:14:58.479732695 +0100
@@ -20,7 +20,7 @@
/*
This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
-by Arch Linux. The poppler should be 0.59.0 or newer versions.
+by Arch Linux. The poppler should be 0.72.0 or newer versions.
POPPLER_VERSION should be defined.
*/
@@ -109,7 +109,7 @@
fprintf(stderr, "No SourceName found\n");
exit(1);
}
- outname = (char *)srcName.getString()->getCString();
+ outname = (char *)srcName.getString()->c_str();
// We cannot free srcName, as objname shares its string.
// srcName.free();
} else if (objnum > 0) {
@@ -118,7 +118,7 @@
fprintf(stderr, "Not a Stream object\n");
exit(1);
}
- sprintf(buf, "%s", fileName->getCString());
+ sprintf(buf, "%s", fileName->c_str());
if ((p = strrchr(buf, '.')) == 0)
p = strchr(buf, 0);
if (objgen == 0)
@@ -128,7 +128,7 @@
outname = buf;
} else { // objnum < 0 means we are extracting the XRef table
extract_xref_table = true;
- sprintf(buf, "%s", fileName->getCString());
+ sprintf(buf, "%s", fileName->c_str());
if ((p = strrchr(buf, '.')) == 0)
p = strchr(buf, 0);
sprintf(p, ".xref");
@@ -173,9 +173,9 @@
// parse the header: object numbers and offsets
objStr.streamReset();
- str = new EmbedStream(objStr.getStream(), Object(objNull), gTrue, first);
+ str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
lexer = new Lexer(xref, str);
- parser = new Parser(xref, lexer, gFalse);
+ parser = new Parser(xref, lexer, false);
for (n = 0; n < nObjects; ++n) {
obj1 = parser->getObj();
obj2 = parser->getObj();

View File

@ -0,0 +1,31 @@
Fix compatibility with Poppler 0.72.
Patch taken from upstream:
https://tug.org/svn/texlive/trunk/Build/source/texk/web2c/xetexdir/pdfimage.cpp?r1=44964&r2=48969&diff_format=u
--- a/texk/web2c/xetexdir/pdfimage.cpp 2017/08/06 07:12:02 44964
+++ b/texk/web2c/xetexdir/pdfimage.cpp 2018/10/22 04:01:42 48969
@@ -82,19 +82,19 @@
switch (pdf_box) {
default:
case pdfbox_crop:
- r = page->getCropBox();
+ r = (PDFRectangle *)page->getCropBox();
break;
case pdfbox_media:
- r = page->getMediaBox();
+ r = (PDFRectangle *)page->getMediaBox();
break;
case pdfbox_bleed:
- r = page->getBleedBox();
+ r = (PDFRectangle *)page->getBleedBox();
break;
case pdfbox_trim:
- r = page->getTrimBox();
+ r = (PDFRectangle *)page->getTrimBox();
break;
case pdfbox_art:
- r = page->getArtBox();
+ r = (PDFRectangle *)page->getArtBox();
break;
}

View File

@ -0,0 +1,46 @@
https://github.com/wesnoth/wesnoth/commit/f6a32792d023d182d350b5a2ed9e469ad67484c8.patch
This should be able to be removed with wesnoth@1.14.6
From f6a32792d023d182d350b5a2ed9e469ad67484c8 Mon Sep 17 00:00:00 2001
From: Wedge009 <wedge009@wedge009.net>
Date: Thu, 27 Dec 2018 08:15:10 +1100
Subject: [PATCH] Use explicit casts to accommodate changes to boost's tribool
in 1.69.
(fixes #3646)
---
src/units/frame.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/units/frame.cpp b/src/units/frame.cpp
index 3215fa4fa79d..6370ad69566b 100644
--- a/src/units/frame.cpp
+++ b/src/units/frame.cpp
@@ -460,15 +460,15 @@ std::vector<std::string> frame_parsed_parameters::debug_strings() const
}
if(!boost::indeterminate(auto_vflip_)) {
- v.emplace_back("auto_vflip=" + utils::bool_string(auto_vflip_));
+ v.emplace_back("auto_vflip=" + utils::bool_string(static_cast<bool>(auto_vflip_)));
}
if(!boost::indeterminate(auto_hflip_)) {
- v.emplace_back("auto_hflip=" + utils::bool_string(auto_hflip_));
+ v.emplace_back("auto_hflip=" + utils::bool_string(static_cast<bool>(auto_hflip_)));
}
if(!boost::indeterminate(primary_frame_)) {
- v.emplace_back("primary_frame=" + utils::bool_string(primary_frame_));
+ v.emplace_back("primary_frame=" + utils::bool_string(static_cast<bool>(primary_frame_)));
}
if(!drawing_layer_.get_original().empty()) {
@@ -768,7 +768,7 @@ const frame_parameters unit_frame::merge_parameters(int current_time, const fram
}
// Convert the tribool to bool
- const bool primary = result.primary_frame == true || boost::logic::indeterminate(result.primary_frame);
+ const bool primary = static_cast<bool>(result.primary_frame) || boost::logic::indeterminate(result.primary_frame);
/** The engine provides a default image to use for the unit when none is available */
result.image = current_val.image.is_void() || current_val.image.get_filename().empty()

View File

@ -1,32 +0,0 @@
From ae8e4cc9ab57ff25d2ba6c4b369e8531ce43a6d2 Mon Sep 17 00:00:00 2001
From: Paul van der Walt <paul@denknerd.org>
Date: Mon, 2 Mar 2015 22:15:39 +0100
Subject: [PATCH] Search path environment variable for Zathura.
Adds a search path environment variable for zathura plugins (for reading
different file formats) called ZATHURA_PLUGIN_PATH. Command line option
-p still takes precedence.
Patch by Paul van der Walt <paul@denknerd.org>
Adjusted for Zathura 0.3.9 by Tobias Geerinckx-Rice <me@tobias.gr>
---
zathura/zathura.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/zathura/zathura.c b/zathura/zathura.c
--- a/zathura/zathura.c
+++ b/zathura/zathura.c
@@ -597,6 +597,13 @@ zathura_set_plugin_dir(zathura_t* zathura, const char* dir)
g_return_if_fail(zathura != NULL);
g_return_if_fail(zathura->plugins.manager != NULL);
+ /* Added for Guix: check if environment variable
+ * is set to specify location of zathura plugins.
+ */
+
+ if (dir == NULL)
+ dir = g_getenv("ZATHURA_PLUGIN_PATH");
+
if (dir != NULL) {
set_plugin_dir(zathura, dir);
#ifdef ZATHURA_PLUGINDIR

View File

@ -83,15 +83,14 @@
(define-public poppler
(package
(name "poppler")
(replacement poppler/fixed)
(version "0.68.0")
(version "0.72.0")
(source (origin
(method url-fetch)
(uri (string-append "https://poppler.freedesktop.org/poppler-"
version ".tar.xz"))
(sha256
(base32
"0n0f7mv24lzv9p3dlzakpdhqg7ygcvl6l40grcz95xldzgq083gr"))))
"0lfs1b1jfamxl13zbl5n448dqvl9n8frbv8180y7b7kfyaw7wx61"))))
(build-system cmake-build-system)
;; FIXME:
;; use libcurl: no
@ -133,14 +132,6 @@
(license license:gpl2+)
(home-page "https://poppler.freedesktop.org/")))
(define poppler/fixed
(package
(inherit poppler)
(source (origin
(inherit (package-source poppler))
(patches (append (origin-patches (package-source poppler))
(search-patches "poppler-CVE-2018-19149.patch")))))))
(define-public poppler-data
(package
(name "poppler-data")
@ -506,7 +497,7 @@ by using the poppler rendering engine.")
(define-public zathura
(package
(name "zathura")
(version "0.4.0")
(version "0.4.3")
(source (origin
(method url-fetch)
(uri
@ -514,9 +505,7 @@ by using the poppler rendering engine.")
version ".tar.xz"))
(sha256
(base32
"1j0yah09adv3bsjhhbqra5lambal32svk8fxmf89wwmcqrcr4qma"))
(patches (search-patches
"zathura-plugindir-environment-variable.patch"))))
"0hgx5x09i6d0z45llzdmh4l348fxh1y102sb1w76f2fp4r21j4ky"))))
(native-inputs `(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
@ -533,7 +522,7 @@ by using the poppler rendering engine.")
("girara" ,girara)))
(native-search-paths
(list (search-path-specification
(variable "ZATHURA_PLUGIN_PATH")
(variable "ZATHURA_PLUGINS_PATH")
(files '("lib/zathura")))))
(build-system meson-build-system)
(arguments

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;;
@ -34,7 +34,7 @@
(define-public perl-compress-raw-bzip2
(package
(name "perl-compress-raw-bzip2")
(version "2.081")
(version "2.084")
(source
(origin
(method url-fetch)
@ -42,7 +42,7 @@
"Compress-Raw-Bzip2-" version ".tar.gz"))
(sha256
(base32
"081mpkjy688lg48997fqh3d7ja12vazmz02fw84495civg4vb4l6"))))
"0kwjrsl519bv48b7698a9anj6l0n3z1vrd1a7im2r1pbffxxw5kx"))))
(build-system perl-build-system)
;; TODO: Use our bzip2 package.
(home-page "https://metacpan.org/release/Compress-Raw-Bzip2")
@ -54,7 +54,7 @@ compression library.")
(define-public perl-compress-raw-zlib
(package
(name "perl-compress-raw-zlib")
(version "2.081")
(version "2.084")
(source
(origin
(method url-fetch)
@ -62,7 +62,7 @@ compression library.")
"Compress-Raw-Zlib-" version ".tar.gz"))
(sha256
(base32
"06rsm9ahp20xfyvd3jc69sd0k8vqysryxc6apzdbn96jbcsdwmp1"))))
"0vv69a8kjx64cxhjgaccidy2yyij2j3aqlrv1r0dwa1fl9xijpim"))))
(build-system perl-build-system)
(inputs
`(("zlib" ,zlib)))
@ -90,7 +90,7 @@ compression library.")
(define-public perl-io-compress
(package
(name "perl-io-compress")
(version "2.081")
(version "2.084")
(source
(origin
(method url-fetch)
@ -98,7 +98,7 @@ compression library.")
"IO-Compress-" version ".tar.gz"))
(sha256
(base32
"1na66ns1g3nni0m9q5494ym4swr21hfgpv88mw8wbj2daiswf4aj"))))
"1dbdsxhbikmbbfsdam3crv8474l8ax6d9d7r3s6safk4v8z51g8x"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-compress-raw-zlib" ,perl-compress-raw-zlib) ; >=2.081

View File

@ -4,7 +4,7 @@
;;; Copyright © 2015, 2017 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
@ -70,14 +70,14 @@
(define-public libraw
(package
(name "libraw")
(version "0.19.1")
(version "0.19.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.libraw.org/data/LibRaw-"
version ".tar.gz"))
(sha256
(base32
"1xjyw4n9gfr2r637pjbpbi3h98h9mdjn61b0hsxwqynq2vdij452"))))
"0i4nhjm5556xgn966x0i503ygk2wafq6z83kg0lisacjjab4f3a0"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

View File

@ -259,6 +259,8 @@
;; XXX: These test failures appear legitimate, needs investigation.
;; open_basedir() restriction failure.
"ext/curl/tests/bug61948.phpt"
;; Fails on recent curl https://bugs.php.net/patch-display.php?bug_id=77493
"ext/curl/tests/curl_basic_009.phpt"
;; Expects a false boolean, gets empty array from glob().
"ext/standard/tests/file/bug41655_1.phpt"
"ext/standard/tests/file/glob_variation5.phpt"

View File

@ -174,9 +174,10 @@ algorithm within the Numpy framework.")
(name "bitshuffle-for-snappy")
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(substitute-keyword-arguments (package-arguments bitshuffle)
((#:tests? _ #f) #f)
((#:phases phases)
`(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(with-output-to-file "Makefile"
@ -201,6 +202,6 @@ install: libbitshuffle.so
\tinstall -m644 src/iochain.h $(INCLUDEDIR)
\tinstall -m644 lz4/lz4.h $(INCLUDEDIR)
" (assoc-ref outputs "out"))))
#t)))))
#t))))))
(inputs '())
(native-inputs '())))

Some files were not shown because too many files have changed in this diff Show More