commit: 1b1dac0211e2b372fffe39edfbec267ffd51b5f7 Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org> AuthorDate: Mon Dec 30 15:51:53 2024 +0000 Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org> CommitDate: Mon Dec 30 15:56:18 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b1dac02
app-emulation/pcem: add 17_p20241210 Bug: https://bugs.gentoo.org/show_bug.cgi?id=922390 Bug: https://bugs.gentoo.org/show_bug.cgi?id=936136 Bug: https://bugs.gentoo.org/show_bug.cgi?id=944239 Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org> app-emulation/pcem/Manifest | 1 + app-emulation/pcem/metadata.xml | 2 + app-emulation/pcem/pcem-17_p20241210.ebuild | 77 +++++++++++++++++++++++++++++ profiles/base/package.use.mask | 4 ++ 4 files changed, 84 insertions(+) diff --git a/app-emulation/pcem/Manifest b/app-emulation/pcem/Manifest index a350cb7eb993..00b41e28ca92 100644 --- a/app-emulation/pcem/Manifest +++ b/app-emulation/pcem/Manifest @@ -1 +1,2 @@ DIST PCemV17Linux.tar.gz 1880868 BLAKE2B 64068f0f98e8fe3e9bfe42a04f462375a7ee0cb8259b103237f3b0542f54ad13ed625a55c8379e2c54a87348ed504496a6b163419855ceeda8e4f18e1ea5dcd9 SHA512 6d84c8cbe9b6116f6439f542ac08139cfc5652a34b615a1ed841a6f8c227e77f1d26573ec35d57511b9a69e7472fbe51f2abb9307f8f8c1207c74fbe8107cadd +DIST pcem-17_p20241210.tar.gz 1668232 BLAKE2B 5fdf4e0067dfe3924be1ee4a22055e4f5f2dfdfcf3494d0f0ee9e6b3f1641ccc7f1767524416b0fe39daaccab6e805f839c35ca9a178ad4355a0100784ab31dc SHA512 78353704529d7f333d5fc5513be34cc895423418242642e3b7a35e008700a444b1f8b0d477dbd26a84081112eaba2829248c0506cd333e22479751e9e99252e0 diff --git a/app-emulation/pcem/metadata.xml b/app-emulation/pcem/metadata.xml index 2e2c78f17257..6ccc6ebb7b8b 100644 --- a/app-emulation/pcem/metadata.xml +++ b/app-emulation/pcem/metadata.xml @@ -14,7 +14,9 @@ which can then be used to launch programs. </longdescription> <use> + <flag name="experimental">Enable experimental devices like printers.</flag> <flag name="networking">Enable support for emulation of network cards.</flag> + <flag name="plugins">Enable support for dynamic plugins, which can add additional features.</flag> </use> <upstream> <bugs-to>https://pcem-emulator.co.uk/phpBB3/viewforum.php?f=2</bugs-to> diff --git a/app-emulation/pcem/pcem-17_p20241210.ebuild b/app-emulation/pcem/pcem-17_p20241210.ebuild new file mode 100644 index 000000000000..2431e3890c5a --- /dev/null +++ b/app-emulation/pcem/pcem-17_p20241210.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +EGIT_COMMIT="bd1283b91282d522617ac6d29eb0f271ded83ffc" +WX_GTK_VER="3.2-gtk3" + +inherit cmake desktop wxwidgets + +DESCRIPTION="A PC emulator that specializes in running old operating systems and software" +HOMEPAGE="https://github.com/sarah-walker-pcem/pcem/" +SRC_URI="https://github.com/sarah-walker-pcem/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${EGIT_COMMIT}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="alsa experimental networking plugins wayland" + +RDEPEND=" + media-libs/libsdl2 + media-libs/libglvnd + media-libs/openal + x11-libs/wxGTK:${WX_GTK_VER}[tiff,X] + alsa? ( media-libs/alsa-lib ) + experimental? ( media-libs/freetype ) + networking? ( net-libs/libpcap ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +DOCS=( "README.md" "TESTED.md" ) + +src_prepare() { + default + cmake_src_prepare +} + +src_configure() { + setup-wxwidgets + + local mycmakeargs=( + -DFORCE_X11=$(usex !wayland) + -DPCEM_LIB_DIR="$(get_libdir)" + -DPLUGIN_ENGINE=$(usex plugins) + -DUSE_ALSA=$(usex alsa) + -DUSE_EXPERIMENTAL=$(usex experimental) + $(usex experimental '-DUSE_EXPERIMENTAL_PGC=ON') + $(usex experimental '-DUSE_EXPERIMENTAL_PRINTER=ON') + -DUSE_NETWORKING=$(usex networking) + $(usex networking '-DUSE_PCAP_NETWORKING=ON') + ) + + cmake_src_configure +} + +src_install() { + default + cmake_src_install + + insinto /usr/share/pcem + doins -r nvr + + newicon src/wx-ui/icons/16x16/motherboard.png pcem.png + make_desktop_entry "pcem" "PCem" pcem "Development;Utility" + + einstalldocs +} + +pkg_postinst() { + elog "In order to use PCem, you will need some roms for various emulated systems." + elog "You can either install globally for all users or locally for yourself." + elog "" + elog "To install globally, put your ROM files into '${ROOT}/usr/share/pcem/roms/<system>'." + elog "To install locally, put your ROM files into '~/.pcem/roms/<system>'." +} diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask index 50028de0dbec..b691d3162ffe 100644 --- a/profiles/base/package.use.mask +++ b/profiles/base/package.use.mask @@ -3,6 +3,10 @@ # New entries go on top. +# Conrad Kostecki <[email protected]> (2024-12-30) +# Currently experimental features do not compile. +app-emulation/pcem experimental + # Andreas Sturmlechner <[email protected]> (2024-12-28) # Prepare virtual/bitcoin-leveldb last-rites, bug #945359 net-p2p/bitcoin-core system-leveldb
