Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[chimera] Add new port #10132

Closed
wants to merge 32 commits into from
Closed
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
a008fd6
add a port for chimera
ZMZ91 Feb 19, 2020
35a2f76
1. remove deprecated include 2. clear buildtrees/ before installing 3…
ZMZ91 Feb 20, 2020
74d0462
refine port file
ZMZ91 Feb 20, 2020
dda6223
1. add Build-Depends: pcre 2. add usage
ZMZ91 Feb 20, 2020
6c0760d
add other build depdents by hyperscan
ZMZ91 Feb 20, 2020
33d2618
remove debugging messages
ZMZ91 Feb 21, 2020
a2b0db5
note that not support windows so far
ZMZ91 Feb 24, 2020
e8a39aa
Merge branch 'master' into feature/port/chimera
Feb 29, 2020
3d056bf
1. add Supports: linux|osx; 2. add chimera:arm64-windows=fail
Mar 3, 2020
75559e4
Merge branch 'master' of github.com:microsoft/vcpkg into feature/port…
Apr 14, 2020
2d8b684
Merge branch 'master' of github.com:microsoft/vcpkg into feature/port…
Jun 29, 2020
a4b9263
resolve conflicts from master
Jul 9, 2020
dd4c62d
update baseline
Jul 10, 2020
883d4af
update baseline
Jul 10, 2020
66060c7
update baseline
Jul 10, 2020
95a3f3b
use function vcpkg_from_github
Jul 10, 2020
1e85c17
Merge branch 'feature/port/chimera' of github.com:ZMZ91/vcpkg into fe…
Jul 10, 2020
79e33af
update baseline
Jul 10, 2020
4f2ff77
update to latest hyperscan
Jul 10, 2020
b0d270c
remove baseline rules due to Supports added in CONTROL
Jul 10, 2020
be34193
Revert baseline changes.
Jul 10, 2020
90e7ada
Revert baseline changes.
Jul 10, 2020
babc9b9
update due to JackBoosY's change
Jul 22, 2020
1fd9412
Update ports/chimera/CONTROL
JackBoosY Jul 23, 2020
74bf3d0
Update ports/chimera/CONTROL
JackBoosY Jul 28, 2020
06a0ae1
Update ports/chimera/portfile.cmake
JackBoosY Jul 28, 2020
707800c
[chimera] Fix unix build
Jul 31, 2020
498b0a7
[chimera] Fix include path
Aug 5, 2020
cd48b8a
Disable osx build
JackBoosY Aug 5, 2020
e136f08
[hyperscan chimera] fix C++ standard, and remove -Werror
strega-nil Aug 10, 2020
2822f98
remove Supports: !osx
strega-nil Aug 10, 2020
6b0d52c
Merge branch 'master' of github.com:microsoft/vcpkg into feature/port…
Sep 18, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions ports/chimera/CONTROL
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Source: chimera
Version: 5.2.1
Homepage: https://github.com/intel/hyperscan
Description: Chimera is a software regular expression matching engine that is a hybrid of Hyperscan and PCRE. The design goals of Chimera are to fully support PCRE syntax as well as to take advantage of the high performance nature of Hyperscan.
51 changes: 51 additions & 0 deletions ports/chimera/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@

set(CHIMERA_VERSION "5.2.1")
set(PCRE_VERSION "8.41")

file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR})

# download hyperscan source code which is required by and also contains chimera
vcpkg_download_distfile(ARCHIVE_HYPERSCAN
URLS "https://github.com/intel/hyperscan/archive/d79973efb1fcf5ed338122882c1f896829767fb6.zip"
JackBoosY marked this conversation as resolved.
Show resolved Hide resolved
FILENAME "d79973efb1fcf5ed338122882c1f896829767fb6.zip"
SHA512 8bf6e8c323ab3c4b3f26d871a9f89e666edba598925c99ad2f14b3e849792c51cb87bc30ad54008ec813603a9a7c94d689ad4344e1a45c10b2a891e434a678f3
)
# extract hyperscan source code which contains chimera code in a sub folder
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH CHIMERA_SOURCE_PATH
ARCHIVE ${ARCHIVE_HYPERSCAN}
REF ${CHIMERA_VERSION}
)

# downlaod pcre-8.41 source code which is required by chimera
vcpkg_download_distfile(ARCHIVE_PCRE
URLS "https://ftp.pcre.org/pub/pcre/pcre-8.41.zip"
FILENAME "pcre-8.41.zip"
SHA512 a3fd57090a5d9ce9d608aeecd59f42f04deea5b86a5c5899bdb25b18d8ec3a89b2b52b62e325c6485a87411eb65f1421604f80c3eaa653bd7dbab05ad22795ea
)

# extract pcre source code to hyperscan root
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH PCRE_SOURCE_PATH
ARCHIVE ${ARCHIVE_PCRE}
WORKING_DIRECTORY ${CHIMERA_SOURCE_PATH}
)

# rename the pcre source code folder to pcre-8.41 which is required by chimera
file(RENAME "${PCRE_SOURCE_PATH}" "${CHIMERA_SOURCE_PATH}/pcre-${PCRE_VERSION}")
message(STATUS "Source code copy done.")

ZMZ91 marked this conversation as resolved.
Show resolved Hide resolved
vcpkg_configure_cmake(
SOURCE_PATH ${CHIMERA_SOURCE_PATH}
PREFER_NINJA
)

message(STATUS "Cmake install starts ...")
vcpkg_install_cmake()
message(STATUS "Cmake install done.")
NancyLi1013 marked this conversation as resolved.
Show resolved Hide resolved

# remove debug dir
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug)

# Handle copyright
file(INSTALL ${CHIMERA_SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)