Commit Graph

59 Commits

Author SHA1 Message Date
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
Kleis Auke Wolthuizen
07edfe37b1
Improve symbol visibility (#2688)
* Improve symbol visibility

* Decorate required internal symbols with VIPS_API

* Remove a couple of stray header decls

* Incorporate review comment

- Ensure symbol visibility is also set on static libraries.
- Prefer to use `cc.has_function_attribute('visibility:hidden')`.

* Don't export internal deprecated symbols

* Move deprecated symbols to vips7compat.h

* `IM_FORMAT_H` -> `VIPS_FORMAT_H`

* Move `vips_window_ref` compat stub to `vips7compat.c`

* Disable deprecation warnings internally

* `vips_image_get_kill` -> `vips_image_iskilled`

* Ensure API compatibility

* Add missing include directives

* Move `vips__init` decl to vips7compat

* Move `vips__get_sizeof_vipsobject` to vips7compat

* Fix introspection build

* Fix 2 introspection warnings

* Ensure compatibility with vipsdisp

/usr/bin/ld: tilesource.o: in function `tile_source_new_from_source':
vipsdisp/tilesource.c:1627: undefined reference to `vips__region_no_ownership'
2022-04-16 10:58:55 +01:00
Kleis Auke Wolthuizen
0337c09700
Cleanup gettext handling (#2695)
Use GLib's i18n support instead of copying and pasting that
logic into its own header. This deprecates the vips/intl.h
header in favour of glib/gi18n.h.
2022-02-27 15:27:28 +00:00
Kleis Auke Wolthuizen
1e4cd2d5c2
Fix building with -Dmodules=disabled (#2676)
* Fix building with -Dmodules=disabled

* Reformat line [skip ci]
2022-02-23 10:32:02 +00:00
John Cupitt
b9034bf731 more startup debug output
if VIPS_INFO is set
2021-06-22 15:28:21 +01:00
Kleis Auke Wolthuizen
3ed50e0427 Cleanup configure.ac and #ifdef's 2021-03-06 15:47:07 +01:00
John Cupitt
c99dc0fe03 add mssing g_option_context_free() to vipsedit
We were not freeing the argument parse context in vipsedit.c.

Thanks zodf0055980

see https://github.com/libvips/libvips/issues/1868
2020-10-28 10:24:53 +00:00
John Cupitt
5739ba12eb fix a few more function casts
see

https://github.com/libvips/libvips/pull/1697#issuecomment-657602404
2020-07-14 10:25:35 +01:00
Kleis Auke Wolthuizen
fb61f0fa44 Define ENABLE_DEPRECATED in config.h
Do not check for VIPS_ENABLE_DEPRECATED as it could
come from an earlier version of libvips.
2020-07-07 12:16:43 +02:00
Kleis Auke Wolthuizen
8abcae3abc Avoid using vips7 symbols 2020-06-18 14:21:43 +02:00
Kleis Auke Wolthuizen
21239ef796 Remove deprecated vips7 C++ generator
It's no longer needed after commit bae484b.
2020-06-18 13:42:58 +02:00
Lovell Fuller
3ca21ee2e8 Increase minimum glib-2.0 dependency to v2.15 (released March 2012) 2020-03-26 19:13:21 +00:00
John Cupitt
b085908558 remove vips7 stuff from API
You must now include vips7 support explicitly with

	#include <vips/vips7compat.h>

in your code just after including `vips.h`.

The old vips7 names, such as `Rect`, were starting to cause problems
with other packages like opencv.
2018-05-16 15:08:21 +01:00
John Cupitt
de7636c66b remove "throw" from c++ autogen tools
and output
2017-11-26 17:55:50 +00:00
John Cupitt
7ea24b7c05 try to help centos5
we were using something from glib 2.14, though configure allows glib 2.6

see https://github.com/jcupitt/libvips/issues/622
2017-03-15 09:15:21 +00:00
John Cupitt
96ef05a9d1 fix a crash in arg handling on Windows
we were not updating argc in vips.c after all calls to
g_option_context_parse_strv() on Windows, leading to a crash in some cases

see https://github.com/jcupitt/libvips/issues/553
2016-11-11 10:14:03 +00:00
John Cupitt
030921efc6 make all tools unicode-aware on windows
sigh
2016-08-17 12:14:43 +01:00
John Cupitt
100ae155e1 remove deprecated stuff from vips help
make the vips command-line interface no longer show any of the
deprecated vips7 interface in help

see https://github.com/jcupitt/libvips/issues/269
2015-04-20 09:47:44 +01:00
John Cupitt
1b86de44f4 "make check" works uninstalled
and skips tests for missing features
2014-12-22 10:35:26 +00:00
John Cupitt
dda412c85f add command-line option parsing to python 2014-11-18 11:29:32 +00:00
John Cupitt
30eff079f1 hide VipsFormat and VipsWrap7 classes 2014-06-10 14:43:46 +01:00
John Cupitt
9cb1403b9b better error msg on unknown action
$ vips fred --n

would confusingly complain about unknown option --n, rather than the
unknown acrion "fred"
2013-03-15 12:15:35 +00:00
Benjamin Gilbert
8cc76a6ba3 Update address for Free Software Foundation
Also update LGPLv2.1 license text from the copy currently on the GNU
website.
2013-03-07 00:40:19 -05:00
John Cupitt
c43924f716 Merge remote-tracking branch 'origin/7.30'
Conflicts:
	ChangeLog
	configure.in
2012-12-31 14:40:30 +00:00
John Cupitt
ee2b1f71ce better option parsing for "vips"
The vips driver program was parsing options in a single pass. This
failed if an option came in two parts, for example:

	vips --plugin x.plg list

the argument to --plug would be picked up as the action for "vips",
since actions were selected before option parsing

Now we parse in two passes: the first pass picks up options for vips
itself and for the libvips library, then we select the action, then we
parse again, including any options created by the action
2012-12-31 14:10:54 +00:00
John Cupitt
fdaad16407 better --help output for vips driver prog
now lists possible actions
2012-11-13 12:51:58 +00:00
John Cupitt
1e121f2da7 fixes to lcms2 support 2012-10-25 13:55:26 +01:00
John Cupitt
8653b23810 better handling of jpeg warnings 2012-08-23 21:44:14 +01:00
John Cupitt
3276c636f7 add support for VipsInterpolate to the C++ API
quick and ugly hack, this will be replaced in vips8

necessary to get affinei and affinei_all in Python
2012-08-06 16:06:17 +01:00
John Cupitt
e8b83aa96e fail if numeric args to vips are malformed 2012-04-04 13:37:05 +01:00
John Cupitt
9ea1387a68 add FLAGS args 2012-02-20 21:02:37 +00:00
John Cupitt
aee2999259 generic sequential read mode
moved sequential read stuff into VipsForeignLoad
2012-02-15 13:55:34 +00:00
John Cupitt
190d438ec1 long names for C++ decl args
swig needs long names for args in C++ decls to make %apply accurate

also, fix use of vips --list etc. in C++ makefiles
2012-02-06 12:05:45 +00:00
John Cupitt
1583000298 oops 2012-01-17 11:14:15 +00:00
John Cupitt
5096031371 oops matlab load compat wrapper was broken 2012-01-12 14:14:54 +00:00
John Cupitt
351a2ad71c better saving of coded images 2012-01-12 13:39:58 +00:00
John Cupitt
b43f38997d small fixes 2012-01-11 15:00:37 +00:00
John Cupitt
bf88439c0a "vips list" can show any class 2011-12-14 14:13:34 +00:00
John Cupitt
5e037e4c68 foreign uses the cache 2011-12-02 13:15:05 +00:00
John Cupitt
4fccf06e5d more work on refs 2011-11-30 22:06:52 +00:00
John Cupitt
b41b9ac19c better vips list classes output 2011-11-19 12:51:13 +00:00
John Cupitt
cb5f199f1c misc big fixes 2011-11-08 18:36:33 +00:00
John Cupitt
1374b47e0f more leak tweaks
fewer noisy messages, more checking
2011-09-24 10:59:31 +01:00
John Cupitt
13e354e869 add vips_shutdown()
vips_shutdown() flushes caches, closes plugins and does a leak check
2011-09-24 10:17:32 +01:00
John Cupitt
ed73e8cf08 add cache drop and trim
the operation cache now has drop and trim and can report stats
2011-09-22 14:07:12 +01:00
John Cupitt
ed5cb531bd wrap7 works, for images at least
still need to add masks, doubles, strings, etc.
2011-07-18 17:10:41 +01:00
John Cupitt
10b7b2eec0 wrap7 works more
"vips im_subtract" now produces a usage message via vips8
2011-07-16 12:44:35 +01:00
John Cupitt
580536e412 indent class lists
"vips list classes" now indents the class lists by structure
2011-07-16 11:26:24 +01:00
John Cupitt
03226f6f67 vips7 wrap runs
"vips list clases" now works, not tested actually supplying any args
2011-07-15 21:28:33 +01:00
John Cupitt
3126e5100d get interpolate new from string working
vips_type_map() has to see abstract types now so we can get the
baseclass for interpolate. interpolate class has to set the nickname.
2011-06-21 11:08:56 +01:00