diff options
-rw-r--r-- | games-emulation/zsnes/ChangeLog | 8 | ||||
-rw-r--r-- | games-emulation/zsnes/Manifest | 26 | ||||
-rw-r--r-- | games-emulation/zsnes/files/digest-zsnes-1.42 | 3 | ||||
-rw-r--r-- | games-emulation/zsnes/files/zsnes-1.51-archopt-july-23-update.patch | 502 | ||||
-rw-r--r-- | games-emulation/zsnes/zsnes-1.51-r1.ebuild | 4 |
5 files changed, 527 insertions, 16 deletions
diff --git a/games-emulation/zsnes/ChangeLog b/games-emulation/zsnes/ChangeLog index 022fd814de13..ea38dfa573e3 100644 --- a/games-emulation/zsnes/ChangeLog +++ b/games-emulation/zsnes/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for games-emulation/zsnes # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/games-emulation/zsnes/ChangeLog,v 1.34 2007/06/25 21:38:06 drizzt Exp $ +# $Header: /var/cvsroot/gentoo-x86/games-emulation/zsnes/ChangeLog,v 1.35 2007/07/22 22:20:21 drizzt Exp $ + + 22 Jul 2007; Timothy Redaelli <drizzt@gentoo.org> + +files/zsnes-1.51-archopt-july-23-update.patch, zsnes-1.51-r1.ebuild: + Add patch for latest version of archopt as of July 23. For properly handling + if cpu is already set in the main GCC detection if/else. This will fix bug + #186111, thanks to Nils Kneuper for reporting and Nach for fixing. *zsnes-1.51-r1 (25 Jun 2007) diff --git a/games-emulation/zsnes/Manifest b/games-emulation/zsnes/Manifest index 8c55b92dc3e4..503d01be4645 100644 --- a/games-emulation/zsnes/Manifest +++ b/games-emulation/zsnes/Manifest @@ -1,6 +1,10 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 +AUX zsnes-1.51-archopt-july-23-update.patch 12740 RMD160 e8004f97f795c13d51fa16c5bf386dfc8b12058f SHA1 4e59c16f0e5c57cfa6e5df2b50026598e77eab5a SHA256 4fc49ccafe46dafb1db57226e6989f6a5c97e826595df881d90bad1694a9906e +MD5 27007f4bedea2db053b1d71bff90ba1b files/zsnes-1.51-archopt-july-23-update.patch 12740 +RMD160 e8004f97f795c13d51fa16c5bf386dfc8b12058f files/zsnes-1.51-archopt-july-23-update.patch 12740 +SHA256 4fc49ccafe46dafb1db57226e6989f6a5c97e826595df881d90bad1694a9906e files/zsnes-1.51-archopt-july-23-update.patch 12740 AUX zsnes-1.51-gzdirect.patch 2125 RMD160 34d20566d0239cc755e5d83213e069f7cddb5947 SHA1 39b7189146bcbadca5456c060c80f3fd30e577ee SHA256 752d52a2fc019c329d76e4f8fd6c0a3002ab75f82781ebec400f9b7d45fb87fa MD5 b67ada558af9164141ae505adcbf84d3 files/zsnes-1.51-gzdirect.patch 2125 RMD160 34d20566d0239cc755e5d83213e069f7cddb5947 files/zsnes-1.51-gzdirect.patch 2125 @@ -10,18 +14,18 @@ MD5 303258dd01c610595dbbd4a9beb49ee7 files/zsnes-1.51-libpng.patch 974 RMD160 36bdb059c6641376bee6ea5040a7045420c02870 files/zsnes-1.51-libpng.patch 974 SHA256 9e5ba014ba847f7e10075dfd51b0ca42b86aa2dcc47952d569c304f3e8e15470 files/zsnes-1.51-libpng.patch 974 DIST zsnes151src.tar.bz2 1071712 RMD160 337407bf7e5516bcd7bf310c7b17d6d12a948750 SHA1 03df35490870c9950d7010747d0546c8525c0362 SHA256 eb013f824f5a9814a714cf0daaea3ea68a1c74fd741e5b0979fcb7964236a866 -EBUILD zsnes-1.51-r1.ebuild 2075 RMD160 025f42170afe6f1aadb2b18844ee8f1cf257baca SHA1 3ca62b00d4a4449c59fa32a18b09f5dde633e3b8 SHA256 2df84605e8e5dbc0a000139cb7f5b97e37a59d1dcd3ed2d300f044603879f013 -MD5 bf60766412d374cf37ae7d7f05c20ac9 zsnes-1.51-r1.ebuild 2075 -RMD160 025f42170afe6f1aadb2b18844ee8f1cf257baca zsnes-1.51-r1.ebuild 2075 -SHA256 2df84605e8e5dbc0a000139cb7f5b97e37a59d1dcd3ed2d300f044603879f013 zsnes-1.51-r1.ebuild 2075 +EBUILD zsnes-1.51-r1.ebuild 2150 RMD160 213d788b642c605b36246f0bd85a8465de0bb08c SHA1 811a476bfabaa0a12aa5bf685eb3150f68661c5c SHA256 ef61f94a052efe02c42af51f9b0a094d270cb36bb337035996e2827d6287fd32 +MD5 fb46f49a22be336d69f3a136bbcc267b zsnes-1.51-r1.ebuild 2150 +RMD160 213d788b642c605b36246f0bd85a8465de0bb08c zsnes-1.51-r1.ebuild 2150 +SHA256 ef61f94a052efe02c42af51f9b0a094d270cb36bb337035996e2827d6287fd32 zsnes-1.51-r1.ebuild 2150 EBUILD zsnes-1.51.ebuild 2162 RMD160 e3782ef6c6685125a69d58e14508aeeeac6812b9 SHA1 0c0089916aa5fce671f7afbaf90d0b23e5cd876c SHA256 30df22f8a969c680b34e295fd991e573e7cc82fdcda7447fdf01f4e112acb86f MD5 38d1a72e8711e24e62717720efea79c6 zsnes-1.51.ebuild 2162 RMD160 e3782ef6c6685125a69d58e14508aeeeac6812b9 zsnes-1.51.ebuild 2162 SHA256 30df22f8a969c680b34e295fd991e573e7cc82fdcda7447fdf01f4e112acb86f zsnes-1.51.ebuild 2162 -MISC ChangeLog 7516 RMD160 9c5ff9af5ac879eb9437b5a36fe5ea25d6996636 SHA1 021001a22ec1c18f3ef771a76f8998268dfb51df SHA256 28aa8255127726fb666e08d76b4c9c759f9b83ec6d8c80e60a96d9ec715331a0 -MD5 d0337fea2a233199c5712aa25bb493c2 ChangeLog 7516 -RMD160 9c5ff9af5ac879eb9437b5a36fe5ea25d6996636 ChangeLog 7516 -SHA256 28aa8255127726fb666e08d76b4c9c759f9b83ec6d8c80e60a96d9ec715331a0 ChangeLog 7516 +MISC ChangeLog 7866 RMD160 37f800a4167afd0cc2545b6e8c9723496cdbdbdd SHA1 c7e1e7f90a8fceb6ac47cdb95fdaf60f5ef75f86 SHA256 0b77e718be3dac67f6b358c470474c5407308afd9bfb80c455dbcf1acbd0d385 +MD5 65389fc2ef82bb4e578b679fb38e3b45 ChangeLog 7866 +RMD160 37f800a4167afd0cc2545b6e8c9723496cdbdbdd ChangeLog 7866 +SHA256 0b77e718be3dac67f6b358c470474c5407308afd9bfb80c455dbcf1acbd0d385 ChangeLog 7866 MISC metadata.xml 372 RMD160 0d0b2eeec56fca840beec662062dfa3961537649 SHA1 41d62af5e7cd389224135e8385b22355f2c7f2ac SHA256 043dd4fd85df344c5a335c1f3bc1a0f9ce9b169337060367f767b3e4be217bdb MD5 67c743475aa0bdcc349144352575421c metadata.xml 372 RMD160 0d0b2eeec56fca840beec662062dfa3961537649 metadata.xml 372 @@ -35,7 +39,7 @@ SHA256 f9ba651da95dcbc8a7c53b572bc4ecd38f552891b26c351b8ab719177399e6c1 files/di -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (GNU/Linux) -iD8DBQFGgDXEjJyKLBkBVroRAlwxAJ0f6+YihgddYVMHW26wG80zgqo/JACgriF/ -Wrm+88iPtODwAySFTMPFnUQ= -=ji3a +iD8DBQFGo9gjjJyKLBkBVroRAv9cAKDL3lcwxlU9V37Mx+763dmwAA3QRQCeIZor +QBJWTjnBdCI+mk9I2PK8dwU= +=koEJ -----END PGP SIGNATURE----- diff --git a/games-emulation/zsnes/files/digest-zsnes-1.42 b/games-emulation/zsnes/files/digest-zsnes-1.42 deleted file mode 100644 index 0f591cd996ef..000000000000 --- a/games-emulation/zsnes/files/digest-zsnes-1.42 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 e3fcc13061e169194ec31c27ace1b6e7 zsnes142src.tar.gz 1102840 -RMD160 d794c69e876265715e141c26ecb6ed1802ffc27d zsnes142src.tar.gz 1102840 -SHA256 f06ef14db8d3fdae9d7c12442a52e535a5feee1cb18c78b51a74ed282ed874be zsnes142src.tar.gz 1102840 diff --git a/games-emulation/zsnes/files/zsnes-1.51-archopt-july-23-update.patch b/games-emulation/zsnes/files/zsnes-1.51-archopt-july-23-update.patch new file mode 100644 index 000000000000..cd478923b1d9 --- /dev/null +++ b/games-emulation/zsnes/files/zsnes-1.51-archopt-july-23-update.patch @@ -0,0 +1,502 @@ +--- tools/archopt.c.old 2006-12-29 06:50:31.000000000 +0100 ++++ tools/archopt.c 2007-07-23 00:11:51.000000000 +0200 +@@ -1,8 +1,30 @@ ++/* ++Copyright (C) 2005-2007 Nach, grinvader ( http://www.zsnes.com ) ++ ++This program is free software; you can redistribute it and/or ++modify it under the terms of the GNU General Public License ++version 2 as published by the Free Software Foundation. ++ ++This program is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with this program; if not, write to the Free Software ++Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ++*/ ++ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> + #include <ctype.h> + ++#ifdef _M_X64 ++#define __x86_64__ ++#endif ++ ++#ifdef __GNUC__ + #ifdef __x86_64__ + #define cpuid(in, a, b, c, d) asm volatile("cpuid": "=a" (a), "=b" (b), "=c" (c), "=d" (d) : "a" (in)); + #else +@@ -13,6 +35,22 @@ + movl %%ebx,%%edi;\ + popl %%ebx": "=a" (a), "=D" (b), "=c" (c), "=d" (d) : "a" (in)); + #endif ++#else ++char cpubuf[256]; ++int z_in, z_a, z_b, z_c, z_d; ++void cpuid_run() ++{ ++ _asm { ++ mov eax,z_in ++ cpuid ++ mov z_a,eax ++ mov z_b,ebx ++ mov z_c,ecx ++ mov z_d,edx ++ }; ++} ++#define cpuid(in, a, b, c, d) z_in = in; cpuid_run(); a = z_a; b = z_b; c = z_c; d = z_d; ++#endif + + char *x86_flags[] = + { "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce", +@@ -62,6 +100,7 @@ + { + int have = 0x200000; + #ifndef __x86_64__ ++ #ifdef __GNUC__ + asm volatile + ( + " pushfl;" +@@ -76,6 +115,23 @@ + : "=a" (have) + : "c" (have) + ); ++ #else ++ z_c = have; ++ _asm { ++ mov ecx,z_c ++ pushfd ++ pop eax ++ mov edx,eax ++ xor eax,ecx ++ push eax ++ popfd ++ pushfd ++ pop eax ++ xor eax,edx ++ mov z_a,eax ++ }; ++ have = z_a; ++ #endif + #endif + return(have); + } +@@ -196,238 +252,268 @@ + cpu = "native"; + #endif + #endif +- +- if (!cpu && *cpu_family && *vendor_id) ++ if (!cpu) + { +- if (!strcmp(vendor_id, "AuthenticAMD") || strstr(model_name, "AMD")) ++ if (!cpu && *cpu_family && *vendor_id) + { +- if (strstr(flags, " mmx ")) ++ #ifdef __GNUC__ ++ if (!strcmp(vendor_id, "AuthenticAMD") || strstr(model_name, "AMD")) + { +- #if __GNUC__ > 2 +- if (strstr(flags, " 3dnow ")) ++ if (strstr(flags, " mmx ")) + { +- if (strstr(flags, " 3dnowext ") && (atoi(cpu_family) > 5)) ++ #if __GNUC__ > 2 ++ if (strstr(flags, " 3dnow ")) + { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 0 +- if (strstr(flags, " sse ")) ++ if (strstr(flags, " 3dnowext ") && (atoi(cpu_family) > 5)) + { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 +- if (strstr(flags, " sse2 ") && strstr(flags, " lm ")) //Need two checks to protect Semprons ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 0 ++ if (strstr(flags, " sse ")) + { +- if (strstr(model_name, "Opteron")) +- { +- cpu = "opteron"; +- } +- else if (strstr(model_name, "Athlon(tm) 64")) //Also athlon-fx ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ if (strstr(flags, " sse2 ") && strstr(flags, " lm ")) //Need two checks to protect Semprons + { +- cpu = "athlon64"; ++ if (strstr(model_name, "Opteron")) ++ { ++ cpu = "opteron"; ++ } ++ else if (strstr(model_name, "Athlon(tm) 64")) //Also athlon-fx ++ { ++ cpu = "athlon64"; ++ } ++ else ++ { ++ cpu = "k8"; ++ } + } +- else ++ #endif ++ if (!cpu) + { +- cpu = "k8"; ++ if (strstr(model_name, "Athlon(tm) 4")) ++ { ++ cpu = "athlon-4"; ++ } ++ else if (strstr(model_name, "Athlon(tm) MP")) ++ { ++ cpu = "athlon-mp"; ++ } ++ else ++ { ++ cpu = "athlon-xp"; ++ } + } + } ++ ++ if (!cpu && (atoi(model) > 3)) ++ { ++ cpu = "athlon-tbird"; ++ } + #endif ++ + if (!cpu) + { +- if (strstr(model_name, "Athlon(tm) 4")) +- { +- cpu = "athlon-4"; +- } +- else if (strstr(model_name, "Athlon(tm) MP")) +- { +- cpu = "athlon-mp"; +- } +- else +- { +- cpu = "athlon-xp"; +- } ++ cpu = "athlon"; + } + } + +- if (!cpu && (atoi(model) > 3)) +- { +- cpu = "athlon-tbird"; +- } +- #endif +- ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 0 + if (!cpu) + { +- cpu = "athlon"; ++ int model_num = atoi(model); ++ if ((model_num == 9) || (model_num >= 13)) ++ { ++ cpu = "k6-3"; ++ } ++ else ++ { ++ cpu = "k6-2"; ++ } + } ++ #endif + } ++ #endif + +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 0 + if (!cpu) + { +- int model_num = atoi(model); +- if ((model_num == 9) || (model_num >= 13)) +- { +- cpu = "k6-3"; +- } +- else +- { +- cpu = "k6-2"; +- } ++ cpu = "k6"; + } +- #endif +- } +- #endif +- +- if (!cpu) +- { +- cpu = "k6"; + } + } +- } +- else if (!strcmp(vendor_id, "GenuineIntel") || strstr(model_name, "Intel")) +- { +- #if __GNUC__ > 2 +- if (strstr(flags, " mmx ")) ++ else if (!strcmp(vendor_id, "GenuineIntel") || strstr(model_name, "Intel")) + { +- if (strstr(flags, " sse ")) ++ #if __GNUC__ > 2 ++ if (strstr(flags, " mmx ")) + { +- if (strstr(flags, " sse2 ")) ++ if (strstr(flags, " sse ")) + { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 2 +- if (strstr(flags, " pni ") && strcmp(cpu_family, "6")) ++ if (strstr(flags, " sse2 ")) + { +- if (strstr(flags, " lm ")) ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 2 ++ if (strstr(flags, " pni ") && strcmp(cpu_family, "6")) + { +- cpu = "nocona"; ++ if (strstr(flags, " lm ")) ++ { ++ cpu = "nocona"; ++ } ++ else ++ { ++ cpu = "prescott"; ++ } + } +- else ++ #endif ++ ++ if (!cpu) + { +- cpu = "prescott"; ++ if (!strcmp(cpu_family, "6")) ++ { ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ cpu = "pentium-m"; ++ #else ++ cpu = "pentium3"; ++ #endif ++ } ++ else ++ { ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ if (strstr(model_name, "Mobile")) ++ { ++ cpu = "pentium4m"; ++ } ++ #endif ++ ++ if (!cpu) ++ { ++ cpu = "pentium4"; ++ } ++ } + } + } +- #endif +- +- if (!cpu) ++ else + { +- if (!strcmp(cpu_family, "6")) ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ if (strstr(model_name, "Mobile")) + { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 +- cpu = "pentium-m"; +- #else +- cpu = "pentium3"; +- #endif ++ cpu = "pentium3m"; + } +- else +- { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 +- if (strstr(model_name, "Mobile")) +- { +- cpu = "pentium4m"; +- } +- #endif ++ #endif + +- if (!cpu) +- { +- cpu = "pentium4"; +- } ++ if (!cpu) ++ { ++ cpu = "pentium3"; + } + } + } + else + { +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 +- if (strstr(model_name, "Mobile")) ++ if (!strcmp(cpu_family, "6")) + { +- cpu = "pentium3m"; ++ cpu = "pentium2"; + } +- #endif +- +- if (!cpu) ++ else + { +- cpu = "pentium3"; ++ cpu = "pentium-mmx"; + } + } + } +- else ++ #endif ++ ++ if (!cpu) ++ { ++ int family = atoi(cpu_family); ++ if (family > 5) ++ { ++ cpu = "pentiumpro"; ++ } ++ else if (family == 5) ++ { ++ cpu = "pentium"; ++ } ++ } ++ } ++ #if __GNUC__ > 2 ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 2 ++ else if (!strcmp(vendor_id, "CentaurHauls") && strstr(flags, " mmx ")) ++ { ++ if (strstr(flags, " 3dnow ")) + { +- if (!strcmp(cpu_family, "6")) ++ if (atoi(cpu_family) > 5) + { +- cpu = "pentium2"; ++ cpu = "c3"; + } + else + { +- cpu = "pentium-mmx"; ++ cpu = "winchip2"; + } + } ++ #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ else if (strstr(flags, " sse ")) ++ { ++ cpu = "c3-2"; ++ } ++ #endif ++ ++ if (!cpu) ++ { ++ cpu = "winchip-c6"; ++ } + } + #endif ++ #endif + + if (!cpu) + { + int family = atoi(cpu_family); + if (family > 5) + { +- cpu = "pentiumpro"; ++ cpu = "i686"; + } + else if (family == 5) + { +- cpu = "pentium"; ++ cpu = "i586"; + } +- } +- } +- #if __GNUC__ > 2 +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 2 +- else if (!strcmp(vendor_id, "CentaurHauls") && strstr(flags, " mmx ")) +- { +- if (strstr(flags, " 3dnow ")) +- { +- if (atoi(cpu_family) > 5) ++ else if (family == 4) + { +- cpu = "c3"; ++ cpu = "i486"; + } + else + { +- cpu = "winchip2"; ++ cpu = "i386"; + } + } +- #if __GNUC__ > 3 || __GNUC_MINOR__ > 3 ++ #else //MSVC ++ cpu = cpubuf; ++ *cpu = 0; ++ ++ if (strstr(flags, " sse2 ")) ++ { ++ strcat(cpu, " /arch:SSE2"); ++ } + else if (strstr(flags, " sse ")) + { +- cpu = "c3-2"; ++ strcat(cpu, " /arch:SSE"); + } +- #endif + +- if (!cpu) ++ #ifdef __x86_64__ ++ if (strstr(flags, " lm ")) //64 bit + { +- cpu = "winchip-c6"; ++ if (!strcmp(vendor_id, "AuthenticAMD") || strstr(model_name, "AMD")) ++ { ++ strcat(cpu, " /favor:AMD64"); ++ } ++ else if (!strcmp(vendor_id, "GenuineIntel") || strstr(model_name, "Intel")) ++ { ++ strcat(cpu, " /favor:EM64T"); ++ } + } ++ #endif ++ #endif + } +- #endif +- #endif +- +- if (!cpu) ++ else + { +- int family = atoi(cpu_family); +- if (family > 5) +- { +- cpu = "i686"; +- } +- else if (family == 5) +- { +- cpu = "i586"; +- } +- else if (family == 4) +- { +- cpu = "i486"; +- } +- else +- { +- cpu = "i386"; +- } ++ puts("Could not open /proc/cpuinfo, and CPUID instruction not available."); ++ return(1); + } +- puts(cpu); +- } +- else +- { +- puts("Could not open /proc/cpuinfo, and CPUID instruction not available."); +- return(1); + } ++ puts(cpu); + + return(0); + } diff --git a/games-emulation/zsnes/zsnes-1.51-r1.ebuild b/games-emulation/zsnes/zsnes-1.51-r1.ebuild index d90cdcb953cb..60fb8a20eb7b 100644 --- a/games-emulation/zsnes/zsnes-1.51-r1.ebuild +++ b/games-emulation/zsnes/zsnes-1.51-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/games-emulation/zsnes/zsnes-1.51-r1.ebuild,v 1.1 2007/06/25 21:38:06 drizzt Exp $ +# $Header: /var/cvsroot/gentoo-x86/games-emulation/zsnes/zsnes-1.51-r1.ebuild,v 1.2 2007/07/22 22:20:21 drizzt Exp $ inherit eutils autotools flag-o-matic toolchain-funcs games @@ -31,6 +31,8 @@ src_unpack() { # Fixing compilation without libpng installed epatch "${FILESDIR}"/${P}-libpng.patch + # Fix bug #186111 + epatch "${FILESDIR}"/${P}-archopt-july-23-update.patch # Remove hardcoded CFLAGS and LDFLAGS if use custom-cflags; then |