John Cupitt
c439d5e5d9
add a summary table at the end of configure
...
Copied from the old autotools summary. Sample clipped from "meson setup":
```
Program python3 found: YES (/usr/bin/python3)
Configuring variables.sh using configuration
Message:
*Build options
enable debug ......................: true
enable deprecated .................: true
enable modules ....................: true
enable gtk-doc ....................: true
enable doxygen ....................: false
enable introspection ..............: true
enable RAD load/save ..............: true
enable Analyze7 load/save .........: true
enable PPM load/save ..............: true
enable GIF load ...................: true
*Optional external packages
use fftw for FFTs .................: true
accelerate loops with ORC .........: true
ICC profile support with lcms .....: true
zlib ..............................: true
text rendering with pangocairo ....: true
font file support with fontcongfig : true
EXIF metadata support with libexif : true
*External image format libraries
JPEG load/save with libjpeg .......: true
JXL load/save with libjxl .........: false
JPEG2000 load/save with openjpeg ..: true
PNG load/save with libspng ........: false
PNG load/save with libpng .........: true
selected quantisation package .....: imagequant
TIFF load/save with libtiff .......: true
image pyramid save with libgsf ....: true
HEIC/AVIF load/save with libheif ..: true
WebP load/save with libwebp .......: true
PDF load with PDFium ..............: false
PDF load with poppler-glib ........: true
SVG load with librsvg .............: true
EXR load/save with openexr ........: true
OpenSlide load ....................: true
Matlab load with libmatio .........: true
NIfTI load/save with niftiio ......: true
FITS load/save with cfitsio .......: true
GIF save with cgif ................: true
selected Magick package ...........: MagickCore
Magick load/save ..................: true
Build targets in project: 53
...
```
2022-07-23 12:51:09 +01:00
Kleis Auke Wolthuizen
e93f56c8bb
Simplify/modernize vips_crop_get_type()
( #2940 )
2022-07-23 10:14:03 +01:00
Kleis Auke Wolthuizen
a846de017d
CI: fix macOS build ( #2938 )
...
The GLib utilities, including `glib-mkenums`, is split into its own
`glib-utils` formula, see:
https://github.com/Homebrew/homebrew-core/pull/103916
2022-07-22 15:34:17 +01:00
Kleis Auke Wolthuizen
a498680094
Update glib-mkenums
templates ( #2939 )
...
* Avoid writing the full path in enumtypes.h
Helps reproducible builds, as build paths can vary between builds.
* Use g_intern_static_string() for enum/flags type names
We are emitting a static string, so use that shortcut function to
intern it, which will save one allocation.
* Use g_once_init_enter/leave to register enum/flags type names
This is the more modern way, and ensures thread-safety.
2022-07-22 15:33:40 +01:00
Kleis Auke Wolthuizen
fa6c034b32
Link the main library with -Wl,-z,nodelete
to prevent unloading ( #2934 )
...
See: https://github.com/libvips/php-vips-ext/pull/44
2022-07-20 10:20:09 +01:00
John Cupitt
57fff0fe2b
don't check ADLER32 checksums on libpng load
...
can be rather chatty, and even cause loops on some libpng versions
see https://github.com/libvips/libvips/discussions/2930
2022-07-16 17:18:39 +01:00
Kleis Auke Wolthuizen
d546c81fa3
Fix dzsave_target
for ZIP output ( #2927 )
2022-07-15 19:39:56 +01:00
Lovell Fuller
1bf1a32f2c
pngsave: Change default row filter from 'all' to 'none' ( #2929 )
...
as this is usually faster and produces a smaller file size
2022-07-15 19:20:42 +01:00
Kleis Auke Wolthuizen
a69e61a6d0
Meson: remove redundant --no-undefined
link argument ( #2918 )
...
This is already controlled by the `b_lundef` built-in option, which defaults to `true`.
2022-07-12 12:34:22 +01:00
Kleis Auke Wolthuizen
e1098857b3
svgload: use rsvg_handle_get_geometry_for_element
instead ( #2919 )
...
See: https://gitlab.gnome.org/GNOME/librsvg/-/issues/853 .
2022-07-12 12:33:54 +01:00
John Cupitt
8a049e9dfc
fix RGBA_ONLY with generic mono
...
1. Convert MULTIBAND uint/short/etc. as we convert uint8 images. They
are probably just uint8 that have been cast up in format.
2. Don't check that the image interpretation is a supported colourspace
before calling vips_colourspace() ... we want to fail with an error
if it can't be converted, not silently accept the image.
2022-07-10 19:32:14 +01:00
John Cupitt
55cbde674b
reformat meson_options
...
in the style gtk uses
2022-07-03 14:21:57 +01:00
John Cupitt
5493103a7a
small reformat
2022-06-30 14:41:44 +01:00
Ali Naqvi
c223ec5e4b
Updated README.md to add crystal-vips bindings ( #2905 )
2022-06-30 14:01:06 +01:00
John Cupitt
0971344785
improve behaviour of pipelines with seq sources
...
Loaders which supported random access would not set the seq flag even if
seq mode was requested.
This would make operations like shrinkv to not run in seq mode, causing
massive cache thrashing.
See https://github.com/libvips/libvips/discussions/2898
2022-06-29 17:54:20 +01:00
Kleis Auke Wolthuizen
6dfb49b976
cplusplus: remove i18n include ( #2890 )
...
Since these files doesn't use any i18n features.
2022-06-26 18:59:47 +01:00
Kleis Auke Wolthuizen
f28e3f1e36
Remove stray soname.h ( #2893 )
...
This became obsolete after commit f11b58ff
.
2022-06-26 18:59:32 +01:00
Kleis Auke Wolthuizen
d70317e0a8
Regenerate POTFILES.in ( #2894 )
2022-06-26 18:59:01 +01:00
Kleis Auke Wolthuizen
26de04d147
Meson: avoid using deprecated feature ( #2895 )
2022-06-26 18:57:41 +01:00
Kleis Auke Wolthuizen
2cc1947177
Doxygen: use SVG for the call graph images ( #2896 )
...
Now that IE is finally gone, all the main browsers support this, which
provides higher quality and smaller sizes.
2022-06-26 18:50:34 +01:00
Kleis Auke Wolthuizen
ae831a145e
Cleanup .gitignore ( #2889 )
...
* Cleanup .gitignore
* Re-add `patches` directory to `Makefile.am`
And ensure it's being tracked by git.
2022-06-23 16:36:47 +01:00
Kleis Auke Wolthuizen
f26a025516
doc: ensure pandoc-docbook-template.docbook
is distributed ( #2891 )
...
Since that is also used by Meson (when configuring with `-Dgtk_doc=true`
and when pandoc is available).
2022-06-23 16:36:02 +01:00
John Cupitt
e81f7f1fab
fix stray jp2k save message
...
we had a stray "valid clipped" message
2022-06-23 10:31:36 +01:00
John Cupitt
1c600c83b6
test jp2k in test_formats.sh
2022-06-23 10:03:29 +01:00
John Cupitt
748a99d245
reorder Target struct to improve compat
...
so fields are at the same position at least
see https://github.com/libvips/libvips/issues/2880
2022-06-21 19:07:35 +01:00
John Cupitt
16e0182e52
fix dzsave_target on older libgsf
...
Older libgsf needs TRUE back from the GsfOutput seek method.
see https://github.com/libvips/libvips/issues/2878
2022-06-21 18:00:07 +01:00
Kleis Auke Wolthuizen
3bd0701604
Meson: improve dependency handling for nifticlib ( #2882 )
...
This allows users to build against nifticlib 2.0.0 with e.g.:
`-Dnifti-prefix-dir=/usr`
2022-06-20 15:47:57 +01:00
John Cupitt
d9f31be67d
configure should add meson files to make dist
...
add meson.build etc. to EXTRA_DIST
see https://github.com/libvips/libvips/issues/2876
2022-06-20 15:04:33 +01:00
John Cupitt
e9414f8d8f
fix build with older libgsf
...
build on libgsf without zip64 support was broken, thanks @remicollet
see https://github.com/libvips/libvips/issues/2878
2022-06-20 13:19:35 +01:00
John Cupitt
a129476f0f
fix "make dist" ready for 8.13 rc1
2022-06-19 16:20:30 +01:00
John Cupitt
dfeb270fe0
don't enable fatal-warnings in debug builds
...
too annoying to have it on all the time
2022-06-19 13:00:04 +01:00
John Cupitt
01d5fbd6a4
use a contiguious buffer for the frame
...
fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=48021
2022-06-19 12:57:47 +01:00
John Cupitt
89615465b7
avoid size_t pixel counts in cgifsave
...
since we limit frame size to INT_SIZE / 4
2022-06-19 12:26:02 +01:00
Daniel Löbl
905a6fe79f
cgifsave: limit max number of colours to 255 ( #2863 )
...
* cgifsave: limit max number of colours to 255
* switch to VIPS_MIN
2022-06-19 12:16:03 +01:00
Sergey Alexandrovich
41da0d28e0
cgifsave: remove regressions from 2853 ( #2870 )
...
* cgifsave: pick the best quantizer instead of the first good enough
* cgifsave: fix palettes comparison
* cgifsave: don't copy unchanged pixels to previous_frame
2022-06-19 12:15:40 +01:00
Kleis Auke Wolthuizen
5b79a744a7
thumbnail: avoid upsizing via libwebp ( #2874 )
2022-06-19 12:02:00 +01:00
John Cupitt
c61b458904
add jxlsave tests
...
and revise colour encoding set
see https://github.com/libvips/libvips/issues/2872
2022-06-18 16:40:10 +01:00
John Cupitt
156e6a91e4
try to improve jxl lossless, again
...
now seems to handle scrgb and srgb, lossless and lossy, with and without
an ICC profile
see https://github.com/libvips/libvips/issues/2872
2022-06-18 16:01:51 +01:00
Kleis Auke Wolthuizen
9c22d74cff
doc: make pandoc optional ( #2866 )
...
Since it's currently unavailable on RHEL 9.
2022-06-15 10:19:49 +01:00
John Cupitt
e0b5eeecde
Merge branch 'master' of github.com:libvips/libvips
2022-06-14 12:08:20 +01:00
John Cupitt
5ef16188ca
display blocked/untrusted status in vips -l
...
though only for loaders/savers
2022-06-14 12:06:41 +01:00
Kleis Auke Wolthuizen
8c7576a5fe
cgifsave: reject images that exceed the pixel limit of libimagequant ( #2865 )
2022-06-14 10:23:11 +01:00
John Cupitt
a7697b462f
use size_t for GIF n_pels
...
fixes an overflow, thanks Kleis
2022-06-13 14:25:39 +01:00
Kleis Auke Wolthuizen
ebfef68707
cgifsave: fix stack-use-after-scope ( #2862 )
...
By reusing `cgif->palette_rgb`, this ensures that `pLocalPalette`
doesn't become indeterminate when it reaches `cgif_addframe`.
2022-06-13 12:59:40 +01:00
John Cupitt
48d13f4828
oop, left some DEBUG on
2022-06-13 10:27:42 +01:00
John Cupitt
0922d60000
Merge branch 'master' of github.com:libvips/libvips
2022-06-12 16:46:18 +01:00
John Cupitt
9f3860ec22
fix up scrgb support in JXL
...
after some discussion on discord with the libjxl maintainers
see https://github.com/libvips/libvips/issues/2830
to do: save scrgb to eg. JPEG fails right now :( we need to do
scRGB->sRGB in jpegsave
2022-06-12 16:43:26 +01:00
Kleis Auke Wolthuizen
468c13693b
CI: upgrade runner to Ubuntu 22.04 ( #2850 )
...
* CI: upgrade runner to Ubuntu 22.04
- Compile with GCC 11 and Clang 14.
- Remove redundant PPAs.
- Use system provided Meson.
- Update LeakSanitizer suppressions.
* CI: ensure `VIPS_BLOCK_UNTRUSTED` is tested
`magicksave` cannot be used for testing when building with
`-Dmodules=enabled` (default), since that would require the
loadable modules to be installed first.
2022-06-12 12:24:30 +01:00
John Cupitt
fe22f80f7d
Merge branch 'master' of github.com:libvips/libvips
2022-06-12 12:24:06 +01:00
Kleis Auke Wolthuizen
7553f60aed
Minor cleanups ( #2857 )
...
- Remove `HAVE_LCMS` definition in favor of `HAVE_LCMS2`.
- Remove `HAVE_WINDOWS_H` definition in favor of `G_OS_WIN32`.
- Remove stray `vips_text_get_type` in `conversion.c`.
- Remove duplicated `unistd.h` include.
- Remove redundant `strcasecmp` definition, we use `g_ascii_strcasecmp` everywhere.
- Remove unnecessary header checks in `configure.ac` and `meson.build`.
- Ensure `unistd.h` include is guarded with `HAVE_UNISTD_H`.
- Fail early when `-Dfontconfig=enabled` and `pangoft2` is not found.
2022-06-12 12:22:36 +01:00