# Ports (components) are taken from various vcpkg commits (https://github.com/microsoft/vcpkg).
#
# NOTE: Modifying a commit here will not trigger a rebuild of that port, leading to build failures.
#       In order to test a different commit for ports, there are 2 possible approaches:
#       - start with a new SDK clone, apply changes here, and only then attempt to build, OR
#       - for every affected component, first clean it manually from vcpkg
#         (i.e. `vcpkg remove --triplet x64-windows-mega libraw`
#         vcpkg is usually at 3rdparty_sdk/vcpkg/vcpkg)

# Baseline:
# 7476f0d4e77d3333fbb249657df8251c28c4faae from 2023.09.20
#
# Newer versions:
# a664e41ee50b61adcc90a44a761eca139a4b7dd7 from 2024.03.11
# a42af01b72c28a8e1d7b48107b33e4f286a55ef6 from 2023.11.20
# c67a3059bbdb19799d402085e7323f71e7d68656 from 2023.09.26

# Common dependencies
vcpkg-cmake-config/a664e41ee50b61adcc90a44a761eca139a4b7dd7
vcpkg-cmake/a664e41ee50b61adcc90a44a761eca139a4b7dd7
pkgconf/a664e41ee50b61adcc90a44a761eca139a4b7dd7
vcpkg-pkgconfig-get-modules/a664e41ee50b61adcc90a44a761eca139a4b7dd7
vcpkg-tool-meson/a664e41ee50b61adcc90a44a761eca139a4b7dd7
vcpkg-cmake-get-vars/a664e41ee50b61adcc90a44a761eca139a4b7dd7

# direct core dependencies of the SDK
c-ares/7476f0d4e77d3333fbb249657df8251c28c4faae all:on ios:off
cryptopp/a42af01b72c28a8e1d7b48107b33e4f286a55ef6
curl/a42af01b72c28a8e1d7b48107b33e4f286a55ef6 all:on ios:off
curl[core,sectransp]/7375bb408f2278d2f1875c259beef93332697ba7 all:off ios:curl-for-ios.patch
libsodium/7476f0d4e77d3333fbb249657df8251c28c4faae all:on ios:libsodium-ios.patch
openssl/7476f0d4e77d3333fbb249657df8251c28c4faae ios:off osx:off

# needed by external projects which still rely on SDK to fetch and build it; SDK no longer uses PCRE
# this is the minimum version after PCRE's ftp server switched
pcre/d6bd10b9af6f6197711222a0ac827e52e0247e30 all:off linux:on

readline-unix/7476f0d4e77d3333fbb249657df8251c28c4faae all:off osx:on
ncurses/7476f0d4e77d3333fbb249657df8251c28c4faae all:off osx:on
sqlite3/7476f0d4e77d3333fbb249657df8251c28c4faae
zlib/7476f0d4e77d3333fbb249657df8251c28c4faae

# needed by the SDK if enabling serving/streaming (outgoing) files via http/s or include a ftp server
libuv/293f090a9be5a88a2a77838c6346d5ef9d3df81b all:off windows:on
libuv/7476f0d4e77d3333fbb249657df8251c28c4faae all:on windows:off

# mediainfo, customized with constrained functionality (determine media properties such as track length, codec, etc)
libmediainfo/23.4
tinyxml2/7476f0d4e77d3333fbb249657df8251c28c4faae
libzen/7476f0d4e77d3333fbb249657df8251c28c4faae

# ffmpeg (video preview/thumbnail generation)
ffmpeg/c67a3059bbdb19799d402085e7323f71e7d68656 all:on ios:off osx:ffmpeg-osx-linker.patch

# freeimage and its dependencies (image preview/thumbnail generation)
freeimage/7476f0d4e77d3333fbb249657df8251c28c4faae osx:freeimage-bool-typedef-xcode-compiler.patch
libpng/7476f0d4e77d3333fbb249657df8251c28c4faae
libjpeg-turbo/7476f0d4e77d3333fbb249657df8251c28c4faae
tiff/7476f0d4e77d3333fbb249657df8251c28c4faae
openjpeg/7476f0d4e77d3333fbb249657df8251c28c4faae
libwebp/7476f0d4e77d3333fbb249657df8251c28c4faae
libraw/7476f0d4e77d3333fbb249657df8251c28c4faae
jxrlib/7476f0d4e77d3333fbb249657df8251c28c4faae
openexr/7476f0d4e77d3333fbb249657df8251c28c4faae
imath/7476f0d4e77d3333fbb249657df8251c28c4faae
jasper/7476f0d4e77d3333fbb249657df8251c28c4faae all:jasper-no-freeglut.patch
liblzma/7476f0d4e77d3333fbb249657df8251c28c4faae
egl-registry/7476f0d4e77d3333fbb249657df8251c28c4faae
opengl-registry/7476f0d4e77d3333fbb249657df8251c28c4faae
opengl/7476f0d4e77d3333fbb249657df8251c28c4faae
#freeglut (cross platform window manager) not needed; problematic on some platforms, pulling in many, many dependencies

# pdfium libraries, specific version for build stability  (preview/thumbnail generation for pdfs)
# no v8 (javascript execution) etc
pdfium/5247
freetype[core,bzip2,png,zlib]/7476f0d4e77d3333fbb249657df8251c28c4faae

# dependencies of pdfium
icu/7476f0d4e77d3333fbb249657df8251c28c4faae
lcms/7476f0d4e77d3333fbb249657df8251c28c4faae
#libjpeg-turbo already added above for freeimage
#openjpeg already added above for freeimage
bzip2/7476f0d4e77d3333fbb249657df8251c28c4faae
#libpng already added above for freeimage

#for megachat, not needed by sdk itself
#libwebsockets/2.4.2

## qt5 and its dependencies windows only - posibly for mega chat
## linux depends on fontconfig and thus freetype and conflicts with pdfium-freetype
# libpq/6185aa76504a5025f36754324abf307cc776f3da
# pcre2/6185aa76504a5025f36754324abf307cc776f3da
# egl-registry/6185aa76504a5025f36754324abf307cc776f3da
# double-conversion/6185aa76504a5025f36754324abf307cc776f3da
# freeglut/6185aa76504a5025f36754324abf307cc776f3da
# qt5-base/6185aa76504a5025f36754324abf307cc776f3da all:qt5-base.patch
# qt5-declarative/6185aa76504a5025f36754324abf307cc776f3da
# qt5-svg/6185aa76504a5025f36754324abf307cc776f3da
# qt5-imageformats/6185aa76504a5025f36754324abf307cc776f3da
# qt5-activeqt/6185aa76504a5025f36754324abf307cc776f3da all:off windows:on
# qt5-tools/6185aa76504a5025f36754324abf307cc776f3da
# atlmfc/6185aa76504a5025f36754324abf307cc776f3da all:off windows:on
# qt5-multimedia/6185aa76504a5025f36754324abf307cc776f3da all:off windows:on
# qt5-winextras/6185aa76504a5025f36754324abf307cc776f3da all:off windows:on

# tests and tools
gtest/c303dd024e2dc03a0665ddffbb12a1077933e649 all:gtest-warnings-are-not-errors.patch

# previously listed - possibly for mega chat,sync,cmd.  Re-add with comment if the SDK alone needs them
#x264/c303dd024e2dc03a0665ddffbb12a1077933e649
#giflib/c303dd024e2dc03a0665ddffbb12a1077933e649
#sdl1/c303dd024e2dc03a0665ddffbb12a1077933e649
#mbedtls/c303dd024e2dc03a0665ddffbb12a1077933e649
#nghttp2/c303dd024e2dc03a0665ddffbb12a1077933e649
#opencl/c303dd024e2dc03a0665ddffbb12a1077933e649
#libvpx/c303dd024e2dc03a0665ddffbb12a1077933e649
#libevent/c303dd024e2dc03a0665ddffbb12a1077933e649
