From bf95761d927b103a07b0fe139137009e67e6dd25 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sun, 27 Oct 2013 15:52:20 +0000 Subject: [PATCH 1/3] Install flash0 and lang into the build directory on Linux. --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index f9befcd0ae..a67c054865 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1282,6 +1282,7 @@ endif() # installs file(INSTALL ${NativeAssets} DESTINATION assets) +file(INSTALL flash0 lang DESTINATION .) # Fix CMake some Xcode settings. if(APPLE) From 95c8ee508907a1da589aaecd3767ea1dde7f58a1 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sun, 27 Oct 2013 15:52:40 +0000 Subject: [PATCH 2/3] Missing stddef library (Linux buildfix.) --- Common/ArmEmitter.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Common/ArmEmitter.cpp b/Common/ArmEmitter.cpp index 15d4572d23..dfecfc0587 100644 --- a/Common/ArmEmitter.cpp +++ b/Common/ArmEmitter.cpp @@ -20,6 +20,7 @@ #include #include +#include // For cache flushing on Symbian/iOS/Blackberry #ifdef __SYMBIAN32__ From 443c7197441bb14f4cface96ca9e1095a4c87ac9 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sun, 27 Oct 2013 16:39:53 +0000 Subject: [PATCH 3/3] Support i386 PIC Linux builds (for Qt.) --- Common/CPUDetect.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Common/CPUDetect.cpp b/Common/CPUDetect.cpp index 0aec27a983..19e557f9ea 100644 --- a/Common/CPUDetect.cpp +++ b/Common/CPUDetect.cpp @@ -57,13 +57,18 @@ void __cpuidex(int regs[4], int cpuid_leaf, int ecxval) } else { ELOG("CPUID %08x failed!", cpuid_leaf); } +#elif defined(__i386__) && defined(__PIC__) + asm ( + "xchgl %%ebx, %1;\n\t" + "cpuid;\n\t" + "xchgl %%ebx, %1;\n\t" + :"=a" (regs[0]), "=r" (regs[1]), "=c" (regs[2]), "=d" (regs[3]) + :"a" (cpuid_leaf), "c" (ecxval)); #else asm ( "cpuid;\n\t" - "movl %%ebx, %1;\n\t" - :"=a" (regs[0]), "=m" (regs[1]), "=c" (regs[2]), "=d" (regs[3]) - :"a" (cpuid_leaf), "c" (ecxval) - :"%ebx"); + :"=a" (regs[0]), "=b" (regs[1]), "=c" (regs[2]), "=d" (regs[3]) + :"a" (cpuid_leaf), "c" (ecxval)); #endif } void __cpuid(int regs[4], int cpuid_leaf)