Commit Graph

8153 Commits

Author SHA1 Message Date
John Cupitt c920f86517 remove THANKS file
since github tracks this automatically now
2022-07-27 11:20:41 +01:00
Kleis Auke Wolthuizen 057703938e
Remove remnant of Autotools (#2950)
* Remove `glib-mkenums` autotools templates and generated files

Meson uses the `enumtypes.c.in` and `enumtypes.h.in` in
`libvips/include/vips` and doesn't use the pre-generated
files.

* Remove man files for no longer existing tools

+ update the `meson.build`.

* Remove Autotools section in `.gitignore`

* Remove `po/messages` left-over

* Remove `g-ir-scanner` entry point

No longer needed by Meson.

* Remove `glib-genmarshal` generated files

Meson doesn't use these pre-generated files.

* Remove Autotools specific Git attributes

* Remove no longer existing tools in `.gitignore`

* Remove Make specific things in `.gitignore`

* Rename COPYING to LICENSE

* Remove no longer needed `.gitignore` sections

Meson only supports out-of-tree builds. This assumes that the
build directory is ignored.

* Remove no longer needed `.editorconfig` sections
2022-07-27 10:56:56 +01:00
Kleis Auke Wolthuizen b808cba14a
Remove unneeded adapter function for Emscripten (#2949)
The `*_class_intern_init` functions have already been patched within
wasm-vips to include the missing `class_data` member, so this adapter
function was not needed.
2022-07-27 09:14:12 +01:00
John Cupitt 95970d0f40 ignore TAGS 2022-07-27 09:11:01 +01:00
John Cupitt d3021c2775 Merge branch '8.13' 2022-07-27 09:09:12 +01:00
Kleis Auke Wolthuizen a68eb00fbe
Meson: bump version to 8.13.1 (#2948)
Also, increment revision in the Autotools build.
2022-07-27 09:08:07 +01:00
John Cupitt 87fbafaebe Merge branch '8.13' 2022-07-26 12:21:45 +01:00
John Cupitt 5e93ac43ac bump 8.13 version 2022-07-26 12:20:43 +01:00
Kleis Auke Wolthuizen 8b4ef8bdfc
Fix detection of `ImportImagePixels` and `ImagesToBlob` for IM7 (#2944)
ImageMagick 7.x uses the `<MagickCore/MagickCore.h>` include
directive instead of `<magick/api.h>`.
2022-07-24 18:04:46 +01:00
John Cupitt ffe13810fb
Remove cruft (#2942)
* remove autotools

It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.

* remove some old cruft

* oop, forgot m4/

* remove version check

since we no longer have a wrapper script
2022-07-24 11:18:30 +01:00
John Cupitt 538aa2a841
remove autotools (#2941)
* remove autotools

It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.

* oop, forgot m4/
2022-07-24 11:14:52 +01:00
Kleis Auke Wolthuizen 7010903538
Meson: improve summary table (#2943)
* Meson: improve summary table

* Fix typo

* Remove redundant whitespace
2022-07-24 11:06:40 +01:00
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