aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJannik Vogel <email@jannikvogel.de>2017-12-04 01:28:09 +0100
committerJannik Vogel <email@jannikvogel.de>2017-12-09 00:09:23 +0100
commit8ea6a9818a10a6eb84350cb4855d4c8c2bae9f8e (patch)
tree036f378c662273844775b8767a9764e1d2bd8901
parent583ee9ee91a0d7abb5487580faf3ff1f302a642d (diff)
downloadvcpkg-8ea6a9818a10a6eb84350cb4855d4c8c2bae9f8e.tar.gz
vcpkg-8ea6a9818a10a6eb84350cb4855d4c8c2bae9f8e.zip
[unicorn] Adding unicorn port
-rw-r--r--ports/unicorn/CONTROL3
-rw-r--r--ports/unicorn/portfile.cmake47
2 files changed, 50 insertions, 0 deletions
diff --git a/ports/unicorn/CONTROL b/ports/unicorn/CONTROL
new file mode 100644
index 000000000..ad91f82b5
--- /dev/null
+++ b/ports/unicorn/CONTROL
@@ -0,0 +1,3 @@
+Source: unicorn
+Version: 2017-12-06-bc34c36eaeca0f4fc672015d24ce3efbcc81d6e4
+Description: Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework
diff --git a/ports/unicorn/portfile.cmake b/ports/unicorn/portfile.cmake
new file mode 100644
index 000000000..a8d4c24dc
--- /dev/null
+++ b/ports/unicorn/portfile.cmake
@@ -0,0 +1,47 @@
+include(vcpkg_common_functions)
+
+if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore)
+ message(FATAL_ERROR "WindowsStore not supported")
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO unicorn-engine/unicorn
+ REF bc34c36eaeca0f4fc672015d24ce3efbcc81d6e4
+ SHA512 2edd31097a38d4270ae36f3f54b4c9385e088f85465d3c4fc7cd95162e5d4ba72b8b7d305deeb535c69dcbc15de7364150530887b29b363e087aadacce3f2f41
+ HEAD_REF master
+)
+
+if(VCPKG_TARGET_ARCHITECTURE STREQUAL x86)
+ set(UNICORN_PLATFORM "Win32")
+elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL x64)
+ set(UNICORN_PLATFORM "x64")
+else()
+ message(FATAL_ERROR "Unsupported architecture")
+endif()
+
+vcpkg_build_msbuild(
+ PROJECT_PATH "${SOURCE_PATH}/msvc/unicorn.sln"
+ PLATFORM "${UNICORN_PLATFORM}"
+)
+
+if(VCPKG_CRT_LINKAGE STREQUAL dynamic)
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Release/unicorn.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/lib")
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Release/unicorn.dll" DESTINATION "${CURRENT_PACKAGES_DIR}/bin")
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Debug/unicorn.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib")
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Debug/unicorn.dll" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin")
+else()
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Release/unicorn_static.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/lib")
+ file(INSTALL "${SOURCE_PATH}/msvc/${UNICORN_PLATFORM}/Debug/unicorn_static.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib")
+endif()
+
+file(
+ INSTALL "${SOURCE_PATH}/msvc/distro/include/unicorn"
+ DESTINATION "${CURRENT_PACKAGES_DIR}/include"
+ RENAME "unicorn"
+)
+file(
+ INSTALL "${SOURCE_PATH}/COPYING"
+ DESTINATION "${CURRENT_PACKAGES_DIR}/share/unicorn"
+ RENAME "copyright"
+)