summaryrefslogtreecommitdiff
path: root/app-emulation/ruffle/ruffle-0_p20230525.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/ruffle/ruffle-0_p20230525.ebuild')
-rw-r--r--app-emulation/ruffle/ruffle-0_p20230525.ebuild624
1 files changed, 624 insertions, 0 deletions
diff --git a/app-emulation/ruffle/ruffle-0_p20230525.ebuild b/app-emulation/ruffle/ruffle-0_p20230525.ebuild
new file mode 100644
index 000000000000..58175f8d97f0
--- /dev/null
+++ b/app-emulation/ruffle/ruffle-0_p20230525.ebuild
@@ -0,0 +1,624 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ Inflector-0.11.4
+ ab_glyph-0.2.21
+ ab_glyph_rasterizer-0.1.8
+ addr2line-0.19.0
+ adler-1.0.2
+ adler32-1.2.0
+ ahash-0.7.6
+ ahash-0.8.3
+ aho-corasick-0.7.20
+ aho-corasick-1.0.1
+ aliasable-0.1.3
+ alsa-0.7.0
+ alsa-sys-0.3.1
+ android-activity-0.4.1
+ android-properties-0.2.2
+ android_system_properties-0.1.5
+ anstream-0.3.2
+ anstyle-1.0.0
+ anstyle-parse-0.2.0
+ anstyle-query-1.0.0
+ anstyle-wincon-1.0.1
+ anyhow-1.0.71
+ approx-0.5.1
+ arboard-3.2.0
+ arc-swap-1.6.0
+ arrayref-0.3.7
+ arrayvec-0.7.2
+ ash-0.37.2+1.3.238
+ async-channel-1.8.0
+ async-io-1.13.0
+ async-lock-2.7.0
+ atk-sys-0.16.0
+ atomic_refcell-0.1.10
+ atty-0.2.14
+ autocfg-1.1.0
+ backtrace-0.3.67
+ base64-0.13.1
+ base64-0.21.1
+ bindgen-0.64.0
+ bit-set-0.5.3
+ bit-vec-0.6.3
+ bitflags-1.3.2
+ bitflags-2.3.1
+ bitstream-io-1.6.0
+ block-0.1.6
+ block-buffer-0.10.4
+ block-sys-0.1.0-beta.1
+ block2-0.2.0-alpha.6
+ bstr-1.5.0
+ bumpalo-3.12.2
+ bytemuck-1.13.1
+ bytemuck_derive-1.4.1
+ byteorder-1.4.3
+ bytes-1.4.0
+ cairo-sys-rs-0.16.3
+ calloop-0.10.5
+ castaway-0.1.2
+ cc-1.0.79
+ cesu8-1.1.0
+ cexpr-0.6.0
+ cfg-expr-0.15.1
+ cfg-if-0.1.10
+ cfg-if-1.0.0
+ cfg_aliases-0.1.1
+ chrono-0.4.24
+ clang-sys-1.6.1
+ clap-4.3.0
+ clap_builder-4.3.0
+ clap_derive-4.3.0
+ clap_lex-0.5.0
+ clipboard-win-4.5.0
+ codespan-reporting-0.11.1
+ color_quant-1.1.0
+ colorchoice-1.0.0
+ colored-2.0.0
+ com-rs-0.2.1
+ combine-4.6.6
+ concurrent-queue-2.2.0
+ console-0.15.7
+ console_error_panic_hook-0.1.7
+ convert_case-0.6.0
+ cookie-factory-0.3.2
+ core-foundation-0.9.3
+ core-foundation-sys-0.6.2
+ core-foundation-sys-0.8.4
+ core-graphics-0.22.3
+ core-graphics-types-0.1.1
+ coreaudio-rs-0.11.2
+ coreaudio-sys-0.2.12
+ cpal-0.15.2
+ cpufeatures-0.2.7
+ crc-3.0.1
+ crc-catalog-2.2.0
+ crc32fast-1.3.2
+ crossbeam-channel-0.5.8
+ crossbeam-deque-0.8.3
+ crossbeam-epoch-0.9.14
+ crossbeam-utils-0.8.15
+ crypto-common-0.1.6
+ csv-1.2.1
+ csv-core-0.1.10
+ ctor-0.1.26
+ curl-0.4.44
+ curl-sys-0.4.62+curl-8.1.0
+ d3d12-0.6.0
+ darling-0.20.1
+ darling_core-0.20.1
+ darling_macro-0.20.1
+ dasp_sample-0.11.0
+ data-encoding-2.4.0
+ derive-try-from-primitive-1.0.0
+ diff-0.1.13
+ digest-0.10.7
+ dirs-5.0.1
+ dirs-sys-0.4.1
+ dispatch-0.2.0
+ displaydoc-0.2.4
+ dlib-0.5.0
+ doc-comment-0.3.3
+ downcast-rs-1.2.0
+ ecolor-0.22.0
+ egui-0.22.0
+ egui-wgpu-0.22.0
+ egui-winit-0.22.0
+ either-1.8.1
+ emath-0.22.0
+ embed-resource-2.1.1
+ encode_unicode-0.3.6
+ encoding_rs-0.8.32
+ enum-map-2.5.0
+ enum-map-derive-0.11.0
+ enumset-1.1.2
+ enumset_derive-0.8.1
+ env_logger-0.10.0
+ epaint-0.22.0
+ errno-0.3.1
+ errno-dragonfly-0.1.2
+ error-code-2.3.1
+ euclid-0.22.9
+ event-listener-2.5.3
+ fastrand-1.9.0
+ fdeflate-0.3.0
+ flate2-1.0.26
+ float_next_after-0.1.5
+ fluent-0.16.0
+ fluent-bundle-0.15.2
+ fluent-langneg-0.13.0
+ fluent-syntax-0.11.0
+ fluent-template-macros-0.8.0
+ fluent-templates-0.8.0
+ flume-0.10.14
+ fnv-1.0.7
+ foreign-types-0.3.2
+ foreign-types-shared-0.1.1
+ form_urlencoded-1.1.0
+ futures-0.3.28
+ futures-channel-0.3.28
+ futures-core-0.3.28
+ futures-executor-0.3.28
+ futures-io-0.3.28
+ futures-lite-1.13.0
+ futures-macro-0.3.28
+ futures-sink-0.3.28
+ futures-task-0.3.28
+ futures-util-0.3.28
+ gdk-pixbuf-sys-0.16.3
+ gdk-sys-0.16.0
+ generational-arena-0.2.8
+ generator-0.7.4
+ generic-array-0.14.7
+ gethostname-0.2.3
+ getrandom-0.2.9
+ gif-0.12.0
+ gimli-0.27.2
+ gio-sys-0.16.3
+ glib-sys-0.16.3
+ glob-0.3.1
+ globset-0.4.10
+ glow-0.12.1
+ gobject-sys-0.16.3
+ gpu-alloc-0.5.4
+ gpu-alloc-types-0.2.0
+ gpu-allocator-0.22.0
+ gpu-descriptor-0.2.3
+ gpu-descriptor-types-0.1.1
+ gtk-sys-0.16.0
+ hashbrown-0.12.3
+ hashbrown-0.13.2
+ hassle-rs-0.10.0
+ heck-0.4.1
+ hermit-abi-0.1.19
+ hermit-abi-0.2.6
+ hermit-abi-0.3.1
+ hexf-parse-0.2.1
+ home-0.5.5
+ http-0.2.9
+ humantime-2.1.0
+ iana-time-zone-0.1.56
+ iana-time-zone-haiku-0.1.2
+ ident_case-1.0.1
+ idna-0.3.0
+ ignore-0.4.20
+ image-0.24.6
+ indexmap-1.9.3
+ indicatif-0.17.3
+ insta-1.29.0
+ instant-0.1.12
+ intl-memoizer-0.5.1
+ intl_pluralrules-7.0.2
+ io-lifetimes-1.0.10
+ is-terminal-0.4.7
+ isahc-1.7.2
+ itoa-1.0.6
+ jni-0.19.0
+ jni-0.20.0
+ jni-0.21.1
+ jni-sys-0.3.0
+ jobserver-0.1.26
+ jpeg-decoder-0.3.0
+ js-sys-0.3.63
+ khronos-egl-4.1.0
+ lazy_static-1.4.0
+ lazycell-1.3.0
+ libc-0.2.144
+ libflate-1.4.0
+ libflate_lz77-1.2.0
+ libloading-0.7.4
+ libloading-0.8.0
+ libm-0.2.7
+ libnghttp2-sys-0.1.7+1.45.0
+ libtest-mimic-0.6.0
+ libz-sys-1.1.9
+ linked-hash-map-0.5.6
+ linkme-0.3.9
+ linkme-impl-0.3.9
+ linux-raw-sys-0.3.8
+ lock_api-0.4.9
+ log-0.4.17
+ loom-0.5.6
+ lyon-1.0.1
+ lyon_algorithms-1.0.3
+ lyon_geom-1.0.4
+ lyon_path-1.0.3
+ lyon_tessellation-1.0.10
+ lzma-rs-0.3.0
+ mach2-0.4.1
+ malloc_buf-0.0.6
+ matchers-0.1.0
+ memchr-2.5.0
+ memmap2-0.5.10
+ memoffset-0.6.5
+ memoffset-0.8.0
+ metal-0.24.0
+ mime-0.3.17
+ minimal-lexical-0.2.1
+ miniz_oxide-0.6.2
+ miniz_oxide-0.7.1
+ mio-0.8.6
+ naga-0.12.1
+ naga_oil-0.7.0
+ ndk-0.7.0
+ ndk-context-0.1.1
+ ndk-sys-0.4.1+23.1.7779620
+ nix-0.24.3
+ nix-0.25.1
+ nohash-hasher-0.2.0
+ nom-7.1.3
+ nu-ansi-term-0.46.0
+ num-bigint-0.4.3
+ num-complex-0.4.3
+ num-derive-0.3.3
+ num-integer-0.1.45
+ num-rational-0.4.1
+ num-traits-0.2.15
+ num_cpus-1.15.0
+ num_enum-0.5.11
+ num_enum_derive-0.5.11
+ number_prefix-0.4.0
+ objc-0.2.7
+ objc-foundation-0.1.1
+ objc-sys-0.2.0-beta.2
+ objc2-0.3.0-beta.3.patch-leaks.3
+ objc2-encode-2.0.0-pre.2
+ objc_exception-0.1.2
+ objc_id-0.1.1
+ object-0.30.3
+ oboe-0.5.0
+ oboe-sys-0.5.0
+ once_cell-1.17.1
+ openssl-probe-0.1.5
+ openssl-sys-0.9.87
+ option-ext-0.2.0
+ orbclient-0.3.45
+ os_info-3.7.0
+ ouroboros-0.15.6
+ ouroboros_macro-0.15.6
+ output_vt100-0.1.3
+ overload-0.1.1
+ owned_ttf_parser-0.19.0
+ pango-sys-0.16.3
+ parking-2.1.0
+ parking_lot-0.12.1
+ parking_lot_core-0.9.7
+ path-slash-0.2.1
+ peeking_take_while-0.1.2
+ percent-encoding-2.2.0
+ pin-project-1.1.0
+ pin-project-internal-1.1.0
+ pin-project-lite-0.2.9
+ pin-utils-0.1.0
+ pkg-config-0.3.27
+ png-0.17.8
+ polling-2.8.0
+ portable-atomic-0.3.20
+ portable-atomic-1.3.2
+ pp-rs-0.2.1
+ ppv-lite86-0.2.17
+ pretty_assertions-1.3.0
+ primal-check-0.3.3
+ proc-macro-crate-1.3.1
+ proc-macro-error-1.0.4
+ proc-macro-error-attr-1.0.4
+ proc-macro-hack-0.5.20+deprecated
+ proc-macro2-1.0.58
+ profiling-1.0.8
+ profiling-procmacros-1.0.8
+ quick-xml-0.28.2
+ quote-1.0.27
+ rand-0.8.5
+ rand_chacha-0.3.1
+ rand_core-0.6.4
+ range-alloc-0.1.3
+ raw-window-handle-0.5.2
+ rayon-1.7.0
+ rayon-core-1.11.0
+ realfft-3.2.0
+ redox_syscall-0.2.16
+ redox_syscall-0.3.5
+ redox_users-0.4.3
+ regex-1.8.1
+ regex-automata-0.1.10
+ regex-syntax-0.6.29
+ regex-syntax-0.7.1
+ regress-0.6.0
+ renderdoc-sys-1.0.0
+ rfd-0.11.4
+ rle-decode-fast-1.0.3
+ ron-0.8.0
+ rustc-demangle-0.1.23
+ rustc-hash-1.1.0
+ rustc_version-0.4.0
+ rustdct-0.7.1
+ rustfft-6.1.0
+ rustix-0.37.19
+ rustversion-1.0.12
+ ryu-1.0.13
+ safe_arch-0.6.0
+ same-file-1.0.6
+ schannel-0.1.21
+ scoped-tls-1.0.1
+ scopeguard-1.1.0
+ sctk-adwaita-0.5.4
+ self_cell-0.10.2
+ semver-1.0.17
+ serde-1.0.163
+ serde-wasm-bindgen-0.5.0
+ serde-xml-rs-0.6.0
+ serde_derive-1.0.163
+ serde_json-1.0.96
+ serde_spanned-0.6.2
+ sha2-0.10.6
+ sharded-slab-0.1.4
+ shlex-1.1.0
+ simd-adler32-0.3.5
+ similar-2.2.1
+ simple_asn1-0.6.2
+ slab-0.4.8
+ slotmap-1.0.6
+ sluice-0.5.5
+ smallvec-1.10.0
+ smithay-client-toolkit-0.16.0
+ smithay-clipboard-0.6.6
+ snafu-0.7.4
+ snafu-derive-0.7.4
+ socket2-0.4.9
+ spin-0.9.8
+ spirv-0.2.0+1.5.4
+ sptr-0.3.2
+ static_assertions-1.1.0
+ str-buf-1.0.6
+ strength_reduce-0.2.4
+ strict-num-0.1.0
+ strsim-0.10.0
+ symphonia-0.5.2
+ symphonia-bundle-mp3-0.5.2
+ symphonia-core-0.5.2
+ symphonia-metadata-0.5.2
+ syn-1.0.109
+ syn-2.0.16
+ synstructure-0.12.6
+ sys-locale-0.3.0
+ system-deps-6.1.0
+ target-lexicon-0.12.7
+ termcolor-1.2.0
+ thiserror-1.0.40
+ thiserror-impl-1.0.40
+ thread_local-1.1.7
+ threadpool-1.8.1
+ tiff-0.8.1
+ time-0.3.21
+ time-core-0.1.1
+ time-macros-0.2.9
+ tiny-skia-0.8.4
+ tiny-skia-path-0.8.4
+ tinystr-0.7.1
+ tinyvec-1.6.0
+ tinyvec_macros-0.1.1
+ toml-0.7.4
+ toml_datetime-0.6.2
+ toml_edit-0.19.9
+ tracing-0.1.37
+ tracing-attributes-0.1.24
+ tracing-core-0.1.31
+ tracing-futures-0.2.5
+ tracing-log-0.1.3
+ tracing-subscriber-0.3.17
+ tracing-tracy-0.10.0
+ tracing-wasm-0.2.1
+ tracy-client-0.14.2
+ tracy-client-0.15.2
+ tracy-client-sys-0.19.0
+ tracy-client-sys-0.21.0
+ transpose-0.2.2
+ ttf-parser-0.19.0
+ type-map-0.4.0
+ type-map-0.5.0
+ typed-arena-2.0.2
+ typenum-1.16.0
+ unic-langid-0.9.1
+ unic-langid-impl-0.9.1
+ unic-langid-macros-0.9.1
+ unic-langid-macros-impl-0.9.1
+ unicode-bidi-0.3.13
+ unicode-ident-1.0.8
+ unicode-normalization-0.1.22
+ unicode-segmentation-1.10.1
+ unicode-width-0.1.10
+ unicode-xid-0.2.4
+ url-2.3.1
+ utf8parse-0.2.1
+ valuable-0.1.0
+ vcpkg-0.2.15
+ vec_map-0.8.2
+ vergen-8.2.0
+ version-compare-0.1.1
+ version_check-0.9.4
+ vswhom-0.1.0
+ vswhom-sys-0.1.2
+ waker-fn-1.1.0
+ walkdir-2.3.3
+ wasi-0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-0.2.86
+ wasm-bindgen-backend-0.2.86
+ wasm-bindgen-futures-0.4.36
+ wasm-bindgen-macro-0.2.86
+ wasm-bindgen-macro-support-0.2.86
+ wasm-bindgen-shared-0.2.86
+ wayland-client-0.29.5
+ wayland-commons-0.29.5
+ wayland-cursor-0.29.5
+ wayland-protocols-0.29.5
+ wayland-scanner-0.29.5
+ wayland-sys-0.29.5
+ weak-table-0.3.2
+ web-sys-0.3.63
+ webbrowser-0.8.10
+ weezl-0.1.7
+ wgpu-0.16.0
+ wgpu-core-0.16.0
+ wgpu-hal-0.16.0
+ wgpu-types-0.16.0
+ wide-0.7.9
+ widestring-1.0.2
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-wsapoll-0.1.1
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ windows-0.44.0
+ windows-0.46.0
+ windows-0.48.0
+ windows-sys-0.42.0
+ windows-sys-0.45.0
+ windows-sys-0.48.0
+ windows-targets-0.42.2
+ windows-targets-0.48.0
+ windows_aarch64_gnullvm-0.42.2
+ windows_aarch64_gnullvm-0.48.0
+ windows_aarch64_msvc-0.42.2
+ windows_aarch64_msvc-0.48.0
+ windows_i686_gnu-0.42.2
+ windows_i686_gnu-0.48.0
+ windows_i686_msvc-0.42.2
+ windows_i686_msvc-0.48.0
+ windows_x86_64_gnu-0.42.2
+ windows_x86_64_gnu-0.48.0
+ windows_x86_64_gnullvm-0.42.2
+ windows_x86_64_gnullvm-0.48.0
+ windows_x86_64_msvc-0.42.2
+ windows_x86_64_msvc-0.48.0
+ winit-0.28.6
+ winnow-0.4.6
+ winreg-0.11.0
+ x11-dl-2.21.0
+ x11rb-0.10.1
+ x11rb-protocol-0.10.0
+ xcursor-0.3.4
+ xml-rs-0.8.11
+ yaml-rust-0.4.5
+ yansi-0.5.1"
+declare -A GIT_CRATES=(
+ [dasp]="https://github.com/RustAudio/dasp;f05a703d247bb504d7e812b51e95f3765d9c5e94;dasp-%commit%/dasp"
+ [flash-lso]="https://github.com/ruffle-rs/rust-flash-lso;8376453eddddbe701031a091c0eed94068fa5649;rust-flash-lso-%commit%/flash-lso"
+ [gc-arena]="https://github.com/kyren/gc-arena;fcc8764362d25f8724912dd7f09f2405779ec053;gc-arena-%commit%/src/gc-arena"
+ [h263-rs-yuv]="https://github.com/ruffle-rs/h263-rs;d5d78eb251c1ce1f1da57c63db14f0fdc77a4b36;h263-rs-%commit%/yuv"
+ [h263-rs]="https://github.com/ruffle-rs/h263-rs;d5d78eb251c1ce1f1da57c63db14f0fdc77a4b36;h263-rs-%commit%/h263"
+ [nellymoser-rs]="https://github.com/ruffle-rs/nellymoser;4a33521c29a918950df8ae9fe07e527ac65553f5;nellymoser-%commit%"
+ [nihav_codec_support]="https://github.com/ruffle-rs/nihav-vp6;9416fcc9fc8aab8f4681aa9093b42922214abbd3;nihav-vp6-%commit%/nihav-codec-support"
+ [nihav_core]="https://github.com/ruffle-rs/nihav-vp6;9416fcc9fc8aab8f4681aa9093b42922214abbd3;nihav-vp6-%commit%/nihav-core"
+ [nihav_duck]="https://github.com/ruffle-rs/nihav-vp6;9416fcc9fc8aab8f4681aa9093b42922214abbd3;nihav-vp6-%commit%/nihav-duck"
+)
+inherit cargo desktop flag-o-matic virtualx xdg
+
+MY_PV="nightly-${PV:3:4}-${PV:7:2}-${PV:9:2}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Flash Player emulator written in Rust"
+HOMEPAGE="https://ruffle.rs/"
+SRC_URI="
+ https://github.com/ruffle-rs/ruffle/archive/refs/tags/${MY_PV}.tar.gz -> ${MY_P}.tar.gz
+ $(cargo_crate_uris)"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 CC0-1.0 ISC MIT MPL-2.0 OFL-1.1 UbuntuFontLicense-1.0 Unicode-DFS-2016 ZLIB curl"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dlopen: libX* (see winit+x11-dl crates)
+RDEPEND="
+ dev-libs/glib:2
+ dev-libs/openssl:=
+ media-libs/alsa-lib
+ sys-libs/zlib:=
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/libXcursor
+ x11-libs/libXrandr
+ x11-libs/libXrender"
+DEPEND="
+ ${RDEPEND}
+ x11-base/xorg-proto"
+BDEPEND="
+ virtual/jre:*
+ virtual/pkgconfig
+ >=virtual/rust-1.64
+ test? (
+ media-libs/mesa[llvm]
+ x11-base/xorg-server[-minimal]
+ )"
+
+QA_FLAGS_IGNORED="usr/bin/${PN}.*"
+
+src_configure() {
+ filter-lto # TODO: cleanup after bug #893658
+
+ # see .cargo/cargo.toml, only needed if RUSTFLAGS is set by the user
+ [[ -v RUSTFLAGS ]] && RUSTFLAGS+=" --cfg=web_sys_unstable_apis"
+
+ if use test; then
+ # tests will be skipped if don't build everything
+ cargo_src_configure --workspace
+ else
+ cargo_src_configure --package={ruffle_{desktop,scanner},exporter}
+ fi
+}
+
+src_test() {
+ virtx cargo_src_test
+}
+
+src_install() {
+ dodoc README.md
+
+ newicon web/packages/extension/assets/images/icon180.png ${PN}.png
+ make_desktop_entry ${PN} ${PN^} ${PN} "AudioVideo;Player;Emulator;" \
+ "MimeType=application/x-shockwave-flash;application/vnd.adobe.flash.movie;"
+
+ # TODO: swap with /gentoo after https://github.com/gentoo/gentoo/pull/29510
+ cd target/$(usex debug{,} release) || die
+
+ newbin ${PN}_desktop ${PN}
+ newbin exporter ${PN}_exporter
+ dobin ${PN}_scanner
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "${PN} is experimental software that is still under heavy development"
+ elog "and only receiving nightly releases. Plans in Gentoo is to update"
+ elog "roughly every months if no known major regressions (feel free to"
+ elog "report if you feel a newer nightly is needed ahead of time)."
+ elog
+ elog "There is currently no plans to support wasm builds / browser"
+ elog "extensions, this provides the desktop viewer and other tools."
+ fi
+}