This is an automated email from the ASF dual-hosted git repository.

erose pushed a commit to branch HDDS-9225-website-v2
in repository https://gitbox.apache.org/repos/asf/ozone-site.git


The following commit(s) were added to refs/heads/HDDS-9225-website-v2 by this 
push:
     new 70dd609c HDDS-13700. Add Information about Building on ARM-based Macs 
to web site (#154)
70dd609c is described below

commit 70dd609c675c0865a5c93ee995085ea08d467bd4
Author: fmorg-git <[email protected]>
AuthorDate: Thu Oct 9 11:13:03 2025 -0700

    HDDS-13700. Add Information about Building on ARM-based Macs to web site 
(#154)
    
    Co-authored-by: Siyao Meng <[email protected]>
---
 docs/08-developer-guide/01-build/01-maven.md | 43 ++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/docs/08-developer-guide/01-build/01-maven.md 
b/docs/08-developer-guide/01-build/01-maven.md
index 198f5d7e..2740c25a 100644
--- a/docs/08-developer-guide/01-build/01-maven.md
+++ b/docs/08-developer-guide/01-build/01-maven.md
@@ -45,6 +45,49 @@ Choose one of the following methods to get the source code:
 
 Apache Ozone uses [Maven](https://maven.apache.org/) as its build system. The 
build process compiles the source code, runs tests, and creates deployable 
artifacts. The project supports various build configurations to accommodate 
different development and deployment needs.
 
+### Additional Steps Required For ARM-based Apple Silicon Macs (M1, etc)
+
+If you are running on an ARM-based Apple silicon Mac, please perform the 
additional steps in this section.
+
+#### Compile and Patch Protobuf version 2.5.0 for ARM-based Mac
+
+Note: These steps are required for Hadoop 2 support.  Execute the following 
commands to compile and patch Protobuf version 2.5.0:
+
+```bash
+PROTOBUF_VERSION="2.5.0"
+curl -LO 
https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
+tar xzf protobuf-2.5.0.tar.gz
+cd protobuf-${PROTOBUF_VERSION}
+```
+
+Open the file `src/google/protobuf/stubs/platform_macros.h` with an editor 
like `vim` and append the following lines after line 59.  Save the file when 
complete.
+
+```bash
+#elif defined(__arm64__)
+#define GOOGLE_PROTOBUF_ARCH_ARM 1
+#define GOOGLE_PROTOBUF_ARCH_64_BIT 1
+```
+
+Execute the following commands to build `protoc`:
+
+```bash
+./configure --disable-shared
+make -j
+cd ..
+```
+
+Execute the following command to install `protoc` version 2.5.0 to the local 
Maven repository:
+
+```bash
+mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc 
-Dversion=${PROTOBUF_VERSION} -Dclassifier=osx-aarch_64 -Dpackaging=exe 
-Dfile=src/protoc
+```
+
+If you are running Maven 3.9.x or higher, execute the following command.  This 
command is not needed for 3.8.x or earlier:
+
+```bash
+mv 
$HOME/.m2/repository/com/google/protobuf/protoc/${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-osx-aarch_64
 
$HOME/.m2/repository/com/google/protobuf/protoc/${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-osx-aarch_64.exe
+```
+
 ### Build Options
 
 The build system offers several options to customize the build process 
according to your requirements


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to