Commit Graph

7368 Commits

Author SHA1 Message Date
Kleis Auke Wolthuizen
8b01104c67 Add suppressions file for ThreadSanitizer 2021-05-03 13:21:45 +02:00
Kleis Auke Wolthuizen
d1b4d12388 Move sink_disc and sink_screen threads to threadpool
And deprecate the vips_g_thread_new and vips_g_thread_join
functions.
2021-05-03 13:21:45 +02:00
Kleis Auke Wolthuizen
4144049174 Remove mutex lock for VipsThreadStartFn
vips_{avg,deviate,hough,max,min,stats} are the only arithmetic functions
that do not require a mutex on the _start and/or _stop function. All
other arithmetic functions still needs this, so move it to sink instead.
2021-05-03 13:21:45 +02:00
Kleis Auke Wolthuizen
80e0cc3d12 Reuse threads by using GLib's threadpool 2021-05-03 13:21:45 +02:00
John Cupitt
1423c550cc
Merge pull request #2234 from kleisauke/fix-ci-failures
Fix CI failures
2021-05-03 12:19:21 +01:00
Kleis Auke Wolthuizen
25a268c341 Fix CI failures
- Include the rgba image in the teardown of TestForeign.
- Fix merge conflict.
2021-05-03 12:39:40 +02:00
John Cupitt
70d76117bd Merge branch 'master' of github.com:libvips/libvips 2021-05-02 18:47:02 +01:00
John Cupitt
0eda488c60 make the tiff test less sensitive to rounding 2021-05-01 23:26:28 +01:00
John Cupitt
03f76b73b4 add "premultiply" param to tiffsave
Some programs, like indesign, only work with premultiplied alpha in TIFF. To
make TIFFs which are compatible with these programs, we'll need an extra
TIFF save flag (perhaps premultiply?) to premultiply alpha and save as
EXTRASAMPLE_ASSOCALPHA.

see https://github.com/libvips/libvips/issues/2192
2021-05-01 20:08:06 +01:00
John Cupitt
33812d79ad Merge branch 'master' of github.com:libvips/libvips 2021-05-01 14:48:25 +01:00
John Cupitt
5d9b60bcd5 revise heifsave docs 2021-05-01 14:48:06 +01:00
John Cupitt
1afde8b4fa allow speed 9 for heifsave
since aom now allows speed 9

see https://github.com/strukturag/libheif/pull/451

and https://github.com/libvips/libvips/issues/2180
2021-05-01 14:43:23 +01:00
John Cupitt
422f518e08
Merge pull request #2224 from libvips/add-jp2k-in-tiff
rebase add-jp2ktiff on master
2021-04-30 17:55:45 +01:00
John Cupitt
6198fb2d0d fix build on windows
only include source files in make dist for libnsgif and module/

we were just including the whole directory, which stopped the derived
files (eg. the .la archives) from being rebuilt on other platforms
2021-04-30 17:27:15 +01:00
John Cupitt
bd8f2de6fd fix libnsgif build
"make dist" was picking up .o files in libnsgif/
2021-04-30 14:28:29 +01:00
John Cupitt
6d562862aa revise jp2k compression profile 2021-04-30 12:24:26 +01:00
John Cupitt
a5e99b15df fix build without openjpeg
we had some dangling references
2021-04-30 11:40:04 +01:00
John Cupitt
7603c4b6ab fix some small bugs
- disable chroma subsample for jp2k-in-tiff ... it didn't work due to opj bugs
- revise numresolutions setting
- require opj 2.4 or later
2021-04-30 10:42:32 +01:00
John Cupitt
56e0b2c2c8 Merge branch '8.10' 2021-04-30 08:27:32 +01:00
John Cupitt
a560d7df50 better vips7 compat
revise the vips7 PNG wrapper to work with libspng, though performance
may be poor

thanks SkyDiverCool

https://github.com/libvips/libvips/issues/2233
2021-04-30 08:20:19 +01:00
John Cupitt
807ce90684
Merge pull request #2226 from lovell/ci-macos-remove-magick
CI: remove imagemagick as a dependency on macOS
2021-04-26 20:38:33 +01:00
Lovell Fuller
23998b42ce CI: remove imagemagick as a dependency on macOS 2021-04-26 19:57:23 +01:00
John Cupitt
edcdf8af70 rebase add-jp2ktiff on master 2021-04-26 15:16:20 +01:00
John Cupitt
813a5f84cf Merge branch 'master' of github.com:libvips/libvips 2021-04-26 09:20:12 +01:00
John Cupitt
5c9287f8d8
Merge pull request #2133 from libvips/improve-detection-of-bad-profiles
Improve detection of bad profiles
2021-04-26 09:11:55 +01:00
John Cupitt
e5405c8ef3 udpate changelog 2021-04-26 09:11:02 +01:00
John Cupitt
127fab316c
Merge pull request #2167 from kleisauke/gmodulized
Support for building loaders/savers as dynamic loadable module
2021-04-26 09:07:09 +01:00
John Cupitt
023f74b037
Merge branch 'master' into gmodulized 2021-04-26 09:03:12 +01:00
John Cupitt
9e6389bd38
Merge pull request #2181 from libvips/add-jxl
Add JPEG-XL support
2021-04-25 16:20:57 +01:00
John Cupitt
cc1020ae55 update libnsgif
for improved lzw decode
2021-04-24 18:57:20 +01:00
John Cupitt
6a0e5c26db Merge branch 'master' into improve-detection-of-bad-profiles 2021-04-24 18:29:22 +01:00
John Cupitt
4abcbc7a2e try to improve the error message 2021-04-24 18:23:27 +01:00
John Cupitt
a046f26095 better falling back on profile load
This patch makes the icc operations fall back to the built-in profiles more
gracefully.
2021-04-24 17:44:25 +01:00
John Cupitt
83c4e56cfb fix a crash found by oss-fuzz 2021-04-22 23:02:34 +01:00
John Cupitt
ee2255da00 only warn if fontfile load fails
since it can fail for things like adding the same font twice from
different files

thanks molfar

see https://github.com/libvips/libvips/issues/2220
2021-04-22 15:27:18 +01:00
John Cupitt
fa6e403d30 tiny formatting improvement 2021-04-22 15:23:20 +01:00
Kleis Auke Wolthuizen
34c0f31643 Build a dynamically loadable module for *magick
By default, a dynamically loadable module is built for *magick (i.e.
`--with-magick=module`) when:
* ImageMagick or GraphicsMagick is found;
* GModule is supported (`gmodule_supported` pkg-config variable).

This can be overridden on the command line with:
* `--without-magick` - to disable *magick usage;
* `--with-magick[=yes]` - to restore the previous behavior;
* `--disable-modules` - to disable the build of dynamic modules.
2021-04-22 12:28:37 +02:00
Kleis Auke Wolthuizen
0c0b68b4b9 Build a dynamically loadable module for poppler
By default, a dynamically loadable module is built for poppler (i.e.
`--with-poppler=module`) when:
* poppler is found;
* GModule is supported (`gmodule_supported` pkg-config variable).

This can be overridden on the command line with:
* `--without-poppler` - to disable poppler usage;
* `--with-poppler[=yes]` - to restore the previous behavior;
* `--disable-modules` - to disable the build of dynamic modules.
2021-04-22 12:28:37 +02:00
Kleis Auke Wolthuizen
2b1daff256 Build a dynamically loadable module for libheif
By default, a dynamically loadable module is built for libheif (i.e.
`--with-heif=module`) when:
* libheif is found;
* GModule is supported (`gmodule_supported` pkg-config variable).

This can be overridden on the command line with:
* `--without-heif` - to disable libheif usage;
* `--with-heif[=yes]` - to restore the previous behavior;
* `--disable-modules` - to disable the build of dynamic modules.
2021-04-22 12:28:37 +02:00
Kleis Auke Wolthuizen
6fd38df95a Build a dynamically loadable module for OpenSlide
By default, a dynamically loadable module is built for OpenSlide (i.e.
`--with-openslide=module`) when:
* OpenSlide is found;
* GModule is supported (`gmodule_supported` pkg-config variable).

This can be overridden on the command line with:
* `--without-openslide` - to disable OpenSlide usage;
* `--with-openslide[=yes]` - to restore the previous behavior;
* `--disable-modules` - to disable the build of dynamic modules.
2021-04-22 12:28:37 +02:00
Kleis Auke Wolthuizen
5c54d13701 Support G_MODULE_SUFFIX as suffix for modules
In addition to the `.plg` suffix, which is still present for
backwards compatibility reasons.
2021-04-22 12:28:37 +02:00
Kleis Auke Wolthuizen
a63d37fc9b Initial support for dynamic loadable modules with GModule 2021-04-22 12:28:37 +02:00
John Cupitt
3841e2e49c
Merge pull request #2216 from kleisauke/gitignore-dirstamp
gitignore: ignore .dirstamp files
2021-04-22 11:26:08 +01:00
John Cupitt
4cc684607e
Merge pull request #2215 from kleisauke/fix-make-uninstall
Fix make uninstall with Doxygen
2021-04-22 11:25:48 +01:00
John Cupitt
42ea7e0bdd
Merge pull request #2219 from kleisauke/simplify-preprocessor
Simplify preprocessor directives
2021-04-22 11:25:22 +01:00
John Cupitt
a7f2f417ef
Merge pull request #2217 from kleisauke/drop-remnant-gmic
Remove remnant of gmic
2021-04-22 11:23:24 +01:00
John Cupitt
fb633f4a95
Merge pull request #2218 from kleisauke/fix-autogen-warning
Fix autogen warning
2021-04-22 11:22:13 +01:00
Kleis Auke Wolthuizen
2735b71292 Simplify preprocessor directives 2021-04-22 12:04:05 +02:00
Kleis Auke Wolthuizen
d9faf3fe01 Fix autogen warning 2021-04-22 12:02:29 +02:00
Kleis Auke Wolthuizen
221a5f7e8b Remove remnant of gmic
This was moved to a plugin with commit 927b2d7.
2021-04-22 12:01:42 +02:00