Skip to content

Commit 22dda39

Browse files
committed
Add extensions build for Ubuntu and macOS
1 parent 109eb8b commit 22dda39

File tree

10 files changed

+163
-55
lines changed

10 files changed

+163
-55
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: macOS build with extensions
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
macos-build:
11+
runs-on: macos-latest
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Installing dependencies (Homebrew packages)
15+
run: |
16+
brew install sqlite
17+
brew install openssl
18+
brew install fcgi
19+
brew install mysql-client
20+
brew install gmp
21+
brew install zmq
22+
brew install leveldb
23+
brew install pcre
24+
- name: Installing dependency hiredis
25+
run: |
26+
git clone https://github.com/redis/hiredis.git
27+
cd hiredis
28+
git fetch --all --tags
29+
git checkout tags/v1.0.2
30+
cmake -B build -DCMAKE_BUILD_TYPE=Release
31+
cmake --build build
32+
sudo cmake --install build
33+
- name: Configure CMake
34+
run: |
35+
cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=Debug -DBUILD_EXTENSIONS=1
36+
- name: Build
37+
run: |
38+
cmake --build ${{ github.workspace }}/build
39+
- name: Running tests
40+
run: |
41+
${{ github.workspace }}/scripts/test.sh
42+
env:
43+
HOOK_HOME: ${{ github.workspace }}

.github/workflows/macos.yml renamed to .github/workflows/macos-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: macOS
1+
name: macOS build
22

33
on:
44
push:
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: macOS release
2+
3+
on:
4+
release:
5+
types:
6+
- created
7+
8+
jobs:
9+
macos-release:
10+
runs-on: macos-latest
11+
steps:
12+
- uses: actions/checkout@v2
13+
- name: Configure CMake and build for release
14+
run: ${{ github.workspace }}/scripts/pack.sh
15+
- name: Upload asset
16+
uses: shogo82148/actions-upload-release-asset@v1
17+
with:
18+
upload_url: ${{ github.event.release.upload_url }}
19+
asset_path: ${{ github.workspace }}/package/*.tar.gz
20+
overwrite: true

.github/workflows/release.yml

Lines changed: 0 additions & 49 deletions
This file was deleted.
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Ubuntu build with extensions
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
ubuntu-build-extensions:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Installing dependencies (APT packages)
15+
run: |
16+
sudo apt-get update -y
17+
sudo apt-get install -y libsqlite3-dev
18+
sudo apt-get install -y libcurl4-openssl-dev
19+
sudo apt-get install -y libmysqlclient-dev
20+
sudo apt-get install -y libgmp3-dev
21+
sudo apt-get install -y libzmq3-dev
22+
sudo apt-get install -y libleveldb-dev
23+
sudo apt-get install -y libpcre3-dev
24+
- name: Installing dependency hiredis
25+
run: |
26+
git clone https://github.com/redis/hiredis.git
27+
cd hiredis
28+
git fetch --all --tags
29+
git checkout tags/v1.0.2
30+
cmake -B build -DCMAKE_BUILD_TYPE=Release
31+
cmake --build build
32+
sudo cmake --install build
33+
- name: Installing dependency fcgi2
34+
run: |
35+
git clone https://github.com/FastCGI-Archives/fcgi2.git
36+
cd fcgi2
37+
libtoolize && aclocal && automake --add-missing && autoconf
38+
./autogen.sh
39+
./configure
40+
make
41+
sudo make install
42+
- name: Configure CMake
43+
run: |
44+
cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=Debug -DBUILD_EXTENSIONS=1
45+
- name: Build
46+
run: |
47+
cmake --build ${{ github.workspace }}/build
48+
- name: Running tests
49+
run: |
50+
${{ github.workspace }}/scripts/test.sh
51+
env:
52+
HOOK_HOME: ${{ github.workspace }}

.github/workflows/ubuntu.yml renamed to .github/workflows/ubuntu-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Ubuntu
1+
name: Ubuntu build
22

33
on:
44
push:
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Ubuntu release
2+
3+
on:
4+
release:
5+
types:
6+
- created
7+
8+
jobs:
9+
ubuntu-release:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v2
13+
- name: Configure CMake and build for release
14+
run: ${{ github.workspace }}/scripts/pack.sh
15+
- name: Upload asset
16+
uses: shogo82148/actions-upload-release-asset@v1
17+
with:
18+
upload_url: ${{ github.event.release.upload_url }}
19+
asset_path: ${{ github.workspace }}/package/*.tar.gz
20+
overwrite: true

.github/workflows/windows.yml renamed to .github/workflows/windows-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Windows
1+
name: Windows build
22

33
on:
44
push:
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Windows release
2+
3+
on:
4+
release:
5+
types:
6+
- created
7+
8+
jobs:
9+
windows-release:
10+
runs-on: windows-latest
11+
steps:
12+
- uses: actions/checkout@v2
13+
- name: Add msbuild to PATH
14+
uses: microsoft/setup-msbuild@v1.1
15+
- name: Configure CMake and build for release
16+
run: ${{ github.workspace }}/scripts/pack.bat
17+
- name: Upload asset
18+
uses: shogo82148/actions-upload-release-asset@v1
19+
with:
20+
upload_url: ${{ github.event.release.upload_url }}
21+
asset_path: ${{ github.workspace }}/package/*.tar.gz
22+
overwrite: true

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

2-
[![Ubuntu](https://github.com/hook-lang/hook/actions/workflows/ubuntu.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/ubuntu.yml)
3-
[![macOS](https://github.com/hook-lang/hook/actions/workflows/macos.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/macos.yml)
4-
[![Windows](https://github.com/hook-lang/hook/actions/workflows/windows.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/windows.yml)
2+
[![Ubuntu](https://github.com/hook-lang/hook/actions/workflows/ubuntu-build.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/ubuntu-build.yml)
3+
[![macOS](https://github.com/hook-lang/hook/actions/workflows/macos-build.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/macos-build.yml)
4+
[![Windows](https://github.com/hook-lang/hook/actions/workflows/windows-build.yml/badge.svg)](https://github.com/hook-lang/hook/actions/workflows/windows-build.yml)
55
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/b58fa787c8cc480091a8e976164ee203)](https://app.codacy.com/gh/hook-lang/hook/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
66
[![codecov](https://codecov.io/gh/hook-lang/hook/graph/badge.svg?token=oRSpRBTqp8)](https://codecov.io/gh/hook-lang/hook)
77

0 commit comments

Comments
 (0)