Skip to content

[Src && Example && CI/CD] Make it adapt to UNIX, fix some bugs and implement RPC module #267

[Src && Example && CI/CD] Make it adapt to UNIX, fix some bugs and implement RPC module

[Src && Example && CI/CD] Make it adapt to UNIX, fix some bugs and implement RPC module #267

Workflow file for this run

name: C/C++ CI
on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: init
run: mkdir build
- name: Install Protobuf
run: sudo apt-get install libtool pkg-config && sudo apt-get install protobuf-compiler libprotobuf-dev
- name: Install gtest manually
run: sudo apt-get install libgtest-dev && cd /usr/src/gtest && sudo cmake CMakeLists.txt && sudo make && sudo cp lib/*.a /usr/lib && sudo ln -s /usr/lib/libgtest.a /usr/local/lib/libgtest.a && sudo ln -s /usr/lib/libgtest_main.a /usr/local/lib/libgtest_main.a
- name: Install llhttp manually
working-directory: ${{github.workspace}}/..
run: git clone https://github.com/nodejs/llhttp.git && cd llhttp && sudo apt-get install npm && npm install && make && sudo make install
- name: cmake
working-directory: build
run: |
export CMAKE_PREFIX_PATH=/usr/local/:/usr/:$CMAKE_PREFIX_PATH:/
cmake ..
- name: make
working-directory: build
run: make
- name: gtest
working-directory: ${{github.workspace}}/build/output/bin
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: |
for unittest in `ls *unittest`
do
./${unittest}
done