summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authormohad122112022-01-11 00:53:07 +0300
committermohad122112022-01-11 00:53:07 +0300
commit994a266bff6a3aef2de9482787977c91437e09fb (patch)
treee67d1fa8b0f6885b2b6663143c937559e77327de
parent4ced026add5c8aa23a592c7a7e5c777a77a4a776 (diff)
downloadaur-994a266bff6a3aef2de9482787977c91437e09fb.tar.gz
Big refactors, thanks to ISSOtm
-rw-r--r--.SRCINFO41
-rw-r--r--.gitignore8
-rw-r--r--PKGBUILD158
-rw-r--r--aseprite.desktop14
-rw-r--r--optional-pixman.patch23
-rw-r--r--shared-libarchive.patch74
-rw-r--r--shared-libwebp.patch56
7 files changed, 260 insertions, 114 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f0637ca41ae5..329b0d20d57b 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,40 +1,45 @@
pkgbase = aseprite-skia-bin
pkgdesc = Create animated sprites and pixel art
pkgver = 1.2.30
- pkgrel = 1
- url = http://www.aseprite.org/
+ pkgrel = 2
+ url = https://www.aseprite.org/
arch = x86_64
license = custom
makedepends = cmake
- makedepends = libglvnd
makedepends = ninja
- makedepends = freeglut
- makedepends = harfbuzz-icu
- makedepends = nettle
+ makedepends = git
+ makedepends = python
makedepends = libxi
+ makedepends = pixman
+ makedepends = harfbuzz-icu
depends = cmark
- depends = curl
- depends = libjpeg-turbo
- depends = giflib
+ depends = libcurl.so
+ depends = libgif.so
+ depends = libjpeg.so
depends = zlib
depends = libpng
depends = tinyxml
- depends = pixman
- depends = freetype2
- depends = fontconfig
- depends = libxcursor
+ depends = libfreetype.so=6-64
+ depends = libarchive.so
+ depends = libexpat.so=1-64
+ depends = libharfbuzz.so=0-64
depends = hicolor-icon-theme
+ depends = libgl
+ depends = libfontconfig.so
+ depends = libxcursor
provides = aseprite
- conflicts = aseprite-git
- conflicts = aseprite-gpl
- conflicts = skia-git
conflicts = aseprite
+ noextract = Aseprite-v1.2.30-Source.zip
noextract = Skia-Linux-Release-x64.zip
source = https://github.com/aseprite/aseprite/releases/download/v1.2.30/Aseprite-v1.2.30-Source.zip
source = https://github.com/aseprite/skia/releases/download/m81-b607b32047/Skia-Linux-Release-x64.zip
- source = aseprite.desktop
+ source = shared-libarchive.patch
+ source = shared-libwebp.patch
+ source = optional-pixman.patch
sha256sums = 9f4b098fe2327f2e9d73eb9f2aeebecad63e87ff2cf6fb6eeeee3c0778bb8874
sha256sums = 37cb146efbffb0571a541c48acd7926ed6571cd3aa50be67f8a9b97901e26769
- sha256sums = deaf646a615c79a4672b087562a09c44beef37e7acfc6f5f66a437d4f3b97a25
+ sha256sums = e42675504bfbc17655aef1dca957041095026cd3dd4e6981fb6df0a363948aa7
+ sha256sums = 942aaa70bc67955e83e227f95171d8cf126526a7692074fdeef1a47d287f6242
+ sha256sums = c2d14f9738a96a9db3695c00ac3d14b1312b6a595b151bd56e19422c86517654
pkgname = aseprite-skia-bin
diff --git a/.gitignore b/.gitignore
index 91bec3194be6..50c8aba9b796 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
*
-!.gitignore
-!.SRCINFO
-!aseprite.desktop
-!PKGBUILD \ No newline at end of file
+!/.gitignore
+!/.SRCINFO
+!/PKGBUILD
+!/*.patch
diff --git a/PKGBUILD b/PKGBUILD
index 907a0c50fe7d..4526eaba4090 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,8 @@
# Maintainer: Typology <mohammedkaabi64@gmail.com>
-# Maintainer: Fredrick Brennan <copypaste@kittens.ph>
-# Maintainer: Andrew Bueide <abueide@protonmail.com>
-# Maintainer: rouhannb <rouhannb@gmail.com>
+# Co-Maintainer: Fredrick Brennan <copypaste@kittens.ph>
+# Co-Maintainer: Andrew Bueide <abueide@protonmail.com>
+# Co-Maintainer: rouhannb <rouhannb@gmail.com>
+# Contributor: Eldred Habert <me@eldred.fr>
# Contributor: Wilson E. Alvarez <wilson.e.alvarez1@gmail.com>
# Contributor: Benoit Favre <benoit.favre@gmail.com>
# Contributor: Alexander Rødseth <rodseth@gmail.com>
@@ -9,95 +10,96 @@
pkgname=aseprite-skia-bin
pkgver=1.2.30
-pkgrel=1
+pkgrel=2
pkgdesc='Create animated sprites and pixel art'
arch=('x86_64')
url='http://www.aseprite.org/'
license=('custom')
-depends=('cmark' 'curl' 'libjpeg-turbo' 'giflib' 'zlib' 'libpng' 'tinyxml' 'pixman' 'freetype2'
- 'fontconfig' 'libxcursor' 'hicolor-icon-theme')
-makedepends=('cmake' 'libglvnd' 'ninja' 'freeglut' 'harfbuzz-icu' 'nettle' 'libxi')
-provides=('aseprite')
-conflicts=('aseprite-git' 'aseprite-gpl' 'skia-git' 'aseprite')
-source=("https://github.com/aseprite/aseprite/releases/download/v${pkgver}/Aseprite-v${pkgver}\
--Source.zip"
-'https://github.com/aseprite/skia/releases/download/m81-b607b32047/Skia-Linux-Release-x64.zip'
-'aseprite.desktop'
-)
-noextract=('Skia-Linux-Release-x64.zip')
+url="https://www.aseprite.org/"
+license=('custom')
+depends=(# ~ Aseprite's direct dependencies ~
+ # pixman is not linked to because we use Skia instead
+ # harfbuzz is linked statically because Aseprite expects an older version
+ cmark libcurl.so libgif.so libjpeg.so zlib libpng tinyxml libfreetype.so=6-64 libarchive.so
+ libexpat.so=1-64 libharfbuzz.so=0-64
+ hicolor-icon-theme # For installing Aseprite's icons
+ # ~ Skia deps ~
+ libgl
+ # These two are only reported by Namcap, but don't seem to be direct dependencies?
+ libfontconfig.so libxcursor)
+makedepends=(# "Meta" dependencies
+ cmake ninja git python
+ # Aseprite (including e.g. LAF)
+ libxi pixman
+ # Skia
+ harfbuzz-icu)
+provides=(aseprite)
+conflicts=(aseprite)
+source=("https://github.com/aseprite/aseprite/releases/download/v$pkgver/Aseprite-v$pkgver-Source.zip"
+ # Which branch a given build of Aseprite requires is noted in its `INSTALL.md`
+ "https://github.com/aseprite/skia/releases/download/m81-b607b32047/Skia-Linux-Release-x64.zip"
+ # Based on https://patch-diff.githubusercontent.com/raw/aseprite/aseprite/pull/2535.patch
+ shared-libarchive.patch
+ # Based on https://patch-diff.githubusercontent.com/raw/aseprite/aseprite/pull/2523.patch
+ shared-libwebp.patch
+ optional-pixman.patch)
+noextract=("${source[0]##*/}" "${source[1]##*/}") # Don't extract Aseprite sources or Skia at the root
sha256sums=('9f4b098fe2327f2e9d73eb9f2aeebecad63e87ff2cf6fb6eeeee3c0778bb8874'
'37cb146efbffb0571a541c48acd7926ed6571cd3aa50be67f8a9b97901e26769'
- 'deaf646a615c79a4672b087562a09c44beef37e7acfc6f5f66a437d4f3b97a25')
+ 'e42675504bfbc17655aef1dca957041095026cd3dd4e6981fb6df0a363948aa7'
+ '942aaa70bc67955e83e227f95171d8cf126526a7692074fdeef1a47d287f6242'
+ 'c2d14f9738a96a9db3695c00ac3d14b1312b6a595b151bd56e19422c86517654')
prepare() {
- mkdir --verbose "${srcdir}/skia"
- bsdtar --extract --verbose --directory "${srcdir}/skia" --file 'Skia-Linux-Release-x64.zip'
+ mkdir -p aseprite skia
+ bsdtar -xf ${noextract[0]} -C aseprite
+ bsdtar -xf ${noextract[1]} -C skia
+
+ # Allow using shared libarchive (the bundled version prevents using the `None` build type...)
+ env -C aseprite patch -tp1 <shared-libarchive.patch
+ # Allow using shared libarchive (breaks builds otherwise...)
+ env -C aseprite patch -tp1 <shared-libwebp.patch
+ # Skip the build-time dependency on Pixman since it doesn't get used in the end
+ env -C aseprite patch -tp1 <optional-pixman.patch
}
build() {
- cd "${srcdir}"
-
- mkdir --parents --verbose build && cd build
-
- cmake \
- -DUSE_SHARED_CURL=ON \
- -DUSE_SHARED_JPEGLIB=ON \
- -DUSE_SHARED_GIFLIB=ON \
- -DUSE_SHARED_ZLIB=ON \
- -DUSE_SHARED_LIBPNG=ON \
- -DUSE_SHARED_TINYXML=ON \
- -DUSE_SHARED_PIXMAN=ON \
- -DUSE_SHARED_FREETYPE=ON \
- -DUSE_SHARED_HARFBUZZ=ON \
- -DENABLE_UPDATER=OFF \
- -DWITH_WEBP_SUPPORT=ON \
- -DCMAKE_BUILD_TYPE=RelWithDebInfo \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLAF_BACKEND=skia \
- -DSKIA_DIR="${srcdir}/skia" \
- -DSKIA_LIBRARY_DIR="${srcdir}/skia/out/Release-x64" \
- -DSKIA_LIBRARY="${srcdir}/skia/out/Release-x64/libskia.a" \
- -DLAF_WITH_TESTS=OFF \
- -DLAF_WITH_EXAMPLES=OFF \
- -G Ninja \
- ..
-
- # Workaround for the multiple definition error (https://github.com/aseprite/aseprite/issues/2387#issuecomment-697334354)
- var=$(ninja aseprite | tee /dev/tty)
- var=$(echo $var | grep -o -P '(?<=&&).*(?=&&)')
- var=${var/"lib/libwebp.a"}
- printf "\n\n:: Executing the linking command. Please wait...\n\n"
- $var
-
+ local _skiadir="$srcdir/skia/out/Release-x64"
+ # Suppress install messages since we install to a temporary area; `install -v` will do the job
+ cmake -S aseprite -B build -G Ninja -Wno-dev -DCMAKE_INSTALL_MESSAGE=NEVER -DCMAKE_BUILD_TYPE=None \
+-DENABLE_UPDATER=NO -DLAF_WITH_EXAMPLES=OFF -DLAF_WITH_TESTS=OFF -DLAF_BACKEND=skia \
+-DSKIA_DIR="$srcdir/skia" -DSKIA_LIBRARY_DIR="$_skiadir" -DSKIA_LIBRARY="$_skiadir/libskia.a" \
+-DUSE_SHARED_{CMARK,CURL,GIFLIB,JPEGLIB,ZLIB,LIBPNG,TINYXML,PIXMAN,FREETYPE,HARFBUZZ,LIBARCHIVE,WEBP}=YES \
+-DWEBP_INCLUDE_DIR="$srcdir/skia/third_party/externals/libwebp/src" \
+-DWEBP{,MUX,DEMUX}_LIBRARY= # Use Skia's already-bundled WebP library (link to no additional libs)
+ ninja -C build
}
package() {
- cd "${srcdir}"/build
-
- install -D --verbose 'bin/aseprite' "${pkgdir}/usr/bin/aseprite"
-
- # Aseprite, by default, doesn't install a few files on its own. So, they are installed manually.
-
- install --directory --verbose "${pkgdir}/usr/share/aseprite/data"
- cp --recursive --verbose 'bin/data' "${pkgdir}/usr/share/aseprite"
-
- install --directory --verbose "${pkgdir}/usr/share/doc/aseprite"
- cp --recursive --verbose '../docs' "${pkgdir}/usr/share/doc/aseprite"
- install --mode=644 --verbose 'bin/data/EULA.txt' "${pkgdir}/usr/share/doc/aseprite"
- install --mode=644 --verbose '../README.md' "${pkgdir}/usr/share/doc/aseprite"
-
- install -D --mode=644 --verbose '../aseprite.desktop' \
- "${pkgdir}/usr/share/applications/aseprite.desktop"
-
- for _size in 32 48 64
- do
- install -D --mode=644 --verbose "../data/icons/ase${_size}.png" \
- "${pkgdir}/usr/share/icons/hicolor/${_size}x${_size}/apps/aseprite.png"
- done
-
- install -D --mode=644 --verbose --target-directory "${pkgdir}/usr/share/licenses/${pkgname}" \
- 'bin/data/EULA.txt'
- install --mode=644 --verbose '../docs/LICENSES.md' "${pkgdir}/usr/share/licenses/${pkgname}"
+ # Now the fun part: components of e.g. `libwebp` get installed as well,
+ # since we've had to compile it. But we don't want them.
+ # So, install normally, and then cherry-pick Aseprite's files out of that.
+ # Use a whitelist to prefer installing not enough (breakage goes noticed),
+ # instead of too much (cruft rarely goes noticed). Also hope that it doesn't break :)
+ cmake --install build --prefix=staging --strip
+
+ # Install the binary and its `.desktop` file
+ install -vDm 755 staging/bin/aseprite "$pkgdir/usr/bin/aseprite"
+ install -vDm 644 aseprite/src/desktop/linux/aseprite.desktop "$pkgdir/usr/share/applications/aseprite.desktop"
+ # Install the icons in the correct directory (which is not the default)
+ local _size
+ for _size in 16 32 48 64 128 256; do
+ # The installed icon's name is taken from the `.desktop` file
+ install -vDm 644 staging/share/aseprite/data/icons/ase$_size.png "$pkgdir/usr/share/icons/hicolor/${_size}x$_size/apps/aseprite.png"
+ done
+ # Delete the icons to avoid copying them in two places (they aren't used by Aseprite itself)
+ rm -rf staging/share/aseprite/data/icons
+ # Install all of the program's data
+ cp -vrt "$pkgdir/usr/share" staging/share/aseprite
+ # Also install the licenses
+ install -vDm 644 -t "$pkgdir/usr/share/licenses/$pkgname" aseprite/{EULA.txt,docs/LICENSES.md}
+ # Copy the font's license, but leave it in the font directory as well (probably doesn't hurt)
+ install -vm 644 aseprite/data/fonts/LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/font.txt"
}
# vim:set ts=2 sw=2 et:
diff --git a/aseprite.desktop b/aseprite.desktop
deleted file mode 100644
index 306b8df12c70..000000000000
--- a/aseprite.desktop
+++ /dev/null
@@ -1,14 +0,0 @@
-[Desktop Entry]
-Type=Application
-Encoding=UTF-8
-Name=Aseprite
-GenericName=Sprite Editor
-Comment=Animated sprite editor & pixel art tool
-Icon=aseprite
-Categories=Graphics;2DGraphics;RasterGraphics
-Exec=aseprite %U
-TryExec=aseprite
-Terminal=false
-StartupNotify=false
-StartupWMClass=Aseprite
-MimeType=image/bmp;image/gif;image/jpeg;image/png;image/x-pcx;image/x-tga;image/vnd.microsoft.icon;video/x-flic;image/webp;image/x-aseprite;
diff --git a/optional-pixman.patch b/optional-pixman.patch
new file mode 100644
index 000000000000..bf65e2cf047d
--- /dev/null
+++ b/optional-pixman.patch
@@ -0,0 +1,23 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f16f09660d..40065905d3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -271,16 +271,18 @@
+ include_directories(${TINYXML_INCLUDE_DIR})
+
+ # pixman
++if(NOT LAF_BACKEND STREQUAL "skia")
+ if(USE_SHARED_PIXMAN)
+ find_library(PIXMAN_LIBRARY NAMES pixman pixman-1)
+ find_path(PIXMAN_INCLUDE_DIR NAMES pixman.h PATH_SUFFIXES pixman-1)
+ else()
+ set(PIXMAN_LIBRARY pixman)
+ set(PIXMAN_INCLUDE_DIR
+ ${PIXMAN_DIR}/pixman
+ ${CMAKE_BINARY_DIR}) # For pixman-version.h
+ endif()
+ include_directories(${PIXMAN_INCLUDE_DIR})
++endif()
+
+ # freetype
+ if(USE_SHARED_FREETYPE)
diff --git a/shared-libarchive.patch b/shared-libarchive.patch
new file mode 100644
index 000000000000..481ff374175a
--- /dev/null
+++ b/shared-libarchive.patch
@@ -0,0 +1,74 @@
+From cf84155eb143d821963e8fdf18781dfa164eac9b Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Fri, 9 Oct 2020 02:18:36 +0300
+Subject: [PATCH] Make LibArchive as shared library dependency
+
+---
+ CMakeLists.txt | 11 +++++++++++
+ src/app/CMakeLists.txt | 2 +-
+ third_party/CMakeLists.txt | 22 ++++++++++++----------
+ 3 files changed, 24 insertions(+), 11 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9cb5a2cdfb..9d95936f36 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -60,6 +60,7 @@ option(USE_SHARED_CURL "Use your installed copy of curl" off)
+ option(USE_SHARED_GIFLIB "Use your installed copy of giflib" off)
+ option(USE_SHARED_JPEGLIB "Use your installed copy of jpeglib" off)
+ option(USE_SHARED_ZLIB "Use your installed copy of zlib" off)
++option(USE_SHARED_LIBARCHIVE "Use your installed copy of libarchive" off)
+ option(USE_SHARED_LIBPNG "Use your installed copy of libpng" off)
+ option(USE_SHARED_TINYXML "Use your installed copy of tinyxml" off)
+ option(USE_SHARED_PIXMAN "Use your installed copy of pixman" off)
+@@ -200,6 +201,16 @@ else()
+ endif()
+ include_directories(${ZLIB_INCLUDE_DIRS})
+
++# libarchive
++if(USE_SHARED_LIBARCHIVE)
++ find_package(LibArchive REQUIRED)
++else()
++ set(LibArchive_FOUND)
++ set(LibArchive_LIBRARIES archive_static)
++ set(LibArchive_INCLUDE_DIRS $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libarchive/libarchive>)
++endif()
++include_directories(${LibArchive_INCLUDE_DIRS})
++
+ # libpng
+ if(USE_SHARED_LIBPNG)
+ find_package(PNG REQUIRED)
+diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt
+index e1e3bc1ae3..4a37838e95 100644
+--- a/src/app/CMakeLists.txt
++++ b/src/app/CMakeLists.txt
+@@ -651,8 +651,8 @@ target_link_libraries(app-lib
+ ${ZLIB_LIBRARIES}
+ ${FREETYPE_LIBRARIES}
+ ${HARFBUZZ_LIBRARIES}
++ ${LibArchive_LIBRARIES}
+ json11
+- archive_static
+ fmt
+ tinyexpr)
+
+diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt
+index ffd1c0cfcd..4839d4097c 100644
+--- a/third_party/CMakeLists.txt.orig
++++ b/third_party/CMakeLists.txt
+@@ -110,6 +110,7 @@ endif()
+ add_subdirectory(json11)
+
+ # libarchive
++if(NOT USE_SHARED_LIBARCHIVE)
+ set(ENABLE_WERROR OFF CACHE BOOL "Treat warnings as errors - default is ON for Debug, OFF otherwise.")
+ set(ENABLE_TEST OFF CACHE BOOL "Enable unit and regression tests")
+ set(ENABLE_COVERAGE OFF CACHE BOOL "Enable code coverage (GCC only, automatically sets ENABLE_TEST to ON)")
+@@ -123,6 +124,7 @@ set(ENABLE_CPIO OFF CACHE BOOL "Enable cpio building")
+ add_subdirectory(libarchive)
+ target_include_directories(archive_static INTERFACE
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libarchive/libarchive>)
++endif()
+
+ # benchmark
+ if(ENABLE_BENCHMARKS)
diff --git a/shared-libwebp.patch b/shared-libwebp.patch
new file mode 100644
index 000000000000..a4c3234fd000
--- /dev/null
+++ b/shared-libwebp.patch
@@ -0,0 +1,56 @@
+From ca9e20a87be6dcc8d9b97841535b2320d2eb2f91 Mon Sep 17 00:00:00 2001
+From: Drauthius <albert@diserholt.com>
+Date: Sat, 26 Sep 2020 10:40:13 +0200
+Subject: [PATCH] Shared webp library
+
+Making optional linking with shared system webp library with
+-DUSE_SHARED_WEBP option.
+---
+ CMakeLists.txt | 12 +++++++++---
+ third_party/CMakeLists.txt | 2 +-
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f16f09660d..40065905d3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -66,6 +66,7 @@ option(USE_SHARED_TINYXML "Use your installed copy of tinyxml" off)
+ option(USE_SHARED_PIXMAN "Use your installed copy of pixman" off)
+ option(USE_SHARED_FREETYPE "Use shared FreeType library" off)
+ option(USE_SHARED_HARFBUZZ "Use shared HarfBuzz library" off)
++option(USE_SHARED_WEBP "Use your installed copy of webp" off)
+ option(ENABLE_ASEPRITE_EXE "Compile main Aseprite executable" on)
+ option(ENABLE_MEMLEAK "Enable memory-leaks detector (only for developers)" off)
+ option(ENABLE_NEWS "Enable the news in Home tab" on)
+@@ -229,8 +230,16 @@ add_definitions(-DPNG_NO_MMX_CODE) # Do not use MMX optimizations in PNG code
+
+ # libwebp
+ if(WITH_WEBP_SUPPORT)
+- set(WEBP_LIBRARIES webp webpdemux libwebpmux)
+- set(WEBP_INCLUDE_DIR ${LIBWEBP_DIR}/src)
++ if(USE_SHARED_WEBP)
++ find_library(WEBP_LIBRARY NAMES webp)
++ find_library(WEBPDEMUX_LIBRARY NAMES webpdemux)
++ find_library(WEBPMUX_LIBRARY NAMES webpmux)
++ set(WEBP_LIBRARIES ${WEBP_LIBRARY} ${WEBPDEMUX_LIBRARY} ${WEBPMUX_LIBRARY})
++ find_path(WEBP_INCLUDE_DIR NAMES decode.h PATH_SUFFIXES webp)
++ else()
++ set(WEBP_LIBRARIES webp webpdemux libwebpmux)
++ set(WEBP_INCLUDE_DIR ${LIBWEBP_DIR}/src)
++ endif()
+ include_directories(${WEBP_INCLUDE_DIR})
+ endif()
+
+diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt
+index 4839d4097c..e8c3e83cbc 100644
+--- a/third_party/CMakeLists.txt
++++ b/third_party/CMakeLists.txt
+@@ -32,7 +32,7 @@ if(NOT USE_SHARED_GIFLIB)
+ add_subdirectory(giflib)
+ endif()
+
+-if(WITH_WEBP_SUPPORT)
++if(WITH_WEBP_SUPPORT AND NOT USE_SHARED_WEBP)
+ set(WEBP_BUILD_EXTRAS OFF CACHE BOOL "Build extras.")
+ add_subdirectory(libwebp)
+ endif()