Skip to content

Commit

Permalink
Add support for LLVM 18 (and use it by default)
Browse files Browse the repository at this point in the history
  • Loading branch information
aykevl committed May 18, 2024
1 parent f653163 commit 8fcd5e4
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 9 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,31 +10,31 @@ jobs:
runs-on: macos-latest
strategy:
matrix:
llvm: [14, 15, 16, 17]
llvm: [14, 15, 16, 17, 18]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.22'
- name: Update Homebrew
if: matrix.llvm == 17 # needed as long as LLVM 17 is still fresh
run: brew update
#- name: Update Homebrew
# if: matrix.llvm == 17 # needed as long as LLVM 17 is still fresh
# run: brew update
- name: Install LLVM
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install llvm@${{ matrix.llvm }}
- name: Test LLVM ${{ matrix.llvm }}
run:
go test -v -tags=llvm${{ matrix.llvm }}
- name: Test default LLVM
if: matrix.llvm == 17
if: matrix.llvm == 18
run:
go test -v
test-linux:
runs-on: ubuntu-20.04
strategy:
matrix:
llvm: [14, 15, 16, 17]
llvm: [14, 15, 16, 17, 18]
steps:
- name: Checkout
uses: actions/checkout@v4
Expand All @@ -52,6 +52,6 @@ jobs:
run:
go test -v -tags=llvm${{ matrix.llvm }}
- name: Test default LLVM
if: matrix.llvm == 17
if: matrix.llvm == 18
run:
go test -v
2 changes: 1 addition & 1 deletion llvm_config_darwin_llvm17.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//go:build !byollvm && darwin && !llvm14 && !llvm15 && !llvm16
//go:build !byollvm && darwin && llvm17

package llvm

Expand Down
15 changes: 15 additions & 0 deletions llvm_config_darwin_llvm18.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
//go:build !byollvm && darwin && !llvm14 && !llvm15 && !llvm16 && !llvm17

package llvm

// Automatically generated by `make config BUILDDIR=`, do not edit.

// #cgo amd64 CPPFLAGS: -I/usr/local/opt/llvm@18/include -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
// #cgo amd64 CXXFLAGS: -std=c++18
// #cgo amd64 LDFLAGS: -L/usr/local/opt/llvm@18/lib -Wl,-search_paths_first -Wl,-headerpad_max_install_names -lLLVM -lz -lm
// #cgo arm64 CPPFLAGS: -I/opt/homebrew/opt/llvm@18/include -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
// #cgo arm64 CXXFLAGS: -std=c++18
// #cgo arm64 LDFLAGS: -L/opt/homebrew/opt/llvm@18/lib -Wl,-search_paths_first -Wl,-headerpad_max_install_names -lLLVM -lz -lm
import "C"

type run_build_sh int
2 changes: 1 addition & 1 deletion llvm_config_linux_llvm17.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//go:build !byollvm && linux && !llvm14 && !llvm15 && !llvm16
//go:build !byollvm && linux && llvm17

package llvm

Expand Down
10 changes: 10 additions & 0 deletions llvm_config_linux_llvm18.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//go:build !byollvm && linux && !llvm14 && !llvm15 && !llvm16 && !llvm17

package llvm

// #cgo CPPFLAGS: -I/usr/include/llvm-18 -I/usr/include/llvm-c-18 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
// #cgo CXXFLAGS: -std=c++17
// #cgo LDFLAGS: -L/usr/lib/llvm-18/lib -lLLVM-18
import "C"

type run_build_sh int

0 comments on commit 8fcd5e4

Please sign in to comment.