Commit Graph

7743 Commits

Author SHA1 Message Date
Kleis Auke Wolthuizen d80185060d
Various improvements to the build systems (#2675)
* Meson: remove space before colon

Since key-value pairs in Python are usually delimited as
colon+space instead of space+colon+space.

* Meson: disable modules by default when building static libraries

Corresponds to autotools. See: #2323.

* Meson: make modules a feature option

Corresponds to autotools, where modules are built
automatically if enabled and supported.

* Meson: specify minimum required GLib version

* Meson: fix indentation

* Remove unused function checks

* Simplify GLib configure checks

* Meson: ensure modules doesn't include enumtypes sources

Since that would cause duplicate symbols.

(`soname_header` can also be safely removed here,
since that is already included in `libvips_headers_dep`)
2022-02-22 14:33:42 +00:00
John Cupitt c5f2fea8bf fix a gcc warning with clang pragmas 2022-02-22 10:06:43 +00:00
Michael Drake b05515b0c5
Update libnsgif from upstream (#2674)
* libnsgif: Remove patch artifact.

* libnsgif: Update from upstream.
2022-02-21 20:07:20 +00:00
John Cupitt 49cae56e1e stray "im_" prefix 2022-02-20 17:07:29 +00:00
John Cupitt 542cfff472 longer timeout for tests
to allow for slowdown with sanitizers enabled
2022-02-19 16:06:29 +00:00
John Cupitt dc4b6c920b make zlib into a top-level dependency
many packages need it, not just rsvg
2022-02-19 16:05:18 +00:00
Kleis Auke Wolthuizen 3da7caee6c
LSan improvements and fixes (#2672)
* LSan: remove GLib suppression

* LSan: disable the fast unwinder to get full stacktraces

* Move ASan/UBSan fuzzer options to CI configuration

* LSan: remove EOLed python2.7 suppression

* LSan: remove libstdc++ suppression

* LSan: add libx265 to suppression file

* Try to reproduce small memleak

* Try a possible patch

* Skip test if `im_benchmark` is not available

* CI: upgrade Clang version to 13

* CI: correct job names

* Meson: increase the timeout for tests

* README.md: correct Meson invocation
2022-02-19 15:13:42 +00:00
John Cupitt 094e84d6d1 relax accuracy test for 16 bit heic
since it seems rather poor with the libheif on ci runner
2022-02-18 11:55:27 +00:00
John Cupitt e985e23c09
add HDR support to heif load/save (#2596)
* heifload done, doing save

* finish save, add tests, docs
2022-02-18 11:16:15 +00:00
John Cupitt 0388e54bd2 looks like meson must be installed with sudo for ci 2022-02-18 11:09:39 +00:00
John Cupitt 504cea50a5 check pip3 install on runner 2022-02-18 11:06:35 +00:00
John Cupitt aef5f25167 in ci, don't install meson as root 2022-02-18 10:56:49 +00:00
John Cupitt fea9d068c4 oop, forgot a sudo 2022-02-18 10:52:58 +00:00
John Cupitt e14deaf5c6 disable introspection for CI build 2022-02-18 10:48:22 +00:00
John Cupitt 3a7465cf79 make goi optional 2022-02-18 10:40:56 +00:00
John Cupitt 1be213052b install our own meson 2022-02-18 10:36:50 +00:00
John Cupitt dab51ef92f display meson error logs 2022-02-18 10:22:07 +00:00
John Cupitt ecba43c21c try with meson 0.53
since github workflow meson is rather old
2022-02-18 10:21:26 +00:00
John Cupitt f573dc47e3 ci fix 2022-02-18 10:05:04 +00:00
John Cupitt aea262f6f6 try to move CI to meson 2022-02-18 10:01:13 +00:00
John Cupitt dc069f8892 ooop typo 2022-02-18 09:53:40 +00:00
John Cupitt 240b10ba71 update dependency list in README 2022-02-18 09:45:54 +00:00
John Cupitt 01a9947006 remove atexit use
too unreliable to be useful
2022-02-17 14:30:02 +00:00
John Cupitt f6dafd6fc6 update changelog for intospection fixes
and default on, since there are now so few warnings
2022-02-15 10:59:11 +00:00
Corentin Noël 69bf2be12b
Enhance the introspection support by fixing annotations (#2657)
Also refine the .metadata file
2022-02-15 10:54:40 +00:00
John Cupitt 82a8df2a1f fix some more small introspection warnings 2022-02-15 10:10:21 +00:00
John Cupitt f9895d1169 Merge branch 'master' of github.com:libvips/libvips 2022-02-15 10:09:02 +00:00
John Cupitt 362adae8c6
Revert "Enhance the introspection support by fixing annotations (#2655)" (#2656)
This reverts commit 47796dcda0.
2022-02-15 10:08:07 +00:00
John Cupitt cd86d05b12 Merge branch 'master' of github.com:libvips/libvips 2022-02-15 10:07:33 +00:00
John Cupitt 45ad07b2c2 fix a couple more warnings 2022-02-15 10:07:13 +00:00
Corentin Noël 47796dcda0
Enhance the introspection support by fixing annotations (#2655)
* Ensure that double asterisk characters are only used for gtk-doc comments

This triggers warnings when parsing the files with the introspection scanner
and gtk-doc

* Enhance the introspection support by fixing annotations

Also refine the .metadata file

Co-authored-by: John Cupitt <jcupitt@gmail.com>
2022-02-15 09:54:32 +00:00
John Cupitt 257d84108e fix some more introspection warnings 2022-02-15 09:48:01 +00:00
Corentin Noël 542dd06999
Refine header inclusion to allow better introspection generation (#2654)
The headers need to be self-contained for the introspection parser
to work correctly. The entry for external users remains vips/vips.h
2022-02-15 05:02:07 +00:00
John Cupitt 1862e7209e add spngsave to meson build 2022-02-11 16:43:02 +00:00
John Cupitt 896cad6a7a
Add spngsave (#2536)
* quick hack

won't even compile

* works!

at a basic level, anyway

* start wiring up metadata

* metadata done

* add spng interlaced save

* start adding index support

* fix palette save

* Update libvips/foreign/spngsave.c

Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>

* start adding low bit depth write

* add a warning for low bitdepth write

* small fixes

* add 1/2/4 bit write

adapted from the vips2tiff bit packer

* small polish

* note spngsave in changelog

* Update libvips/foreign/spngsave.c

Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>

* Update libvips/foreign/spngsave.c

Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>

* revise 8 and 16-bit PNG write rules

* cleanup

* remove unnecessary palette filter optimisation

since libspng already does this

* add xres/yres rounding

thanks klies

he commit message for your changes. Lines starting

* look for spng.pc and libspng.pc

It can be called either, frustratingly.

* fix PACKAGES_USED for spng .pc changes

Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>
2022-02-11 16:30:23 +00:00
John Cupitt 7731abe8df revise meson notes again 2022-02-10 08:42:17 +00:00
John Cupitt 68e65bdc0f switch to c_std gnu99
since this is what glib uses
2022-02-09 09:31:13 +00:00
John Cupitt 626f9eaabd revise meson notes again 2022-02-09 08:57:58 +00:00
John Cupitt 7be11a1fd7 add support for -Dmagick-package
so meson can now build against graphicsmagick
2022-02-09 08:45:32 +00:00
John Cupitt e1f4fb3198 revise meson notes in README 2022-02-08 18:28:35 +00:00
John Cupitt 298c665d36 update README for meson 2022-02-08 16:04:51 +00:00
John Cupitt 17aa0de325 credit meson build in changelog
see https://github.com/libvips/libvips/pull/2637
2022-02-08 15:20:49 +00:00
Corentin Noël 02901436d4
Add meson build system (#2637)
Allows to use the Meson build system to build the project.
2022-02-08 15:19:36 +00:00
John Cupitt 0d8056b8c5 fix a few small compiler warnings 2022-02-03 14:28:22 +00:00
John Cupitt 8c668303f8 improve the pixel rng
see https://github.com/libvips/libvips/issues/2642
2022-02-02 18:15:26 +00:00
John Cupitt d9c00eb5ca add password fielf to pdfiumload
and docs
2022-01-28 13:32:13 +00:00
John Cupitt cb78b1b9fb add "password" option to pdfload
loads at least AES128-encrypted PDFs

pdfiumload needs a similar feature

see https://github.com/libvips/libvips/issues/2635
2022-01-28 13:25:46 +00:00
John Cupitt 0a7e96a4e2 Merge branch '8.12' 2022-01-28 08:51:27 +00:00
John Cupitt 68a8bf42a7 better arg checking for hist_find_ndim
we were not checking the number of input bands

move checks to _build

thanks travisbell

see https://github.com/libvips/libvips/issues/2634
2022-01-28 08:47:30 +00:00
John Cupitt 535657a203 Merge branch '8.12' 2022-01-24 12:12:57 +00:00