summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2021-05-07 18:51:30 +0200
committerDavid Seifert <soap@gentoo.org>2021-05-07 18:51:30 +0200
commitc7035d48a6e57fd9e1673c8724eb8b726ea1bf07 (patch)
treef962325d4d5cb6b61ceac747c48c435282910c4a /games-emulation/advancescan
parentprofiles/arch: mask x11-misc/read-edid[vbe-mode] on ppc32 and sparc (diff)
downloadgentoo-c7035d48a6e57fd9e1673c8724eb8b726ea1bf07.tar.gz
gentoo-c7035d48a6e57fd9e1673c8724eb8b726ea1bf07.tar.bz2
gentoo-c7035d48a6e57fd9e1673c8724eb8b726ea1bf07.zip
games-emulation/advancescan: Fix building against GCC 11
Closes: https://bugs.gentoo.org/786792 Package-Manager: Portage-3.0.18, Repoman-3.0.3 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'games-emulation/advancescan')
-rw-r--r--games-emulation/advancescan/advancescan-1.16-r1.ebuild7
-rw-r--r--games-emulation/advancescan/files/advancescan-1.16-gcc11.patch252
2 files changed, 256 insertions, 3 deletions
diff --git a/games-emulation/advancescan/advancescan-1.16-r1.ebuild b/games-emulation/advancescan/advancescan-1.16-r1.ebuild
index cebee4ad876a..6a0026200b4a 100644
--- a/games-emulation/advancescan/advancescan-1.16-r1.ebuild
+++ b/games-emulation/advancescan/advancescan-1.16-r1.ebuild
@@ -7,7 +7,8 @@ inherit autotools
DESCRIPTION="A command line rom manager for MAME, MESS, AdvanceMAME, AdvanceMESS and Raine"
HOMEPAGE="http://advancemame.sourceforge.net/scan-readme.html"
-SRC_URI="mirror://sourceforge/advancemame/${P}.tar.gz
+SRC_URI="
+ mirror://sourceforge/advancemame/${P}.tar.gz
https://dev.gentoo.org/~juippis/distfiles/tmp/advancescan-1.16-gcc6.patch"
LICENSE="GPL-2"
@@ -16,13 +17,13 @@ KEYWORDS="~amd64 ~x86"
DEPEND="
dev-libs/expat
- sys-libs/zlib
-"
+ sys-libs/zlib"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-sys-expat.patch
"${DISTDIR}"/${P}-gcc6.patch
+ "${FILESDIR}"/${P}-gcc11.patch
)
src_prepare() {
diff --git a/games-emulation/advancescan/files/advancescan-1.16-gcc11.patch b/games-emulation/advancescan/files/advancescan-1.16-gcc11.patch
new file mode 100644
index 000000000000..eae86c192d63
--- /dev/null
+++ b/games-emulation/advancescan/files/advancescan-1.16-gcc11.patch
@@ -0,0 +1,252 @@
+--- a/conf.cc
++++ b/conf.cc
+@@ -28,7 +28,7 @@
+
+ using namespace std;
+
+-static void expand_tree(const string& path, filepath_container& ds) throw (error)
++static void expand_tree(const string& path, filepath_container& ds)
+ {
+ DIR* dir = opendir(path.c_str());
+ if (!dir)
+--- a/file.cc
++++ b/file.cc
+@@ -98,7 +98,7 @@
+ /**
+ * Check if a file exists.
+ */
+-bool file_exists(const string& path) throw (error)
++bool file_exists(const string& path)
+ {
+ struct stat s;
+ if (stat(path.c_str(), &s) != 0) {
+@@ -114,7 +114,7 @@
+ /**
+ * Write a whole file.
+ */
+-void file_write(const string& path, const char* data, unsigned size) throw (error)
++void file_write(const string& path, const char* data, unsigned size)
+ {
+ FILE* f = fopen(path.c_str(), "wb");
+ if (!f)
+@@ -134,7 +134,7 @@
+ /**
+ * Read a whole file.
+ */
+-void file_read(const string& path, char* data, unsigned size) throw (error)
++void file_read(const string& path, char* data, unsigned size)
+ {
+ file_read(path, data, 0, size);
+ }
+@@ -142,7 +142,7 @@
+ /**
+ * Read a whole file.
+ */
+-void file_read(const string& path, char* data, unsigned offset, unsigned size) throw (error)
++void file_read(const string& path, char* data, unsigned offset, unsigned size)
+ {
+ FILE* f = fopen(path.c_str(), "rb");
+ if (!f)
+@@ -166,7 +166,7 @@
+ /**
+ * Get the time of a file.
+ */
+-time_t file_time(const string& path) throw (error)
++time_t file_time(const string& path)
+ {
+ struct stat s;
+ if (stat(path.c_str(), &s)!=0)
+@@ -178,7 +178,7 @@
+ /**
+ * Set the time of a file.
+ */
+-void file_utime(const string& path, time_t tod) throw (error)
++void file_utime(const string& path, time_t tod)
+ {
+ struct utimbuf u;
+
+@@ -192,7 +192,7 @@
+ /**
+ * Get the size of a file.
+ */
+-unsigned file_size(const string& path) throw (error)
++unsigned file_size(const string& path)
+ {
+ struct stat s;
+ if (stat(path.c_str(), &s)!=0)
+@@ -204,7 +204,7 @@
+ /**
+ * Get the crc of a file.
+ */
+-crc_t file_crc(const string& path) throw (error)
++crc_t file_crc(const string& path)
+ {
+ unsigned size = file_size(path);
+
+@@ -227,7 +227,7 @@
+ /**
+ * Copy a file.
+ */
+-void file_copy(const string& path1, const string& path2) throw (error)
++void file_copy(const string& path1, const string& path2)
+ {
+ unsigned size;
+
+@@ -249,7 +249,7 @@
+ /**
+ * Move a file.
+ */
+-void file_move(const string& path1, const string& path2) throw (error)
++void file_move(const string& path1, const string& path2)
+ {
+ if (rename(path1.c_str(), path2.c_str())!=0
+ && errno==EXDEV) {
+@@ -271,7 +271,7 @@
+ /**
+ * Remove a file.
+ */
+-void file_remove(const string& path1) throw (error)
++void file_remove(const string& path1)
+ {
+ if (remove(path1.c_str())!=0) {
+ throw error() << "Failed remove of " << path1;
+@@ -281,7 +281,7 @@
+ /**
+ * Rename a file.
+ */
+-void file_rename(const string& path1, const string& path2) throw (error)
++void file_rename(const string& path1, const string& path2)
+ {
+ if (rename(path1.c_str(), path2.c_str())!=0) {
+ throw error() << "Failed rename of " << path1 << " to " << path2;
+@@ -291,7 +291,7 @@
+ /**
+ * Randomize a name file.
+ */
+-string file_randomize(const string& path, int n) throw ()
++string file_randomize(const string& path, int n)
+ {
+ ostringstream os;
+
+@@ -310,7 +310,7 @@
+ /**
+ * Get the directory from a path.
+ */
+-string file_dir(const string& path) throw ()
++string file_dir(const string& path)
+ {
+ size_t pos = path.rfind('/');
+ if (pos == string::npos) {
+@@ -323,7 +323,7 @@
+ /**
+ * Get the file name from a path.
+ */
+-string file_name(const string& path) throw ()
++string file_name(const string& path)
+ {
+ size_t pos = path.rfind('/');
+ if (pos == string::npos) {
+@@ -336,7 +336,7 @@
+ /**
+ * Get the basepath (path without extension) from a path.
+ */
+-string file_basepath(const string& path) throw ()
++string file_basepath(const string& path)
+ {
+ size_t dot = path.rfind('.');
+ if (dot == string::npos)
+@@ -348,7 +348,7 @@
+ /**
+ * Get the basename (name without extension) from a path.
+ */
+-string file_basename(const string& path) throw ()
++string file_basename(const string& path)
+ {
+ string name = file_name(path);
+ size_t dot = name.rfind('.');
+@@ -361,7 +361,7 @@
+ /**
+ * Get the extension from a path.
+ */
+-string file_ext(const string& path) throw ()
++string file_ext(const string& path)
+ {
+ string name = file_name(path);
+ size_t dot = name.rfind('.');
+@@ -374,7 +374,7 @@
+ /**
+ * Compare two path.
+ */
+-int file_compare(const string& path1, const string& path2) throw ()
++int file_compare(const string& path1, const string& path2)
+ {
+ return strcasecmp(path1.c_str(), path2.c_str());
+ }
+@@ -382,7 +382,7 @@
+ /**
+ * Convert a path to the C format.
+ */
+-string file_adjust(const string& path) throw ()
++string file_adjust(const string& path)
+ {
+ string r;
+ for(unsigned i=0;i<path.length();++i) {
+@@ -400,7 +400,7 @@
+ /**
+ * Make a drectory tree.
+ */
+-void file_mktree(const std::string& path) throw (error)
++void file_mktree(const std::string& path)
+ {
+ string dir = file_dir(path);
+ string name = file_name(path);
+--- a/file.h
++++ b/file.h
+@@ -67,27 +67,27 @@
+ crc_t crc_compute(const char* data, unsigned len);
+ crc_t crc_compute(crc_t pred, const char* data, unsigned len);
+
+-bool file_exists(const std::string& file) throw (error);
+-void file_write(const std::string& path, const char* data, unsigned size) throw (error);
+-void file_read(const std::string& path, char* data, unsigned size) throw (error);
+-void file_read(const std::string& path, char* data, unsigned offset, unsigned size) throw (error);
+-time_t file_time(const std::string& path) throw (error);
+-void file_utime(const std::string& path, time_t tod) throw (error);
+-unsigned file_size(const std::string& path) throw (error);
+-crc_t file_crc(const std::string& path) throw (error);
+-void file_copy(const std::string& path1, const std::string& path2) throw (error);
+-void file_move(const std::string& path1, const std::string& path2) throw (error);
+-void file_remove(const std::string& path1) throw (error);
+-void file_mktree(const std::string& path1) throw (error);
++bool file_exists(const std::string& file);
++void file_write(const std::string& path, const char* data, unsigned size);
++void file_read(const std::string& path, char* data, unsigned size);
++void file_read(const std::string& path, char* data, unsigned offset, unsigned size);
++time_t file_time(const std::string& path);
++void file_utime(const std::string& path, time_t tod);
++unsigned file_size(const std::string& path);
++crc_t file_crc(const std::string& path);
++void file_copy(const std::string& path1, const std::string& path2);
++void file_move(const std::string& path1, const std::string& path2);
++void file_remove(const std::string& path1);
++void file_mktree(const std::string& path1);
+
+-std::string file_randomize(const std::string& path, int n) throw ();
+-std::string file_name(const std::string& file) throw ();
+-std::string file_dir(const std::string& file) throw ();
+-std::string file_basename(const std::string& file) throw ();
+-std::string file_basepath(const std::string& file) throw ();
+-std::string file_ext(const std::string& file) throw ();
+-int file_compare(const std::string& path1, const std::string& path2) throw ();
+-std::string file_adjust(const std::string& path) throw ();
++std::string file_randomize(const std::string& path, int n);
++std::string file_name(const std::string& file);
++std::string file_dir(const std::string& file);
++std::string file_basename(const std::string& file);
++std::string file_basepath(const std::string& file);
++std::string file_ext(const std::string& file);
++int file_compare(const std::string& path1, const std::string& path2);
++std::string file_adjust(const std::string& path);
+
+ #endif
+