Skip to content

Commit bad37bf

Browse files
Migrate third_party/ to git submodules.
This replaces third_party/absl/ and third_party/protobuf-lite/ with submodules checked out at specific versions for abseil-cpp, googletest, benchmark, and protobuf libraries. This change allows removing local code copies of absl and googltest functionality.
1 parent 2734490 commit bad37bf

File tree

183 files changed

+1559
-43316
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+1559
-43316
lines changed

.github/workflows/cifuzz.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
dry-run: false
2424
language: c++
2525
- name: Upload Crash
26-
uses: actions/upload-artifact@v3
26+
uses: actions/upload-artifact@v4
2727
if: failure() && steps.build.outcome == 'success'
2828
with:
2929
name: artifacts

.github/workflows/cmake.yml

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -14,63 +14,69 @@ permissions:
1414
jobs:
1515
build:
1616
strategy:
17+
fail-fast: false
1718
matrix:
18-
os: [ ubuntu-latest, ubuntu-20.04, windows-latest, macOS-11 ]
19-
arch: [ x64 ]
20-
include:
21-
- os: windows-latest
22-
arch: x86
19+
os: [ ubuntu-latest, ubuntu-24.04-arm, windows-latest, windows-11-arm, macos-latest ]
2320
runs-on: ${{ matrix.os }}
2421

2522
permissions:
2623
contents: write # svenstaro/upload-release-action
2724

2825
steps:
29-
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
30-
- uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1
26+
- uses: actions/checkout@v4
27+
with:
28+
submodules: 'recursive'
29+
- uses: actions/setup-python@v5
3130
with:
3231
python-version: '3.x'
33-
architecture: ${{matrix.arch}}
32+
# architecture: ${{runner.arch}}
33+
34+
- name: Config for Windows (x64)
35+
if: runner.os == 'Windows' && runner.arch == 'X64'
36+
run: |
37+
cmake -A x64 -B ${{github.workspace}}/build -DSPM_BUILD_TEST=ON -DBUILD_SHARED_LIBS=OFF -DSPM_ENABLE_SHARED=OFF -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/build/root
3438
35-
- name: Config for Windows
36-
if: runner.os == 'Windows'
39+
- name: Config for Windows (x64)
40+
if: runner.os == 'Windows' && runner.arch == 'ARM64'
3741
run: |
38-
if ("${{matrix.arch}}" -eq "x64") {
39-
$msbuildPlatform = "x64"
40-
} else {
41-
$msbuildPlatform = "Win32"
42-
}
43-
cmake -A $msbuildPlatform -B ${{github.workspace}}/build -DSPM_BUILD_TEST=ON -DSPM_ENABLE_SHARED=OFF -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/build/root
42+
cmake -A arm64 -B ${{github.workspace}}/build -DSPM_BUILD_TEST=ON -DBUILD_SHARED_LIBS=OFF -DSPM_ENABLE_SHARED=OFF -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/build/root
4443
4544
- name: Config for Unix
4645
if: runner.os != 'Windows'
47-
run: cmake -B ${{github.workspace}}/build -DSPM_BUILD_TEST=ON -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/build/root
48-
env:
49-
CMAKE_OSX_ARCHITECTURES: arm64;x86_64
46+
run: cmake -B ${{github.workspace}}/build -DSPM_BUILD_TEST=ON -DBUILD_SHARED_LIBS=OFF -DSPM_ENABLE_SHARED=OFF -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/build/root
5047

5148
- name: Build
5249
run: cmake --build ${{github.workspace}}/build --config Release --target install --parallel 8
5350

5451
- name: Test
5552
working-directory: ${{github.workspace}}/build
5653
run: ctest -C Release --output-on-failure
54+
env:
55+
TEST_SRCDIR: ${{github.workspace}}/data
5756

5857
- name: Package
5958
working-directory: ${{github.workspace}}/build
6059
run: cpack
6160

6261
- name: Build Python wrapper
62+
# Current the `wheel` pip package is not avaiable for windows arm, so skip.
63+
if: runner.os != 'Windows' || runner.arch != 'ARM64'
6364
working-directory: ${{github.workspace}}/python
6465
run: |
6566
python -m pip install --require-hashes --no-dependencies -r ../.github/workflows/requirements/base.txt
6667
python setup.py build
6768
python setup.py bdist_wheel
69+
ls dist/*.whl
70+
pip install $(ls dist/*.whl)
71+
pushd test
6872
python -m pytest
73+
env:
74+
GITHUB_REF_NAME: "${{github.ref_name}}"
6975

7076
- name: Upload artifcacts
71-
uses: actions/upload-artifact@v3
77+
uses: actions/upload-artifact@v4
7278
with:
73-
name: artifcacts
79+
name: "build-python-wrapper-artifacts-${{runner.os}}-${{runner.arch}}"
7480
path: ./build/*.7z
7581

7682
- name: Upload Release Assets

.github/workflows/cross_build.yml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,28 +13,43 @@ permissions:
1313

1414
jobs:
1515
build:
16-
runs-on: ubuntu-latest
1716
strategy:
1817
fail-fast: false
1918
matrix:
19+
os: [ ubuntu-latest ]
2020
arch: [ i686, arm, aarch64, riscv64, powerpc, powerpc64, powerpc64le, s390x, sparc64, m68k, sh4, alpha ]
21+
include:
22+
- os: ubuntu-24.04-arm
23+
arch: arm
24+
- os: ubuntu-24.04-arm
25+
arch: aarch64
26+
runs-on: $${ matrix.os }}
2127

2228
steps:
23-
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
29+
- uses: actions/checkout@v4
30+
with:
31+
submodules: 'recursive'
2432

2533
- name: Install cross tools
2634
run: |
2735
sudo apt-get update
28-
sudo apt-get install -y sudo qemu-user gdb zstd dwarfdump {gcc,g++}-10-{i686,aarch64,riscv64,powerpc,powerpc64,powerpc64le,s390x,sparc64,m68k,sh4,alpha}-linux-gnu {gcc,g++}-10-arm-linux-gnueabihf
29-
sudo ln -sf /usr/bin/arm-linux-gnueabihf-gcc-10 /usr/bin/arm-linux-gnu-gcc-10
30-
sudo ln -sf /usr/bin/arm-linux-gnueabihf-g++-10 /usr/bin/arm-linux-gnu-g++-10
31-
sudo ln -sf /usr/arm-linux-gnueabihf /usr/arm-linux-gnu
36+
sudo apt-get install -y sudo qemu-user gdb zstd dwarfdump
37+
if [[ "${{matrix.arch}}" != "arm" ]]; then
38+
sudo apt-get install -y {gcc,g++}-14-${{matrix.arch}}-linux-gnu
39+
else
40+
sudo apt-get install -y {gcc,g++}-14-arm-linux-gnueabihf
41+
sudo ln -sf /usr/bin/arm-linux-gnueabihf-gcc-14 /usr/bin/arm-linux-gnu-gcc-14
42+
sudo ln -sf /usr/bin/arm-linux-gnueabihf-g++-14 /usr/bin/arm-linux-gnu-g++-14
43+
sudo ln -sf /usr/arm-linux-gnueabihf /usr/arm-linux-gnu
44+
sudo ln -sf /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /lib/ld-linux-armhf.so.3
45+
fi
46+
3247
3348
- name: Build
3449
run: |
3550
mkdir -p ${{github.workspace}}/build
3651
cd ${{github.workspace}}/build
37-
env CXX=/usr/bin/${{matrix.arch}}-linux-gnu-g++-10 CC=/usr/bin/${{matrix.arch}}-linux-gnu-gcc-10 cmake .. -DSPM_BUILD_TEST=ON -DSPM_ENABLE_SHARED=OFF -DCMAKE_FIND_ROOT_PATH=/usr/${{matrix.arch}}-linux-gnu -DSPM_CROSS_SYSTEM_PROCESSOR=${{matrix.arch}}
52+
env CXX=/usr/bin/${{matrix.arch}}-linux-gnu-g++-14 CC=/usr/bin/${{matrix.arch}}-linux-gnu-gcc-14 cmake .. -DSPM_BUILD_TEST=ON -DBUILD_SHARED_LIBS=OFF -DSPM_ENABLE_SHARED=OFF -DCMAKE_FIND_ROOT_PATH=/usr/${{matrix.arch}}-linux-gnu -DSPM_CROSS_SYSTEM_PROCESSOR=${{matrix.arch}}
3853
make -j$(nproc)
3954
4055
- name: Test on QEMU
@@ -43,3 +58,5 @@ jobs:
4358
cd ${{github.workspace}}/build
4459
qemu_arch=`echo ${{matrix.arch}} | sed -e s/powerpc/ppc/ -e s/686/386/`
4560
qemu-${qemu_arch} -L /usr/${{matrix.arch}}-linux-gnu src/spm_test
61+
env:
62+
TEST_SRCDIR: ${{github.workspace}}/data
Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
11
pip
22
setuptools
3-
wheel
4-
twine
53
pytest

0 commit comments

Comments
 (0)