demo-codelite #8
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: demo-codelite | |
| on: | |
| workflow_call: | |
| inputs: | |
| codelite-option: | |
| default: '-DWITH_MYSQL=1 -DWITH_POSTGRES=1' | |
| type: string | |
| llvm-version: | |
| default: '19' | |
| type: string | |
| wx-version: | |
| default: 'v3.2.8.1' | |
| type: string | |
| workflow_dispatch: | |
| inputs: | |
| codelite-option: | |
| default: '-DWITH_MYSQL=1 -DWITH_POSTGRES=1' | |
| type: string | |
| llvm-version: | |
| default: '19' | |
| type: string | |
| wx-version: | |
| default: 'v3.2.8.1' | |
| type: string | |
| jobs: | |
| linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout ccccc | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: recursive | |
| - name: Install premake & build ccccc | |
| uses: ./.github/actions/build-ccccc | |
| with: | |
| llvm-version: ${{ inputs.llvm-version }} | |
| # Codelite (with WxWidgets) | |
| - name: Checkout Codelite | |
| uses: actions/checkout@v6 | |
| with: | |
| repository: eranif/codelite | |
| submodules: recursive | |
| path: codelite | |
| - name: Checkout WxWidgets | |
| uses: actions/checkout@v6 | |
| with: | |
| repository: wxWidgets/wxWidgets | |
| ref: ${{ inputs.wx-version }} | |
| submodules: recursive | |
| path: codelite/wxWidgets | |
| - name: install dependencies | |
| run: sudo apt-get install build-essential cmake git libedit-dev libgtk-3-dev libhunspell-dev libsqlite3-dev libssh-dev pkg-config xterm libpcre2-dev libsqlite3-dev libssh-dev bison flex | |
| - name: build and install wxWidgets | |
| run: | | |
| mkdir -p codelite/wxWidgets/build-release | |
| cd codelite/wxWidgets/build-release | |
| ../configure --disable-debug_flag --with-gtk=3 --enable-stl | |
| make -j$(nproc) && sudo make install | |
| - name: build Codelite | |
| run: | | |
| mkdir codelite/build-release | |
| cd codelite/build-release | |
| cmake -DCMAKE_BUILD_TYPE=Release .. -DCOPY_WX_LIBS=1 ${{ inputs.codelite-options }} | |
| make -j$(nproc) | |
| - name: get codelite sha1 | |
| id: codelite_sha1 | |
| run: | | |
| cd codelite | |
| echo "sha1=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT | |
| # ccccc runs | |
| - name: run ccccc on Codelite | |
| env: | |
| CODELITE_SHA1: ${{steps.codelite_sha1.outputs.sha1}} | |
| run: | | |
| ./ccccc --exclude-directory=codelite/build-release --exclude-directory=codelite/submodules --exclude-directory=codelite/sdk --template-file=template/ccccc_html/template.tpl --source-root=codelite --source-root-url=https://github.com/eranif/codelite/blob/$CODELITE_SHA1 codelite/build-release/compile_commands.json > codelite-index.html | |
| - name: Upload index.html | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: codelite_ccccc | |
| path: | | |
| codelite-index.html |