aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2016-10-10 23:38:19 -0700
committerGitHub <noreply@github.com>2016-10-10 23:38:19 -0700
commit5743e32ad8cc404ba8b2b240121670a12d58f783 (patch)
tree770c930550e3a65d21c3b403b6c2aaaa7b3ada8e
parentaf8ceb086ca73a6a8a53a64d977b9d7fb9772685 (diff)
parent9fa54bb205363820b571729fbd2ce6b616f06f08 (diff)
downloadvcpkg-5743e32ad8cc404ba8b2b240121670a12d58f783.tar.gz
vcpkg-5743e32ad8cc404ba8b2b240121670a12d58f783.zip
Merge pull request #135 from sdcb/ChakraCore2
Add ChakraCore
-rw-r--r--ports/chakracore/CONTROL3
-rw-r--r--ports/chakracore/portfile.cmake48
2 files changed, 51 insertions, 0 deletions
diff --git a/ports/chakracore/CONTROL b/ports/chakracore/CONTROL
new file mode 100644
index 000000000..c0ea61800
--- /dev/null
+++ b/ports/chakracore/CONTROL
@@ -0,0 +1,3 @@
+Source: chakracore
+Version: 1.2.0.0
+Description: Core part of the Chakra Javascript engine \ No newline at end of file
diff --git a/ports/chakracore/portfile.cmake b/ports/chakracore/portfile.cmake
new file mode 100644
index 000000000..6780b6b55
--- /dev/null
+++ b/ports/chakracore/portfile.cmake
@@ -0,0 +1,48 @@
+include(vcpkg_common_functions)
+find_program(POWERSHELL powershell)
+
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ChakraCore-1.2.0.0)
+vcpkg_download_distfile(ARCHIVE_FILE
+ URLS "https://github.com/Microsoft/ChakraCore/archive/v1.2.0.0.tar.gz"
+ FILENAME "ChakraCore-1.2.0.0.tar.gz"
+ SHA512 53e487028a30605a4e2589c40b65da060ca4884617fdba8877557e4db75f911be4433d260132cce3526647622bdc742a0aacda1443a16dfed3d3fdd442539528
+)
+vcpkg_extract_source_archive(${ARCHIVE_FILE})
+
+message(STATUS "Patching JavascriptPromise.cpp for https://github.com/Microsoft/ChakraCore/issues/1429")
+vcpkg_execute_required_process(
+ COMMAND ${POWERSHELL} -command (gc lib/runtime/library/JavascriptPromise.cpp -encoding utf7) -replace('«', '^<^<') -replace('»', '^>^>') | Set-Content lib/runtime/library/JavascriptPromise.cpp
+ WORKING_DIRECTORY ${SOURCE_PATH}
+)
+message(STATUS "Patching done.")
+
+vcpkg_build_msbuild(
+ PROJECT_PATH ${SOURCE_PATH}/Build/Chakra.Core.sln
+)
+
+file(INSTALL
+ ${SOURCE_PATH}/lib/jsrt/ChakraCore.h
+ ${SOURCE_PATH}/lib/jsrt/ChakraCommon.h
+ DESTINATION ${CURRENT_PACKAGES_DIR}/include
+)
+file(INSTALL
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.dll
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.pdb
+ DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin
+)
+file(INSTALL
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/Chakracore.lib
+ DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib
+)
+file(INSTALL
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.dll
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.pdb
+ DESTINATION ${CURRENT_PACKAGES_DIR}/bin
+)
+file(INSTALL
+ ${SOURCE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/Chakracore.lib
+ DESTINATION ${CURRENT_PACKAGES_DIR}/lib
+)
+file(INSTALL
+ ${SOURCE_PATH}/LICENSE.txt
+ DESTINATION ${CURRENT_PACKAGES_DIR}/share/ChakraCore RENAME copyright)