https://github.com/flier/install-hyperscan
Install Hyperscan for your build
https://github.com/flier/install-hyperscan
Last synced: 7 months ago
JSON representation
Install Hyperscan for your build
- Host: GitHub
- URL: https://github.com/flier/install-hyperscan
- Owner: flier
- License: apache-2.0
- Created: 2021-09-26T08:41:40.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-12-01T16:34:28.000Z (over 1 year ago)
- Last Synced: 2025-03-02T07:38:34.662Z (over 1 year ago)
- Size: 34.2 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# install-hyperscan
This action download, build and install [Hyperscan](https://github.com/intel/hyperscan/) library for your build.
## Usage
See [action.yml](action.yml) metadata and [ci.yml](https://github.com/flier/gohs/blob/master/.github/workflows/ci.yml) example.
### Basic
```yaml
jobs:
build-and-test:
runs-on: ubuntu-20.04
steps:
- uses: flier/install-hyperscan@v1
with:
hyperscan_version: 5.4.0 # The Hyperscan version to download (if necessary) and use.
pcre: 8.45 # The PCRE version to download (if necessary) and use to build Chimera.
install_dependencies: true
```
### Matrix Testing
```yaml
jobs:
build-and-test:
strategy:
matrix:
include:
- os: macos-latest
hyperscan: 5.4.0
pcre: 8.45
- os: ubuntu-20.04
hyperscan: 5.2.1
pcre: 8.45
- os: ubuntu-18.04
hyperscan: 4.7.0
pcre: 8.41
runs-on: ${{ matrix.os }}
steps:
- name: Install Hyperscan ${{ matrix.hyperscan }} with PCRE ${{ matrix.pcre }}
uses: flier/install-hyperscan@v1
with:
hyperscan_version: ${{ matrix.hyperscan }}
pcre_version: ${{ matrix.pcre }}
install_dependencies: true
```
### Cached
```yaml
jobs:
build-and-test:
runs-on: ubuntu-20.04
steps:
- name: Install Hyperscan ${{ matrix.hyperscan }} with PCRE ${{ matrix.pcre }}
if: steps.cache-hyperscan.outputs.cache-hit == false
uses: flier/install-hyperscan@v1
with:
hyperscan_version: 5.4.0
build_static_lib: on
install_prefix: ${{ github.workspace }}/dist/
install_dependencies: true
use_cache: true
```
## Inputs
### Parameters
| name | description | default |
| ----------------------------- | --------------------------------------------------------------------------------- | -------------- |
| `hyperscan_version` | The version of Hyperscan library. | 5.4.0 |
| `pcre_version` | The version of PCRE library. | 8.45 |
| `vectorscan` | Use Vectorscan instead of Hyperscan. | false |
| `install_dependencies` | Install dependencies for building. | Linux or MacOS |
| `src_dir` | The directory of Hyperscan source. | hyperscan_src |
| `build_type` | Define which kind of build to generate. | RelWithDebInfo |
| `build_static_lib` | Build Hyperscan as a static library. | on |
| `build_shared_lib` | Build Hyperscan as a shared library. | off |
| `build_static_and_shared_lib` | Build both static and shared Hyperscan libs. | off |
| `debug_output` | Enable very verbose debug output. | off |
| `install_prefix` | Install directory for install target | /usr/local |
| `use_cache` | Allows caching build outputs to improve execution time. | false |
| `cache_key` | An explicit key for restoring and saving the cache | |
| `upload_artifact` | Upload and share library between jobs and store data once a workflow is complete. | false |
## License
This project is licensed under either of Apache License ([LICENSE-APACHE](LICENSE-APACHE)) or MIT license ([LICENSE-MIT](LICENSE-MIT)) at your option.
## Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in Futures by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.