diff --git a/CMakeLists.txt b/CMakeLists.txt index f594bd2169..532232d0c2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -312,59 +312,59 @@ endmacro() # Commented-out files are files that don't compile # and were disabled in the original MSVC project anyway -set(CommonExtra) -if(ARM) - set(CommonExtra ${CommonExtra} - Common/ArmCPUDetect.cpp) -if(ARMV7) - set(CommonExtra ${CommonExtra} - Common/ColorConvNEON.cpp) -endif() -elseif(X86) - set(CommonExtra ${CommonExtra} - Common/ABI.cpp - Common/ABI.h - Common/CPUDetect.cpp - Common/CPUDetect.h - Common/Thunk.cpp - Common/Thunk.h - Common/x64Analyzer.cpp - Common/x64Analyzer.h - Common/x64Emitter.cpp - Common/x64Emitter.h) -elseif(MIPS) - set(CommonExtra ${CommonExtra} - Common/MipsCPUDetect.cpp - Common/MipsEmitter.cpp - Common/MipsEmitter.h) -else() - set(CommonExtra ${CommonExtra} +set(CommonX86 + Common/ABI.cpp + Common/ABI.h + Common/CPUDetect.cpp + Common/CPUDetect.h + Common/Thunk.cpp + Common/Thunk.h + Common/x64Analyzer.cpp + Common/x64Analyzer.h + Common/x64Emitter.cpp + Common/x64Emitter.h) +source_group(x86 FILES ${CommonX86}) + +set(CommonARM + Common/ArmCPUDetect.cpp + Common/ArmEmitter.h + Common/ArmEmitter.cpp + Common/ColorConvNEON.cpp) +source_group(ARM FILES ${CommonARM}) + +set(CommonARM64 + Common/Arm64Emitter.h + Common/Arm64Emitter.cpp + Common/ArmEmitter.h + Common/ArmEmitter.cpp + Core/Util/DisArm64.cpp) +source_group(ARM64 FILES ${CommonARM64}) + +set(CommonMIPS + Common/MipsCPUDetect.cpp + Common/MipsEmitter.cpp + Common/MipsEmitter.h) +source_group(MIPS FILES ${CommonMIPS}) + +if(NOT (X86 OR ARM OR MIPS)) + set(CommonFake Common/FakeCPUDetect.cpp Common/FakeEmitter.h) + source_group(Fake FILES ${CommonFake}) endif() -if(UNITTEST) -set(CommonExtra ${CommonExtra} - Common/Arm64Emitter.h - Common/Arm64Emitter.cpp - Common/ArmEmitter.h - Common/ArmEmitter.cpp - Core/Util/DisArm64.cpp) -else() -#Blackberry appears to depend on this being here, should clean it up. -set(CommonExtra ${CommonExtra} - Common/ArmEmitter.h - Common/ArmEmitter.cpp) -endif() - -if(WIN32) - set(CommonExtra ${CommonExtra} - Common/stdafx.cpp - Common/stdafx.h) -endif() +set(CommonWindows + Common/stdafx.cpp + Common/stdafx.h) +source_group(Windows FILES ${CommonWindows}) add_library(Common STATIC - ${CommonExtra} + ${CommonX86} + ${CommonARM} + ${CommonARM64} + ${CommonMIPS} + ${CommonFake} + ${CommonWindows} Common/ColorConv.cpp Common/ColorConv.h Common/ChunkFile.cpp diff --git a/Common/ABI.cpp b/Common/ABI.cpp index efd42c7335..10b864f006 100644 --- a/Common/ABI.cpp +++ b/Common/ABI.cpp @@ -15,6 +15,8 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ +#if defined(_M_IX86) || defined(_M_X64) + #include "x64Emitter.h" #include "ABI.h" @@ -679,4 +681,4 @@ void XEmitter::ABI_RestoreStack(unsigned int /*frameSize*/) { #endif // 32bit - +#endif // defined(_M_IX86) || defined(_M_X64) diff --git a/Common/Arm64Emitter.cpp b/Common/Arm64Emitter.cpp index 16bde40477..5ff6120ff0 100644 --- a/Common/Arm64Emitter.cpp +++ b/Common/Arm64Emitter.cpp @@ -18,6 +18,10 @@ #include "CommonTypes.h" #include "CPUDetect.h" +#ifdef IOS +#include +#endif + namespace Arm64Gen { diff --git a/Common/ArmCPUDetect.cpp b/Common/ArmCPUDetect.cpp index cf1e3a7445..909e134640 100644 --- a/Common/ArmCPUDetect.cpp +++ b/Common/ArmCPUDetect.cpp @@ -15,6 +15,8 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ +#if defined(__arm__) || defined(__aarch64__) + #include #include "Common.h" #include "CPUDetect.h" @@ -299,3 +301,5 @@ std::string CPUInfo::Summarize() return sum; } + +#endif // defined(__arm__) || defined(__aarch64__) diff --git a/Common/CPUDetect.cpp b/Common/CPUDetect.cpp index 7a974897b3..97f39385da 100644 --- a/Common/CPUDetect.cpp +++ b/Common/CPUDetect.cpp @@ -15,6 +15,8 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ +#if defined(_M_IX86) || defined(_M_X64) + #ifdef ANDROID #include #include @@ -285,3 +287,5 @@ std::string CPUInfo::Summarize() if (bLongMode) sum += ", 64-bit support"; return sum; } + +#endif // defined(_M_IX86) || defined(_M_X64) diff --git a/Common/ColorConvNEON.cpp b/Common/ColorConvNEON.cpp index 4108214ce3..aa007e16eb 100644 --- a/Common/ColorConvNEON.cpp +++ b/Common/ColorConvNEON.cpp @@ -15,15 +15,13 @@ // Official git repository and contact information can be found at // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. +#if defined(__arm__) || defined(__aarch64__) + #include #include "ColorConvNEON.h" #include "Common.h" #include "CPUDetect.h" -#if !defined(ARM) && !defined(ARM64) -#error Should not be compiled on non-ARM. -#endif - // TODO: More NEON color conversion funcs. void ConvertRGBA4444ToABGR4444NEON(u16 *dst, const u16 *src, const u32 numPixels) { @@ -109,3 +107,5 @@ void ConvertRGB565ToBGR565NEON(u16 *dst, const u16 *src, const u32 numPixels) { ConvertRGB565ToBGR565Basic(dstp, srcp, numPixels - simdable); } } + +#endif // defined(__arm__) || defined(__aarch64__) diff --git a/Common/MipsCPUDetect.cpp b/Common/MipsCPUDetect.cpp index 4802f1f3d8..827605ba1f 100644 --- a/Common/MipsCPUDetect.cpp +++ b/Common/MipsCPUDetect.cpp @@ -15,6 +15,8 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ +#ifdef __mips__ + #include "Common.h" #include "CPUDetect.h" #include "StringUtils.h" @@ -196,3 +198,5 @@ std::string CPUInfo::Summarize() return sum; } + +#endif // __mips__ diff --git a/Common/stdafx.cpp b/Common/stdafx.cpp index 384d3d546b..0348c60f8d 100644 --- a/Common/stdafx.cpp +++ b/Common/stdafx.cpp @@ -2,7 +2,10 @@ // Common.pch will be the pre-compiled header // stdafx.obj will contain the pre-compiled type information +#ifdef _WIN32 + #include "stdafx.h" +#endif // TODO: reference any additional headers you need in STDAFX.H // and not in this file