Skip to content

Commit 2ecddde

Browse files
committed
feat(protocol): support macOS ARM64 with Universal Binary
1 parent c34f2b5 commit 2ecddde

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

build.gradle

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import org.gradle.nativeplatform.platform.internal.Architectures
2+
import org.gradle.internal.os.OperatingSystem
23
allprojects {
34
version = "1.0.0"
45
apply plugin: "java-library"
@@ -10,6 +11,7 @@ def arch = System.getProperty("os.arch").toLowerCase()
1011
def javaVersion = JavaVersion.current()
1112
def isArm64 = Architectures.AARCH64.isAlias(arch)
1213
def archSource = isArm64 ? "arm" : "x86"
14+
def isMac = OperatingSystem.current().isMacOsX()
1315

1416
ext.archInfo = [
1517
name : arch,
@@ -29,7 +31,11 @@ ext.archInfo = [
2931
],
3032
requires: [
3133
JavaVersion: isArm64 ? JavaVersion.VERSION_17 : JavaVersion.VERSION_1_8,
32-
RocksdbVersion: isArm64 ? '9.7.4' : '5.15.10'
34+
RocksdbVersion: isArm64 ? '9.7.4' : '5.15.10',
35+
// https://github.com/grpc/grpc-java/issues/7690
36+
// https://github.com/grpc/grpc-java/pull/12319, Add support for macOS aarch64 with universal binary
37+
// https://github.com/grpc/grpc-java/pull/11371 , 1.64.x is not supported CentOS 7.
38+
ProtocGenVersion: isArm64 && isMac ? '1.76.0' : '1.60.0'
3339
],
3440
VMOptions: isArm64 ? "${rootDir}/gradle/jdk17/java-tron.vmoptions" : "${rootDir}/gradle/java-tron.vmoptions"
3541
]

gradle/verification-metadata.xml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -853,9 +853,9 @@
853853
<artifact name="libp2p-2.2.7.module">
854854
<sha256 value="8dcf317770be76db50d2f5dd694f5b0edba98e2bf147626d9b49bbd888669689" origin="Generated by Gradle"/>
855855
</artifact>
856-
<artifact name="libp2p-2.2.7.pom">
857-
<sha256 value="91ddb2a384207b401efa0d68b84f06ff9151fce8843e1ece3e5cf63875c1cd84" origin="Generated by Gradle"/>
858-
</artifact>
856+
<artifact name="libp2p-2.2.7.pom">
857+
<sha256 value="91ddb2a384207b401efa0d68b84f06ff9151fce8843e1ece3e5cf63875c1cd84" origin="Generated by Gradle"/>
858+
</artifact>
859859
</component>
860860
<component group="io.github.tronprotocol" name="zksnark-java-sdk" version="1.0.0">
861861
<artifact name="zksnark-java-sdk-1.0.0.jar">
@@ -954,6 +954,14 @@
954954
<sha256 value="e82d7256d7230aac0fc8276f57c96e3b98ad6fcda8a074fe7d4935ee21cb7008" origin="Generated by Gradle"/>
955955
</artifact>
956956
</component>
957+
<component group="io.grpc" name="protoc-gen-grpc-java" version="1.76.0">
958+
<artifact name="protoc-gen-grpc-java-1.76.0-osx-aarch_64.exe">
959+
<sha256 value="8100c67d1ea547fc34dd638db20876921349df99c42608fdfdcf1cef15c1d6ff" origin="Generated by Gradle"/>
960+
</artifact>
961+
<artifact name="protoc-gen-grpc-java-1.76.0.pom">
962+
<sha256 value="d5a8d2cf3dfaa0f04c8eabcef91ec7ae68cb516a701fbbae84236526c02f3570" origin="Generated by Gradle"/>
963+
</artifact>
964+
</component>
957965
<component group="io.netty" name="netty-buffer" version="4.1.124.Final">
958966
<artifact name="netty-buffer-4.1.124.Final.jar">
959967
<sha256 value="830580f29c425c97bf01ae8ec69e96f4ec425f6b0c6a497c3803f261d69a2647" origin="Generated by Gradle"/>

protocol/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ apply plugin: 'com.google.protobuf'
22

33
def protobufVersion = '3.25.8'
44
def grpcVersion = '1.75.0'
5-
def protocGenVersion = '1.60.0' // https://github.com/grpc/grpc-java/pull/11371 , 1.64.x is not supported CentOS 7.
65

76
dependencies {
87
api group: 'com.google.protobuf', name: 'protobuf-java', version: protobufVersion
@@ -47,7 +46,7 @@ protobuf {
4746

4847
plugins {
4948
grpc {
50-
artifact = "io.grpc:protoc-gen-grpc-java:${protocGenVersion}"
49+
artifact = "io.grpc:protoc-gen-grpc-java:${rootProject.archInfo.requires.ProtocGenVersion}"
5150
}
5251
}
5352
generateProtoTasks {

0 commit comments

Comments
 (0)