From 17fccb8c5d74dbf23d2f97ad86869a0feceb41c6 Mon Sep 17 00:00:00 2001
From: Yuri Kunde Schlesner <yuriks@yuriks.net>
Date: Sun, 11 Dec 2016 14:59:28 -0800
Subject: [PATCH] Externals: Add Xbyak

---
 .gitmodules              | 3 +++
 CMakeLists.txt           | 2 ++
 externals/CMakeLists.txt | 8 ++++++++
 externals/xbyak          | 1 +
 4 files changed, 14 insertions(+)
 create mode 100644 externals/CMakeLists.txt
 create mode 160000 externals/xbyak

diff --git a/.gitmodules b/.gitmodules
index f498a60de..dbb1b0dd3 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -16,3 +16,6 @@
 [submodule "dynarmic"]
     path = externals/dynarmic
     url = https://github.com/MerryMage/dynarmic.git
+[submodule "xbyak"]
+    path = externals/xbyak
+    url = https://github.com/herumi/xbyak.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2c00690c0..bcee98a5f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -256,6 +256,8 @@ set(INI_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/externals/inih")
 include_directories(${INI_PREFIX})
 add_subdirectory(${INI_PREFIX})
 
+add_subdirectory(externals)
+
 option(DYNARMIC_TESTS OFF)
 add_subdirectory(externals/dynarmic)
 
diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt
new file mode 100644
index 000000000..7e4b05ffc
--- /dev/null
+++ b/externals/CMakeLists.txt
@@ -0,0 +1,8 @@
+# Xbyak
+if (ARCHITECTURE_x86_64)
+    add_library(xbyak INTERFACE)
+    target_include_directories(xbyak INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/xbyak/xbyak)
+    if (NOT MSVC)
+        target_compile_options(xbyak INTERFACE -fno-operator-names)
+    endif()
+endif()
diff --git a/externals/xbyak b/externals/xbyak
new file mode 160000
index 000000000..fe4765d2f
--- /dev/null
+++ b/externals/xbyak
@@ -0,0 +1 @@
+Subproject commit fe4765d2fed4e990ea5e9661b6bc5fc9bf48ec16