Skip to content

Commit d5926f0

Browse files
David Christensenbording
David Christensen
authored andcommitted
Add ppc64le support
Signed-off-by: David Christensen <[email protected]>
1 parent 534c111 commit d5926f0

File tree

7 files changed

+21
-5
lines changed

7 files changed

+21
-5
lines changed

.github/workflows/ci.yml

+4
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ jobs:
3737
name: linux-musl-arm64
3838
- os: ubuntu-24.04
3939
name: linux-arm
40+
- os: ubuntu-24.04
41+
name: linux-ppc64le
42+
- os: ubuntu-24.04
43+
name: linux-musl-ppc64le
4044
- os: macos-13
4145
name: osx-x64
4246
- os: macos-13

Dockerfile.linux

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
FROM bording/crossbuild
22
ARG ARCH='amd64'
3-
ENV CROSS_TRIPLE=${ARCH}
3+
ARG CC_ARCH='amd64'
4+
ENV CROSS_TRIPLE=${CC_ARCH}
45
RUN apt update && apt -y install pkg-config
56

67
WORKDIR /nativebinaries
78
COPY . /nativebinaries/
89

9-
CMD ["/bin/bash", "-c", "./build.libgit2.sh"]
10+
CMD ["/bin/bash", "-c", "./build.libgit2.sh"]

Dockerfile.linux-musl

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ RUN apk add --no-cache bash build-base cmake
55
WORKDIR /nativebinaries
66
COPY . /nativebinaries/
77

8-
CMD ["/bin/bash", "-c", "./build.libgit2.sh"]
8+
CMD ["/bin/bash", "-c", "./build.libgit2.sh"]

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ the following platforms:
1111

1212
- Windows (x86, x64, arm64)
1313
- macOS (x64, arm64)
14-
- Linux (x64, arm, arm64) for both musl and glibc
14+
- Linux (x64, arm, arm64, ppc64le) for both musl and glibc
1515

1616
[lg2s-nb]: https://www.nuget.org/packages/LibGit2Sharp.NativeBinaries
1717
[lg2]: https://libgit2.github.com/

UpdateLibgit2ToSha.ps1

+1
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ Push-Location $libgit2Directory
123123
<dllmap os="linux" cpu="x86-64" wordsize="64" dll="$binaryFilename" target="lib/linux-x64/lib$binaryFilename.so" />
124124
<dllmap os="linux" cpu="arm" wordsize="32" dll="$binaryFilename" target="lib/linux-arm/lib$binaryFilename.so" />
125125
<dllmap os="linux" cpu="armv8" wordsize="64" dll="$binaryFilename" target="lib/linux-arm64/lib$binaryFilename.so" />
126+
<dllmap os="linux" cpu="ppc64le" wordsize="64" dll="$binaryFilename" target="lib/linux-ppc64le/lib$binaryFilename.so" />
126127
<dllmap os="osx" cpu="x86-64" wordsize="64" dll="$binaryFilename" target="lib/osx-x64/lib$binaryFilename.dylib" />
127128
<dllmap os="osx" cpu="armv8" wordsize="64" dll="$binaryFilename" target="lib/osx-arm64/lib$binaryFilename.dylib" />
128129
</configuration>

dockerbuild.sh

+10-1
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,19 @@ echo "building for $RID"
55

66
if [[ $RID =~ arm64 ]]; then
77
arch="arm64"
8+
cc_arch="arm64"
89
elif [[ $RID =~ arm ]]; then
910
arch="armhf"
11+
cc_arch="armhf"
12+
elif [[ $RID == linux-ppc64le ]]; then
13+
arch="ppc64le"
14+
cc_arch="powerpc64le"
15+
elif [[ $RID == linux-musl-ppc64le ]]; then
16+
arch="ppc64le"
17+
cc_arch="ppc64le"
1018
else
1119
arch="amd64"
20+
cc_arch="amd64"
1221
fi
1322

1423
if [[ $RID == linux-musl* ]]; then
@@ -17,7 +26,7 @@ else
1726
dockerfile="Dockerfile.linux"
1827
fi
1928

20-
docker buildx build -t $RID -f $dockerfile --build-arg ARCH=$arch .
29+
docker buildx build -t $RID -f $dockerfile --build-arg ARCH=$arch --build-arg CC_ARCH=$cc_arch .
2130

2231
docker run -t -e RID=$RID --name=$RID $RID
2332

nuget.package/libgit2/LibGit2Sharp.dll.config

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
<dllmap os="linux" cpu="x86-64" wordsize="64" dll="git2-a418d9d" target="lib/linux-x64/libgit2-a418d9d.so" />
33
<dllmap os="linux" cpu="arm" wordsize="32" dll="git2-a418d9d" target="lib/linux-arm/libgit2-a418d9d.so" />
44
<dllmap os="linux" cpu="armv8" wordsize="64" dll="git2-a418d9d" target="lib/linux-arm64/libgit2-a418d9d.so" />
5+
<dllmap os="linux" cpu="ppc64le8" wordsize="64" dll="git2-a418d9d" target="lib/linux-ppc64le/libgit2-a418d9d.so" />
56
<dllmap os="osx" cpu="x86-64" wordsize="64" dll="git2-a418d9d" target="lib/osx-x64/libgit2-a418d9d.dylib" />
67
<dllmap os="osx" cpu="armv8" wordsize="64" dll="git2-a418d9d" target="lib/osx-arm64/libgit2-a418d9d.dylib" />
78
</configuration>

0 commit comments

Comments
 (0)