From d5f11b2cfc93091fa5791ca67a4519b398bfc5af Mon Sep 17 00:00:00 2001
From: "W. Michael Petullo" <mike@flyn.org>
Date: Sat, 13 Jan 2018 18:10:13 -0500
Subject: [PATCH] vips: update to 8.6.1

Signed-off-by: W. Michael Petullo <mike@flyn.org>
---
 libs/vips/Makefile                           |   8 +-
 libs/vips/patches/001-no_cpp.patch           | 154 -------------------
 libs/vips/patches/001-no_introspection.patch |  73 +++++++++
 3 files changed, 77 insertions(+), 158 deletions(-)
 delete mode 100644 libs/vips/patches/001-no_cpp.patch
 create mode 100644 libs/vips/patches/001-no_introspection.patch

diff --git a/libs/vips/Makefile b/libs/vips/Makefile
index 2a495214f..c1cb3a884 100644
--- a/libs/vips/Makefile
+++ b/libs/vips/Makefile
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=vips
-PKG_VERSION:=7.42.1
+PKG_VERSION:=8.6.1
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://www.vips.ecs.soton.ac.uk/supported/7.42/
-PKG_HASH:=5ee272b11e4ca61c148d7392cbc01ad35f577b503727f479e38923e5bcfe6abf
+PKG_SOURCE_URL:=https://github.com/jcupitt/libvips/releases/download/v8.6.1/
+PKG_HASH:=f9ba6235ebc3e4d20af5f1604436bcd9686a3fecbe40838325d542f0c21a9270
 PKG_FIXUP:=autoreconf
 PKG_CHECK_FORMAT_SECURITY:=0
 
@@ -29,7 +29,7 @@ define Package/vips
   TITLE:=An image manipulation library
   URL:=http://www.vips.ecs.soton.ac.uk/
   MAINTAINER:=W. Michael Petullo <mike@flyn.org>
-  DEPENDS:=+glib2 +libexif +libjpeg +libpng +libxml2 $(INTL_DEPENDS)
+  DEPENDS:=+glib2 +libexif +libexpat +libjpeg +libpng +libstdcpp +libxml2 $(INTL_DEPENDS)
 endef
 
 TARGET_LDFLAGS+= \
diff --git a/libs/vips/patches/001-no_cpp.patch b/libs/vips/patches/001-no_cpp.patch
deleted file mode 100644
index 72e841c5b..000000000
--- a/libs/vips/patches/001-no_cpp.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-diff -u --recursive --new-file vips-7.42.1-vanilla/configure.ac vips-7.42.1/configure.ac
---- vips-7.42.1-vanilla/configure.ac	2014-12-29 17:45:59.576995574 -0500
-+++ vips-7.42.1/configure.ac	2014-12-29 17:59:03.698808601 -0500
-@@ -264,7 +264,6 @@
- AC_PROG_AWK
- AC_PROG_CC
- AC_PROG_CC_STDC
--AC_PROG_CXX
- AC_C_CONST
- AC_C_RESTRICT
- AC_PROG_RANLIB
-@@ -272,19 +271,6 @@
- AC_PROG_LN_S
- AM_WITH_DMALLOC
- 
--# vips_PROG_CXX_WORKS
--# Check whether the C++ compiler works.
--AC_DEFUN([vips_PROG_CXX_WORKS],
--  [AC_REQUIRE([AC_PROG_CXX])dnl
--   AC_CACHE_CHECK([whether the C++ compiler works],
--   [vips_cv_prog_cxx_works],
--   [AC_LANG_PUSH([C++])
--    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
--                   [vips_cv_prog_cxx_works=yes],
--                   [vips_cv_prog_cxx_works=no])
--    AC_LANG_POP([C++])])
--])
--
- # option to build without C++
- # handy for some embedded applications
- # also, including C++ source causes link problems on some
-@@ -292,24 +278,8 @@
- AC_ARG_ENABLE(cxx, 
-   AS_HELP_STRING([--enable-cxx], [build C++ components (default: test)]))
- 
--if test x"$enable_cxx" != x"no"; then
--  vips_PROG_CXX_WORKS
--  if test x"$vips_cv_prog_cxx_works" = x"yes"; then 
--    AC_DEFINE(ENABLE_CXX,1,[build C++ components])
--    AM_CONDITIONAL(ENABLE_CXX, true)
--    # need -lstdc++ for (eg.) the C++ format loaders
--    # this gets added to vips.pc to help mingw and friends link programs
--    # using libvips
--    if test x"$vips_needs_stdcpp" != x"no"; then
--      VIPS_CXX_LIBS="-lstdc++"
--    fi
--    enable_cxx=yes
--  fi
--fi
--
- if test x"$enable_cxx" != x"yes"; then
-   AM_CONDITIONAL(ENABLE_CXX, false)
--  VIPS_CXX_LIBS=""
-   enable_cxx=no
- fi
- 
-@@ -817,7 +787,6 @@
- AC_SUBST(VIPS_CFLAGS)
- AC_SUBST(VIPS_INCLUDES)
- AC_SUBST(VIPS_LIBS)
--AC_SUBST(VIPS_CXX_LIBS)
- AC_SUBST(PACKAGES_USED)
- AC_SUBST(EXTRA_LIBS_USED)
- 
-@@ -850,12 +819,6 @@
- 	libvips/create/Makefile 
- 	libvips/resample/Makefile 
- 	libvips/video/Makefile 
--	libvipsCC/include/Makefile 
--	libvipsCC/include/vips/Makefile 
--	libvipsCC/Makefile 
--	cplusplus/include/Makefile 
--	cplusplus/include/vips/Makefile 
--	cplusplus/Makefile 
- 	tools/Makefile 
- 	tools/batch_crop 
- 	tools/batch_image_convert 
-@@ -866,7 +829,6 @@
- 	test/Makefile 
- 	test/variables.sh
- 	swig/Makefile 
--	swig/vipsCC/Makefile 
- 	man/Makefile
- 	doc/Makefile
- 	doc/reference/Makefile
-diff -u --recursive --new-file vips-7.42.1-vanilla/libvips/Makefile.am vips-7.42.1/libvips/Makefile.am
---- vips-7.42.1-vanilla/libvips/Makefile.am	2014-12-29 17:45:59.590996100 -0500
-+++ vips-7.42.1/libvips/Makefile.am	2014-12-29 17:59:32.053375826 -0500
-@@ -33,14 +33,6 @@
- # empty means default to C linking
- libvips_la_SOURCES = 
- 
--# if we have C++ components enabled, make sure we link the top-level with c++
--#
--# sadly the if/endif isn't enough to stop automake detecting a c++ link even
--# when c++ is disabled ... comment out this line if you have linking problems
--if ENABLE_CXX
--nodist_EXTRA_libvips_la_SOURCES = resample/dummy2.cc
--endif
--
- # DLLs need dependant libs there too ... put @VIPS_LIBS@ at the end
- libvips_la_LIBADD = \
- 	resample/libresample.la \
-diff -u --recursive --new-file vips-7.42.1-vanilla/libvips/resample/Makefile.am vips-7.42.1/libvips/resample/Makefile.am
---- vips-7.42.1-vanilla/libvips/resample/Makefile.am	2014-12-29 17:45:59.591996138 -0500
-+++ vips-7.42.1/libvips/resample/Makefile.am	2014-12-29 18:01:57.107188019 -0500
-@@ -1,30 +1,3 @@
--# only build the C++ stuff if ENABLE_CXX
--# you'd think we could just define a couple of variables, but that seems to
--# confuse libtool and make it link the library with g++
--# instead, have two completely different paths
--if ENABLE_CXX
--
--libresample_la_SOURCES = \
--	affine.c \
--	quadratic.c \
--	resample.c \
--	similarity.c \
--	resize.c \
--	presample.h \
--	shrink.c \
--	interpolate.c \
--	transform.c \
--	bicubic.cpp \
--	lbb.cpp \
--	nohalo.cpp \
--	vsqbs.cpp \
--	templates.h 
--
--EXTRA_DIST = \
--	dummy2.cc 
--
--else
--
- libresample_la_SOURCES = \
- 	resample.c \
- 	similarity.c \
-@@ -36,16 +9,6 @@
- 	quadratic.c \
- 	transform.c 
- 
--EXTRA_DIST = \
--	dummy2.cc \
--	bicubic.cpp \
--	lbb.cpp \
--	nohalo.cpp \
--	vsqbs.cpp \
--	templates.h 
--
--endif
--
- noinst_LTLIBRARIES = libresample.la
- 
- AM_CPPFLAGS = -I${top_srcdir}/libvips/include @VIPS_CFLAGS@ @VIPS_INCLUDES@ 
diff --git a/libs/vips/patches/001-no_introspection.patch b/libs/vips/patches/001-no_introspection.patch
new file mode 100644
index 000000000..54db29200
--- /dev/null
+++ b/libs/vips/patches/001-no_introspection.patch
@@ -0,0 +1,73 @@
+diff -u --recursive vips-8.6.1-vanilla/configure.ac vips-8.6.1/configure.ac
+--- vips-8.6.1-vanilla/configure.ac	2018-01-13 17:27:19.375813474 -0500
++++ vips-8.6.1/configure.ac	2018-01-13 17:27:38.486871756 -0500
+@@ -53,9 +53,6 @@
+ AC_SUBST(LIBRARY_REVISION)
+ AC_SUBST(LIBRARY_AGE)
+ 
+-# init introspection support
+-GOBJECT_INTROSPECTION_CHECK([1.30.0])
+-
+ # gir needs a list of source files to scan for introspection
+ #
+ # build with a glob and a list of files to exclude from scanning
+diff -u --recursive vips-8.6.1-vanilla/libvips/Makefile.am vips-8.6.1/libvips/Makefile.am
+--- vips-8.6.1-vanilla/libvips/Makefile.am	2018-01-13 17:27:19.366813446 -0500
++++ vips-8.6.1/libvips/Makefile.am	2018-01-13 17:27:57.256929001 -0500
+@@ -70,56 +70,3 @@
+ 	echo "#define VIPS_SONAME \"$$dlname\"" >> soname.h && \
+ 	cp soname.h $(DESTDIR)$(pkgincludedir) && \
+ 	rm soname.h
+-
+--include $(INTROSPECTION_MAKEFILE)
+-INTROSPECTION_GIRS =
+-INTROSPECTION_SCANNER_ARGS = --add-include-path=$(srcdir)
+-INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
+-
+-if HAVE_INTROSPECTION
+-
+-AM_CPPFLAGS = \
+-	      -I${top_srcdir}/libvips/include \
+-	      @VIPS_CFLAGS@ \
+-	      @VIPS_INCLUDES@ \
+-	      @INTROSPECTION_CFLAGS@ 
+-AM_LDFLAGS = \
+-	     @INTROSPECTION_LIBS@ \
+-	     @LDFLAGS@ 
+-LDADD = @INTROSPECTION_LIBS@ @VIPS_CFLAGS@ libvips.la @VIPS_LIBS@ 
+-
+-noinst_PROGRAMS = \
+-	introspect
+-introspect_SOURCES = \
+-	introspect.c
+-
+-# we can't get the _SOURCES lists from the subdirs directly, we get passed it
+-# by configure instead
+-introspection_sources = @vips_introspection_sources@
+-
+-# we make the vips8 API
+-Vips-8.0.gir: introspect
+-Vips_8_0_gir_INCLUDES = GObject-2.0
+-Vips_8_0_gir_CFLAGS = $(INCLUDES) -I${top_srcdir}/libvips/include
+-Vips_8_0_gir_LIBS = libvips.la
+-Vips_8_0_gir_FILES = $(introspection_sources)
+-INTROSPECTION_GIRS += Vips-8.0.gir
+-
+-# don't use
+-#   --warn-all --verbose
+-# too annoying
+-Vips_8_0_gir_SCANNERFLAGS = \
+-	--program=./introspect$(EXEEXT) \
+-	--identifier-prefix=Vips \
+-	--identifier-prefix=vips \
+-	--symbol-prefix=vips \
+-	--c-include=vips/vips.h
+-
+-girdir = $(datadir)/gir-1.0
+-gir_DATA = $(INTROSPECTION_GIRS)
+-
+-typelibdir = $(libdir)/girepository-1.0
+-typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
+-
+-CLEANFILES += $(gir_DATA) $(typelib_DATA)
+-endif