Added macos build action
This commit is contained in:
6
.github/workflows/build.yml
vendored
6
.github/workflows/build.yml
vendored
@@ -1,4 +1,4 @@
|
|||||||
name: build
|
name: Linux
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@@ -8,6 +8,8 @@ on:
|
|||||||
- 'util/**'
|
- 'util/**'
|
||||||
- 'uml/**'
|
- 'uml/**'
|
||||||
- '**.md'
|
- '**.md'
|
||||||
|
- '**.svg'
|
||||||
|
- '**.png'
|
||||||
branches-ignore:
|
branches-ignore:
|
||||||
- 'noactions/*'
|
- 'noactions/*'
|
||||||
pull_request:
|
pull_request:
|
||||||
@@ -30,6 +32,8 @@ jobs:
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
- name: Update package database
|
- name: Update package database
|
||||||
run: sudo apt -y update
|
run: sudo apt -y update
|
||||||
|
- name: ccache
|
||||||
|
uses: hendrikmuhs/ccache-action@v1.2
|
||||||
- name: Install deps
|
- name: Install deps
|
||||||
run: sudo apt -y install git make pkg-config gcc-11 g++-11 ccache cmake libyaml-cpp-dev llvm-15 clang-15 libclang-15-dev libclang-cpp15-dev clang-format-15 lcov zlib1g-dev libunwind-dev libdw-dev
|
run: sudo apt -y install git make pkg-config gcc-11 g++-11 ccache cmake libyaml-cpp-dev llvm-15 clang-15 libclang-15-dev libclang-cpp15-dev clang-format-15 lcov zlib1g-dev libunwind-dev libdw-dev
|
||||||
- name: Select g++ version
|
- name: Select g++ version
|
||||||
|
|||||||
49
.github/workflows/macos.yml
vendored
Normal file
49
.github/workflows/macos.yml
vendored
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
name: macOS
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
paths-ignore:
|
||||||
|
- 'docs/**'
|
||||||
|
- 'packaging/**'
|
||||||
|
- 'util/**'
|
||||||
|
- 'uml/**'
|
||||||
|
- '**.md'
|
||||||
|
- '**.svg'
|
||||||
|
- '**.png'
|
||||||
|
branches-ignore:
|
||||||
|
- 'noactions/*'
|
||||||
|
pull_request:
|
||||||
|
paths-ignore:
|
||||||
|
- 'docs/**'
|
||||||
|
- 'packaging/**'
|
||||||
|
- 'util/**'
|
||||||
|
- 'uml/**'
|
||||||
|
- '**.md'
|
||||||
|
- '**.svg'
|
||||||
|
- '**.png'
|
||||||
|
branches-ignore:
|
||||||
|
- 'noactions/*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-macos:
|
||||||
|
name: Build and test on macos
|
||||||
|
runs-on: macos-14
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: ccache
|
||||||
|
uses: hendrikmuhs/ccache-action@v1.2
|
||||||
|
|
||||||
|
- name: Install dependencies using homebrew
|
||||||
|
run: brew install llvm@18 ninja yaml-cpp cmake ccache
|
||||||
|
|
||||||
|
- name: Build and test
|
||||||
|
run: CC=/opt/homebrew/opt/llvm/bin/clang CXX=/opt/homebrew/opt/llvm/bin/clang++ CMAKE_PREFIX=/opt/homebrew/opt/llvm/lib/cmake/llvm/ CMAKE_GENERATOR=Ninja CMAKE_EXE_LINKER_FLAGS="-L/opt/homebrew/opt/llvm/lib/c++ -Wl,-rpath,/opt/homebrew/opt/llvm/lib/c++" make test
|
||||||
|
|
||||||
|
- name: Print build version
|
||||||
|
run: debug/src/clang-uml --version
|
||||||
|
|
||||||
|
- name: Print help
|
||||||
|
run: debug/src/clang-uml --help
|
||||||
@@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
# C++ UML diagram generator based on Clang
|
# C++ UML diagram generator based on Clang
|
||||||
|
|
||||||
[](https://github.com/bkryza/clang-uml/actions)
|
[](https://github.com/bkryza/clang-uml/actions)
|
||||||
|
[](https://github.com/bkryza/clang-uml/actions)
|
||||||
[](https://codecov.io/gh/bkryza/clang-uml)
|
[](https://codecov.io/gh/bkryza/clang-uml)
|
||||||
[](https://github.com/bkryza/clang-uml/releases)
|
[](https://github.com/bkryza/clang-uml/releases)
|
||||||
[](https://github.com/bkryza/clang-uml/releases)
|
[](https://github.com/bkryza/clang-uml/releases)
|
||||||
|
|||||||
@@ -122,8 +122,9 @@ make install DESTDIR=/opt/clang-uml
|
|||||||
export PATH=$PATH:$PWD/release
|
export PATH=$PATH:$PWD/release
|
||||||
```
|
```
|
||||||
|
|
||||||
#### macos
|
#### macOS
|
||||||
|
|
||||||
|
On Intel-based macOS:
|
||||||
```bash
|
```bash
|
||||||
brew install ccache cmake llvm yaml-cpp
|
brew install ccache cmake llvm yaml-cpp
|
||||||
|
|
||||||
@@ -134,6 +135,17 @@ LLVM_VERSION=16 make release
|
|||||||
CMAKE_PREFIX=/usr/local/opt/llvm/lib/cmake/llvm make release
|
CMAKE_PREFIX=/usr/local/opt/llvm/lib/cmake/llvm make release
|
||||||
```
|
```
|
||||||
|
|
||||||
|
On Arm-based macOS:
|
||||||
|
```bash
|
||||||
|
brew install ccache cmake llvm yaml-cpp
|
||||||
|
|
||||||
|
export CC=/opt/homebrew/opt/llvm/bin/clang
|
||||||
|
export CXX=/opt/homebrew/opt/llvm/bin/clang++
|
||||||
|
CMAKE_PREFIX=/usr/local/opt/llvm/lib/cmake/llvm CMAKE_EXE_LINKER_FLAGS="-L/opt/homebrew/opt/llvm/lib/c++ -Wl,-rpath,/opt/homebrew/opt/llvm/lib/c++" make release
|
||||||
|
```
|
||||||
|
> These paths will use the latest LLVM version installed by `brew`.
|
||||||
|
> If you want to use a specific version, you will need to adjust the paths.
|
||||||
|
|
||||||
#### Windows
|
#### Windows
|
||||||
|
|
||||||
##### Visual Studio native build
|
##### Visual Studio native build
|
||||||
|
|||||||
Reference in New Issue
Block a user