Back to Mongo

mongo gpg builds

buildscripts/mongo_gpg_builds/README.md

3.6.17-windows-splunk-v32.7 KB
Original Source

mongo gpg builds

This directory contains a script to produce portable gpg binaries for all our supported linux platforms:

  • Linux (manylinux2014 glibc 2.17 baseline): x86_64, aarch64, s390x, ppc64le

In particular, it builds gnupg-2.5.16 from source.

This script is used to generate the binaries that we use bring into bazel as a dependency to sign test extensions. All artifacts are placed in the dist/ directory.


šŸ“ Contents

ScriptPlatformOutput
build_gpg_manylinux.shLinux (x86_64, aarch64, s390x, ppc64le)dist/gpg-manylinux-<arch>

šŸš€ Quick Start

🐧 Linux (manylinux2014 glibc 2.17)

Requirements: Docker.
To cross-build using QEMU (for aarch64/s390x/ppc64le), enable binfmt once:

bash
docker run --privileged --rm tonistiigi/binfmt --install all

Build native architecture

bash
./build_gpg_manylinux.sh

Cross-build via QEMU

bash
ARCH=x86_64 PLATFORM=linux/amd64   ./build_gpg_manylinux.sh
ARCH=aarch64 PLATFORM=linux/arm64   ./build_gpg_manylinux.sh
ARCH=s390x   PLATFORM=linux/s390x   ./build_gpg_manylinux.sh
ARCH=ppc64le PLATFORM=linux/ppc64le ./build_gpg_manylinux.sh

āš™ļø Build Behavior (All Platforms)


🧩 Environment Variables

VariablePurposeDefault
OUT_DIROutput directory./dist
ARCHLinux target archuname -m
PLATFORMDocker platformauto

šŸ“œ License & Attribution

These scripts build gpg and its required dependencies from sources originally obtained from: šŸ‘‰ https://www.gnupg.org/ftp/gcrypt/gnupg/ and https://gnupg.org/download/index.html

The exact sources can be obtained at the following URLs: