Files
archived-touchHLE/Cargo.toml
RMZeroFour b71b6d78b3 Update plist to v1.8.0 and quick-xml to v0.38.4
In Metal Gear Solid Touch (v1.0.0), the plist crate caused a crash when
English was used, due to an InvalidTrailerObjectOffsetSize error when
reading the en.lproj/Localizable.strings file. It was worked around
by setting Japanese as the default language, since
ja.lproj/Localizable.strings loaded successfully.

The latest version of plist fixes this issue, and thus the workaround
is no longer required.

quick-xml, being both a direct dependency as well as transitive
dependency through plist, was also updated to avoid requiring two
versions of the same crate.

The commit updates the versions in Cargo.toml, removes the Japanese
language default setting, and replaces calls to the unescape method
in quick-xml with its replacement method decode.

Fixes GitHub issue #430.

Change-Id: I9b3dae3e994acc1df8016af69a4d2c250cf3f6ef
2025-11-28 12:46:53 +05:30

77 lines
2.8 KiB
TOML

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
[workspace]
[workspace.package]
version = "0.2.2"
edition = "2021"
license = "MPL-2.0"
authors = ["touchHLE project contributors"]
homepage = "https://touchhle.org/"
[package]
name = "touchHLE"
version = { workspace = true }
edition = { workspace = true }
license = { workspace = true }
authors = { workspace = true }
homepage = { workspace = true }
[lib]
# https://users.rust-lang.org/t/making-both-binary-and-cdylib-from-one-package/29105
crate-type = ["cdylib", "rlib"]
[[bin]]
name = "touchHLE"
path = "src/bin.rs"
[features]
default = ["static"]
static = ["sdl2/bundled", "sdl2/static-link", "touchHLE_openal_soft_wrapper/static"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[workspace.dependencies]
cc = "1.0.83"
cmake = "0.1.49"
gl_generator = "0.14.0"
[dependencies]
caf = "0.1.0"
hound = "3.5.0"
mach_object = "0.1.17"
plist = "1.8.0"
zip = { version = "0.6.4", default-features = false, features = ["deflate"] }
rusttype = "0.9.3"
# While most Symphonia codecs are (likely) unpatented/have freely licenseable
# patents as of 2024, all of the AAC profiles except AAC-LC (likely) have
# active patent claims. The "aac" feature only enables AAC-LC, so it's should
# be ok.
# (The above statements should not understood as legal claims/advice.)
symphonia = { version = "0.5.3", default-features = false, features = ["adpcm", "wav", "aac", "isomp4", "mp3", "alac"] }
quick-xml = "0.38.4"
md5 = "0.7.0"
yore = "1.1.0"
encoding_rs = "0.8.35"
# We currently use a fork of rust-sdl2 because we need a fix for Android builds
# that's not upstream yet.
# The HIDAPI feature is enabled because rust-sdl2 hides the SDL2 sensor features
# behind this, but the actual HIDAPI is not used by touchHLE (see window.rs).
# Note that the submodule in vendor/SDL2/ must use exactly the same revision of
# SDL2 that rust-sdl2 uses, so that the Android JNI interface matches.
sdl2 = { git = "https://github.com/touchHLE/rust-sdl2", tag = "touchHLE-3", features = ["hidapi"] }
sdl2-sys = { git = "https://github.com/touchHLE/rust-sdl2", tag = "touchHLE-3" }
touchHLE_dynarmic_wrapper = { path = "src/cpu/dynarmic_wrapper" }
touchHLE_gl_bindings = { path = "src/gles/gl_bindings" }
touchHLE_openal_soft_wrapper = { path = "src/audio/openal_soft_wrapper" }
touchHLE_pvrt_decompress_wrapper = { path = "src/image/pvrt_decompress_wrapper" }
touchHLE_stb_image_wrapper = { path = "src/image/stb_image_wrapper" }
touchHLE_version = { path = "src/version" }
[build-dependencies]
cargo-license = "0.5.1"
cc = { workspace = true }
cmake = { workspace = true }
gl_generator = { workspace = true }