Skip to content

Commit 06090f0

Browse files
committed
Update for 8.11.4
- Update GLib to 2.70.0. - Update libexif to 0.6.23. - Update librsvg to 2.52.0. - Update FFTW to 3.3.10. - Update ImageMagick to 6.9.11-23. - Update MinGW-w64 to the latest master version. - Link against ucrtbased for debug builds. - Ensure loadable modules are found when bin/ is renamed (#34). MXE Updates: - Update HarfBuzz to 3.0.0.
1 parent 68b84e1 commit 06090f0

File tree

17 files changed

+430
-68
lines changed

17 files changed

+430
-68
lines changed

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,19 @@ Run the top-level [build script](build.sh) with the `--help` parameter for help.
2424
| [freetype] | 2.11.0 | [freetype Licence] (BSD-like) |
2525
| [fribidi] | 1.0.10 | LGPLv3 |
2626
| [gdk-pixbuf] | 2.42.6 | LGPLv3 |
27-
| [glib] | 2.69.2 | LGPLv3 |
28-
| [harfbuzz] | 2.9.0 | MIT Licence |
27+
| [glib] | 2.70.0 | LGPLv3 |
28+
| [harfbuzz] | 3.0.0 | MIT Licence |
2929
| [lcms] | 2.12 | MIT Licence |
30-
| [libexif] | 0.6.22 | LGPLv3 |
30+
| [libexif] | 0.6.23 | LGPLv3 |
3131
| [libffi] | 3.4.2 | MIT Licence |
3232
| [libgsf] | 1.14.47 | LGPLv3 |
3333
| [libheif] | 1.12.0 | LGPLv3 |
3434
| [libimagequant] | 2.4.1¹ | BSD 2-Clause |
3535
| [libpng] | 1.6.37 | [libpng License version 2] |
36-
| [librsvg] | 2.51.4 | LGPLv3 |
36+
| [librsvg] | 2.52.0 | LGPLv3 |
3737
| [libspng] | 0.6.3 | BSD 2-Clause |
3838
| [libtiff] | 4.3.0 | [libtiff License] (BSD-like) |
39-
| [libvips] | 8.11.3 | LGPLv3 |
39+
| [libvips] | 8.11.4 | LGPLv3 |
4040
| [libwebp] | 1.2.1 | New BSD License |
4141
| [libxml2] | 2.9.12 | MIT Licence |
4242
| [mozjpeg] | 4.0.3 | [zlib License, IJG License, BSD-3-Clause] |
@@ -91,9 +91,9 @@ Same as libvips-web + these extra dependencies:
9191
|-----------------|-----------|--------------------------------------------------------------|
9292
| [brotli] | 1.0.9 | MIT Licence |
9393
| [cfitsio] | 4.0.0 | BSD-like |
94-
| [fftw] | 3.3.9 | GPLv2 |
94+
| [fftw] | 3.3.10 | GPLv2 |
9595
| [highway] | 0.14.0 | Apache-2.0 License |
96-
| [imagemagick] | 6.9.12-20 | [ImageMagick License] (Apache-2.0-like) |
96+
| [imagemagick] | 6.9.12-23 | [ImageMagick License] (Apache-2.0-like) |
9797
| [imath] | 3.1.2 | BSD 3-Clause |
9898
| [libjxl] | 0.5 | BSD 3-Clause |
9999
| [matio] | 1.5.21 | BSD 2-Clause |

build.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,10 @@ fi
126126

127127
target="$arch-w64-mingw32.$type.$threads${unwind:+.$unwind}"
128128

129+
if [ "$with_debug" = "true" ]; then
130+
target+=".debug"
131+
fi
132+
129133
# Is docker available?
130134
if ! [ -x "$(command -v docker)" ]; then
131135
echo "ERROR: Please install docker." >&2

build/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ fi
5151
# Always checkout a particular revision which will successfully build.
5252
# This ensures that it will not suddenly break a build.
5353
# Note: Must be regularly updated.
54-
revision="74dd24ca82a5e48ccaf0b549eaef1db07ed382ad"
54+
revision="4d7331c95f14a9db5a66033c5c81d2e8dfb343f8"
5555
initialize=false
5656

5757
if [ -f "$mxe_dir/Makefile" ]; then

build/libexif.mk

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,15 @@ PKG := libexif
22
$(PKG)_WEBSITE := https://libexif.github.io/
33
$(PKG)_DESCR := A library for parsing, editing, and saving EXIF data.
44
$(PKG)_IGNORE :=
5-
$(PKG)_VERSION := 0.6.22
6-
$(PKG)_CHECKSUM := 5048f1c8fc509cc636c2f97f4b40c293338b6041a5652082d5ee2cf54b530c56
5+
$(PKG)_VERSION := 0.6.23
6+
$(PKG)_CHECKSUM := a740a99920eb81ae0aa802bb46e683ce6e0cde061c210f5d5bde5b8572380431
77
$(PKG)_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/$(PKG)-[0-9]*.patch)))
88
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
99
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz
10-
$(PKG)_GH_CONF := libexif/libexif/releases,libexif-,-release,,_,.tar.xz
10+
$(PKG)_GH_CONF := libexif/libexif/releases,v,,,,.tar.xz
1111
$(PKG)_DEPS := cc
1212

1313
define $(PKG)_BUILD
14-
# configure script is ancient so regenerate
15-
cd '$(SOURCE_DIR)' && autoreconf -fi
16-
1714
cd '$(BUILD_DIR)' && $(SOURCE_DIR)/configure \
1815
$(MXE_CONFIGURE_OPTS) \
1916
--disable-nls \

build/libimagequant.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ $(PKG)_WEBSITE := https://github.com/lovell/libimagequant
33
$(PKG)_DESCR := libimagequant v2.4.1 fork (BSD 2-Clause)
44
$(PKG)_IGNORE :=
55
$(PKG)_VERSION := 2.4.1
6-
$(PKG)_CHECKSUM := efbd9b830033f0ddb91a5764e1f063bdcf87a5c7be663755ce3bb4166f86ea4a
6+
$(PKG)_CHECKSUM := 9a808f7dde0b3b9a51632ec903b8a36f4342b95e66496c0919b3619cf03e022f
77
$(PKG)_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/$(PKG)-[0-9]*.patch)))
88
$(PKG)_GH_CONF := lovell/libimagequant/tags,v
99
$(PKG)_DEPS := cc

build/overrides.mk

Lines changed: 32 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,14 @@ matio_FILE := matio-$(matio_VERSION).tar.gz
4040
matio_URL := https://github.com/tbeu/matio/releases/download/v$(matio_VERSION)/$(matio_FILE)
4141

4242
# upstream version is 7, we want ImageMagick 6
43-
imagemagick_VERSION := 6.9.12-20
44-
imagemagick_CHECKSUM := 8fa7addb7eac2dd417c7fbed46ff9dd5614abf7cefea4d786375306bec2659b1
43+
imagemagick_VERSION := 6.9.12-23
44+
imagemagick_CHECKSUM := 17fd6629d4e14f0cd8432ff1a4f1d65ec312549dcfd409eb062b0966e314e7ac
4545
imagemagick_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/imagemagick-[0-9]*.patch)))
4646
imagemagick_GH_CONF := ImageMagick/ImageMagick6/tags
4747

4848
# upstream version is 2.40.5
49-
librsvg_VERSION := 2.51.4
50-
librsvg_CHECKSUM := 0b87d61de9b973aac1fdb9583368b9a893e67f5f7cb75c3e8f7de142557aca00
49+
librsvg_VERSION := 2.52.0
50+
librsvg_CHECKSUM := bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393
5151
librsvg_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/librsvg-[0-9]*.patch)))
5252
librsvg_SUBDIR := librsvg-$(librsvg_VERSION)
5353
librsvg_FILE := librsvg-$(librsvg_VERSION).tar.xz
@@ -72,8 +72,8 @@ fribidi_FILE := fribidi-$(fribidi_VERSION).tar.xz
7272
fribidi_URL := https://github.com/fribidi/fribidi/releases/download/v$(fribidi_VERSION)/$(fribidi_FILE)
7373

7474
# upstream version is 2.50.2
75-
glib_VERSION := 2.69.2
76-
glib_CHECKSUM := a62249e35a8635175a697b3215f1df2b89e0fbb4adb520dcbe21a3ae1ebb8882
75+
glib_VERSION := 2.70.0
76+
glib_CHECKSUM := 200d7df811c5ba634afbf109f14bb40ba7fde670e89389885da14e27c0840742
7777
glib_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/glib-[0-9]*.patch)))
7878
glib_SUBDIR := glib-$(glib_VERSION)
7979
glib_FILE := glib-$(glib_VERSION).tar.xz
@@ -131,8 +131,8 @@ fontconfig_FILE := fontconfig-$(fontconfig_VERSION).tar.xz
131131
fontconfig_URL := https://www.freedesktop.org/software/fontconfig/release/$(fontconfig_FILE)
132132

133133
# upstream version is 3.3.8
134-
fftw_VERSION := 3.3.9
135-
fftw_CHECKSUM := bf2c7ce40b04ae811af714deb512510cc2c17b9ab9d6ddcf49fe4487eea7af3d
134+
fftw_VERSION := 3.3.10
135+
fftw_CHECKSUM := 56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467
136136
fftw_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/fftw-[0-9]*.patch)))
137137
fftw_SUBDIR := fftw-$(fftw_VERSION)
138138
fftw_FILE := fftw-$(fftw_VERSION).tar.gz
@@ -156,14 +156,14 @@ nasm_URL := https://www.nasm.us/pub/nasm/releasebuilds/$(nasm_VERSION)/$(na
156156
nasm_URL_2 := https://sources.voidlinux.org/nasm-$(nasm_VERSION)/$(nasm_FILE)
157157

158158
# upstream version is 9.0.0
159-
# Update MinGW-w64 to 4613211
160-
# https://github.com/mirror/mingw-w64/tarball/4613211c6bfcb220dec9a116a76c5c9aff1939a3
161-
mingw-w64_VERSION := 4613211
162-
mingw-w64_CHECKSUM := 8062c83070a599b3480e1ee128438350d476e5f79d53a2130b6a9502aa9bb6aa
159+
# Update MinGW-w64 to 586baa1
160+
# https://github.com/mingw-w64/mingw-w64/tarball/586baa17bb41dd78addd8cbb6415cfd24d24e925
161+
mingw-w64_VERSION := 586baa1
162+
mingw-w64_CHECKSUM := 24d0892f9f96e998abd610f0ec5194f1c4f60400b887045360992083dc8b549f
163163
mingw-w64_PATCHES := $(realpath $(sort $(wildcard $(dir $(lastword $(MAKEFILE_LIST)))/patches/mingw-w64-[0-9]*.patch)))
164-
mingw-w64_SUBDIR := mirror-mingw-w64-$(mingw-w64_VERSION)
165-
mingw-w64_FILE := mirror-mingw-w64-$(mingw-w64_VERSION).tar.gz
166-
mingw-w64_URL := https://github.com/mirror/mingw-w64/tarball/$(mingw-w64_VERSION)/$(mingw-w64_FILE)
164+
mingw-w64_SUBDIR := mingw-w64-mingw-w64-$(mingw-w64_VERSION)
165+
mingw-w64_FILE := mingw-w64-mingw-w64-$(mingw-w64_VERSION).tar.gz
166+
mingw-w64_URL := https://github.com/mingw-w64/mingw-w64/tarball/$(mingw-w64_VERSION)/$(mingw-w64_FILE)
167167

168168
## Patches that we override with our own
169169

@@ -245,6 +245,22 @@ cfitsio_DEPS := cc zlib
245245

246246
## Override build scripts
247247

248+
# Unexport target specific compiler / linker flags
249+
define gendef_BUILD
250+
$(eval unexport CFLAGS)
251+
$(eval unexport CXXFLAGS)
252+
$(eval unexport LDFLAGS)
253+
254+
cd '$(BUILD_DIR)' && '$(SOURCE_DIR)/mingw-w64-tools/gendef/configure' \
255+
CFLAGS='-Wno-implicit-fallthrough' \
256+
--host='$(BUILD)' \
257+
--build='$(BUILD)' \
258+
--prefix='$(PREFIX)/$(TARGET)' \
259+
--target='$(TARGET)'
260+
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)'
261+
$(MAKE) -C '$(BUILD_DIR)' -j 1 $(INSTALL_STRIP_TOOLCHAIN)
262+
endef
263+
248264
# libasprintf isn't needed, so build with --disable-libasprintf
249265
# this definition is for reference purposes only, we use the
250266
# proxy-libintl plugin instead.
@@ -615,7 +631,7 @@ define cairo_BUILD
615631
--enable-fc \
616632
--enable-ft \
617633
--without-x \
618-
CPPFLAGS="$(if $(BUILD_STATIC),-DCAIRO_WIN32_STATIC_BUILD)" \
634+
$(if $(BUILD_STATIC), CPPFLAGS='-DCAIRO_WIN32_STATIC_BUILD') \
619635
ax_cv_c_float_words_bigendian=no
620636

621637
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' $(MXE_DISABLE_PROGRAMS)

build/package-vipsdev.sh

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -95,16 +95,21 @@ strip=$target.$deps-strip
9595
# Directories
9696
install_dir=$mxe_prefix/$target.$deps
9797
bin_dir=$install_dir/bin
98-
module_dir=$install_dir/bin/vips-modules-$vips_version
98+
module_dir=$install_dir/lib/vips-modules-$vips_version
9999

100100
echo "Copying libvips and dependencies"
101101

102-
# Need to whitelist the Universal C Runtime (CRT) DLLs
103-
# Can't do api-ms-win-crt-*-l1-1-0.dll, unfortunately
104-
whitelist=(api-ms-win-crt-{conio,convert,environment,filesystem,heap,locale,math,multibyte,private,process,runtime,stdio,string,time,utility}-l1-1-0.dll)
105-
106-
# CreateEnvironmentBlock, GetUserProfileDirectoryA, etc.
107-
whitelist+=(userenv.dll)
102+
if [ "$DEBUG" = "true" ]; then
103+
# Whitelist ucrtbased.dll for debug builds
104+
whitelist=(ucrtbased.dll)
105+
else
106+
# Whitelist the API set DLLs
107+
# Can't do api-ms-win-crt-*-l1-1-0.dll, unfortunately
108+
whitelist=(api-ms-win-crt-{conio,convert,environment,filesystem,heap,locale,math,multibyte,private,process,runtime,stdio,string,time,utility}-l1-1-0.dll)
109+
110+
# CreateEnvironmentBlock, GetUserProfileDirectoryA, etc.
111+
whitelist+=(userenv.dll)
112+
fi
108113

109114
# Copy libvips and dependencies with pe-util
110115
binaries=$(peldd $bin_dir/$target_dll --clear-path --path $bin_dir ${whitelist[@]/#/--wlist } --all)
@@ -142,7 +147,7 @@ fi
142147

143148
rm -rf $repackage_dir/share/{aclocal,bash-completion,cmake,config.site,doc,gdb,glib-2.0,gtk-2.0,gtk-doc,installed-tests,man,meson,thumbnailers,xml,zsh}
144149
rm -rf $repackage_dir/include/cairo
145-
rm -rf $repackage_dir/lib/{*.so*,*cairo*,*gdk*,*_too.a,ldscripts,rustlib,xml2Conf.sh}
150+
rm -rf $repackage_dir/lib/{*.so*,*cairo*,*gdk*,*_too.a,vips-modules-*,ldscripts,rustlib,xml2Conf.sh}
146151
rm -rf $repackage_dir/etc/bash_completion.d
147152

148153
find $repackage_dir/lib -name "*.la" -exec rm -f {} \;

0 commit comments

Comments
 (0)