commit: 58329350434880f1f0847a3bc3cc23933271a481 Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org> AuthorDate: Sat Sep 21 16:17:01 2019 +0000 Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org> CommitDate: Thu Dec 5 23:32:05 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58329350
app-emulation/pcem: New Package PCem (an acronym for Personal Computer emulator) is an open-source, low-level PC emulator developed for Windows and Linux by Sarah Walker. It focuses on PC hardware from the 1980's and 1990's. A variety of operating systems can be installed in the emulator, which can then be used to launch programs. https://github.com/gentoo/gentoo/pull/12988 Package-Manager: Portage-2.3.80, Repoman-2.3.19 Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org> app-emulation/pcem/Manifest | 1 + .../pcem/files/pcem-15-respect-cflags.patch | 13 ++++ app-emulation/pcem/metadata.xml | 23 +++++++ app-emulation/pcem/pcem-15.ebuild | 71 ++++++++++++++++++++++ 4 files changed, 108 insertions(+) diff --git a/app-emulation/pcem/Manifest b/app-emulation/pcem/Manifest new file mode 100644 index 00000000000..f1ab3db7a47 --- /dev/null +++ b/app-emulation/pcem/Manifest @@ -0,0 +1 @@ +DIST PCemV15Linux.tar.gz 1741312 BLAKE2B fa8de8c98a57ac79be11921190960eaa1e5d53896db0749a7f53704362b6415544632a6f918a8f1ce57d2f75f28af52715856346421cc0a8355236a01bb7dcac SHA512 c2501827689acc0f3381d785dc3b008866e82d242bea3fa5af7e786fc58fdf72f76eafda98d12ce88c59ff338bc7dc441484af9c1bc9357c7cc75d94bbe0a7b6 diff --git a/app-emulation/pcem/files/pcem-15-respect-cflags.patch b/app-emulation/pcem/files/pcem-15-respect-cflags.patch new file mode 100644 index 00000000000..734812a69da --- /dev/null +++ b/app-emulation/pcem/files/pcem-15-respect-cflags.patch @@ -0,0 +1,13 @@ +--- a/configure.ac 2019-05-19 18:40:05.000000000 +0200 ++++ b/configure.ac 2019-09-21 17:34:53.499993726 +0200 +@@ -31,8 +31,8 @@ + CXXFLAGS="-Wall -O0 -g -D_DEBUG" + AC_MSG_RESULT([yes]) + else +- CFLAGS="-O3" +- CXXFLAGS="-O3" ++ CFLAGS?="-O3" ++ CXXFLAGS?="-O3" + AC_MSG_RESULT([no]) + fi + diff --git a/app-emulation/pcem/metadata.xml b/app-emulation/pcem/metadata.xml new file mode 100644 index 00000000000..d949dbdb3e6 --- /dev/null +++ b/app-emulation/pcem/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Conrad Kostecki</name> + </maintainer> + <longdescription> + PCem (an acronym for Personal Computer emulator) is an open-source, + low-level PC emulator developed for Windows and Linux by Sarah Walker. + + It focuses on PC hardware from the 1980's and 1990's. + A variety of operating systems can be installed in the emulator, + which can then be used to launch programs. + </longdescription> + <use> + <flag name="networking">Enable support for emulation of network cards.</flag> + </use> + <upstream> + <bugs-to>https://pcem-emulator.co.uk/phpBB3/viewforum.php?f=2</bugs-to> + <remote-id type="bitbucket">pcem_emulator/pcem</remote-id> + </upstream> +</pkgmetadata> diff --git a/app-emulation/pcem/pcem-15.ebuild b/app-emulation/pcem/pcem-15.ebuild new file mode 100644 index 00000000000..cf76b44d1f9 --- /dev/null +++ b/app-emulation/pcem/pcem-15.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools desktop wxwidgets + +WX_GTK_VER="3.0" + +DESCRIPTION="A PC emulator that specializes in running old operating systems and software" +HOMEPAGE=" + https://pcem-emulator.co.uk/ + https://bitbucket.org/pcem_emulator/pcem/ +" +SRC_URI="https://pcem-emulator.co.uk/files/PCemV${PV}Linux.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="alsa networking" + +S="${WORKDIR}" + +RDEPEND=" + alsa? ( media-libs/alsa-lib ) + media-libs/libsdl2 + media-libs/openal + x11-libs/wxGTK:${WX_GTK_VER}[X] +" + +DEPEND="${DEPEND}" + +BDEPEND="virtual/pkgconfig" + +PATCHES=( "${FILESDIR}/${P}-respect-cflags.patch" ) + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --enable-release-build + $(use_enable alsa) + $(use_enable networking) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + insinto /usr/share/pcem + doins -r configs nvr roms + + newicon src/icons/32x32/motherboard.png pcem.png + make_desktop_entry "pcem" "PCem" pcem "Development;Utility" + + dodoc readme.txt +} + +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 file into '${ROOT}/usr/share/pcem/roms/<system>'." + elog "To install locally, put your ROM file into '~/.pcem/roms/<system>'." +}
