4949
5050 - name : Setup Variables
5151 id : vars
52+ env :
53+ LLVM_VERSION_MAJOR : ${{ steps.version.outputs.major }}
54+ LLVM_VERSION_PATCH : ${{ steps.version.outputs.patch }}
5255 run : |
5356 # C++ ABI:
5457 # 18.1.0 we aren't doing ABI checks.
@@ -57,14 +60,14 @@ jobs:
5760 # 18.1.0 We want to check 17.0.x
5861 # 18.1.1 We want to check 18.1.0
5962 echo "BASELINE_VERSION_MINOR=1" >> "$GITHUB_OUTPUT"
60- if [ ${{ steps.version.outputs.patch }} -eq 0 ]; then
63+ if [ $LLVM_VERSION_PATCH -eq 0 ]; then
6164 {
62- echo "BASELINE_VERSION_MAJOR=$(( ${{ steps.version.outputs.major }} - 1))"
65+ echo "BASELINE_VERSION_MAJOR=$(( $LLVM_VERSION_MAJOR - 1))"
6366 echo "ABI_HEADERS=llvm-c"
6467 } >> "$GITHUB_OUTPUT"
6568 else
6669 {
67- echo "BASELINE_VERSION_MAJOR=${{ steps.version.outputs.major }} "
70+ echo "BASELINE_VERSION_MAJOR=$LLVM_VERSION_MAJOR "
6871 echo "ABI_HEADERS=."
6972 } >> "$GITHUB_OUTPUT"
7073 fi
@@ -107,17 +110,21 @@ jobs:
107110 ninja -C build install-LLVM
108111 ninja -C build install-llvm-headers
109112 - name : Dump ABI
113+ env :
114+ REF : ${{ matrix.ref }}
115+ ABI_HEADERS : ${{ needs.abi-dump-setup.outputs.ABI_HEADERS }}
116+ LLVM_VERSION_MAJOR : ${{ matrix.llvm_version_major }}
110117 run : |
111- if [ "${{ needs.abi-dump-setup.outputs. ABI_HEADERS }} " = "llvm-c" ]; then
118+ if [ "$ABI_HEADERS" = "llvm-c" ]; then
112119 nm ./install/lib/libLLVM.so | awk "/T _LLVM/ || /T LLVM/ { print $3 }" | sort -u | sed -e "s/^_//g" | cut -d ' ' -f 3 > llvm.symbols
113120 # Even though the -symbols-list option doesn't seem to filter out the symbols, I believe it speeds up processing, so I'm leaving it in.
114121 export EXTRA_ARGS="-symbols-list llvm.symbols"
115122 else
116123 touch llvm.symbols
117124 fi
118- abi-dumper $EXTRA_ARGS -lver ${{ matrix.ref }} -skip-cxx -public-headers ./install/include/${{ needs.abi-dump-setup.outputs. ABI_HEADERS }} -o ${{ matrix.ref }} .abi ./install/lib/libLLVM.so
125+ abi-dumper $EXTRA_ARGS -lver $REF -skip-cxx -public-headers ./install/include/$ABI_HEADERS -o $$REF .abi ./install/lib/libLLVM.so
119126 # Remove symbol versioning from dumps, so we can compare across major versions.
120- sed -i ' s/LLVM_${{ matrix.llvm_version_major }} /LLVM_NOVERSION/' ${{ matrix.ref }} .abi
127+ sed -i " s/LLVM_$LLVM_VERSION_MAJOR /LLVM_NOVERSION/" $REF .abi
121128 - name : Upload ABI file
122129 uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
123130 with :
@@ -157,6 +164,8 @@ jobs:
157164 path : symbol-list
158165
159166 - name : Compare ABI
167+ env :
168+ ABI_HEADERS : ${{ needs.abi-dump-setup.outputs.ABI_HEADERS }}
160169 run : |
161170 if [ -s symbol-list/llvm.symbols ]; then
162171 # This option doesn't seem to work with the ABI dumper, so passing it here.
@@ -165,7 +174,7 @@ jobs:
165174 # FIXME: Reading of gzip'd abi files on the GitHub runners stop
166175 # working some time in March of 2021, likely due to a change in the
167176 # runner's environment.
168- abi-compliance-checker $EXTRA_ARGS -l libLLVM.so -old build-baseline/*.abi -new build-latest/*.abi || test "${{ needs.abi-dump-setup.outputs. ABI_HEADERS }} " = "llvm-c"
177+ abi-compliance-checker $EXTRA_ARGS -l libLLVM.so -old build-baseline/*.abi -new build-latest/*.abi || test "$ABI_HEADERS" = "llvm-c"
169178 - name : Upload ABI Comparison
170179 if : always()
171180 uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
0 commit comments