From 461ca734b492e0c31166f96f6c331ed2e030231b Mon Sep 17 00:00:00 2001 From: Evan Wallace Date: Mon, 18 Dec 2023 15:45:41 -0500 Subject: [PATCH] add the `@esbuild/aix-ppc64` package for ibm aix (#3550) --- CHANGELOG.md | 4 ++++ Makefile | 10 ++++++++++ lib/npm/node-platform.ts | 1 + npm/@esbuild/aix-ppc64/README.md | 3 +++ npm/@esbuild/aix-ppc64/package.json | 17 +++++++++++++++++ npm/esbuild/package.json | 1 + 6 files changed, 36 insertions(+) create mode 100644 npm/@esbuild/aix-ppc64/README.md create mode 100644 npm/@esbuild/aix-ppc64/package.json diff --git a/CHANGELOG.md b/CHANGELOG.md index b6b3d3af29d..039b3228800 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -95,6 +95,10 @@ With this release, esbuild will now attempt to terminate the Go GC in this edge case by calling `clearTimeout()` on these pending timeouts. +* Publish builds for IBM AIX PowerPC 64-bit ([#3549](https://github.com/evanw/esbuild/issues/3549)) + + This release publishes a binary executable to npm for IBM AIX PowerPC 64-bit, which means that in theory esbuild can now be installed in that environment with `npm install esbuild`. This hasn't actually been tested yet. If you have access to such a system, it would be helpful to confirm whether or not doing this actually works. + ## 0.19.9 * Add support for transforming new CSS gradient syntax for older browsers diff --git a/Makefile b/Makefile index 52a6ec4b482..8dc7d055acd 100644 --- a/Makefile +++ b/Makefile @@ -271,6 +271,7 @@ version-go: platform-all: @$(MAKE) --no-print-directory -j4 \ + platform-aix-ppc64 \ platform-android-arm \ platform-android-arm64 \ platform-android-x64 \ @@ -322,6 +323,9 @@ platform-android-x64: platform-wasm platform-android-arm: platform-wasm node scripts/esbuild.js npm/@esbuild/android-arm/package.json --version +platform-aix-ppc64: + @$(MAKE) --no-print-directory GOOS=aix GOARCH=ppc64 NPMDIR=npm/@esbuild/aix-ppc64 platform-unixlike + platform-android-arm64: @$(MAKE) --no-print-directory GOOS=android GOARCH=arm64 NPMDIR=npm/@esbuild/android-arm64 platform-unixlike @@ -443,6 +447,7 @@ publish-all: check-go-version @echo Enter one-time password: @read OTP && OTP="$$OTP" $(MAKE) --no-print-directory -j4 \ + publish-aix-ppc64 \ publish-linux-ppc64 \ publish-linux-s390x @@ -465,6 +470,9 @@ publish-win32-ia32: platform-win32-ia32 publish-win32-arm64: platform-win32-arm64 test -n "$(OTP)" && cd npm/@esbuild/win32-arm64 && npm publish --otp="$(OTP)" +publish-aix-ppc64: platform-aix-ppc64 + test -n "$(OTP)" && cd npm/@esbuild/aix-ppc64 && npm publish --otp="$(OTP)" + publish-android-x64: platform-android-x64 test -n "$(OTP)" && cd npm/@esbuild/android-x64 && npm publish --otp="$(OTP)" @@ -563,6 +571,7 @@ validate-build: # This checks that the published binaries are bitwise-identical to the locally-build binaries validate-builds: git fetch --all --tags && git checkout "v$(ESBUILD_VERSION)" + @$(MAKE) --no-print-directory TARGET=platform-aix-ppc64 SCOPE=@esbuild/ PACKAGE=aix-ppc64 SUBPATH=bin/esbuild validate-build @$(MAKE) --no-print-directory TARGET=platform-android-arm SCOPE=@esbuild/ PACKAGE=android-arm SUBPATH=esbuild.wasm validate-build @$(MAKE) --no-print-directory TARGET=platform-android-arm64 SCOPE=@esbuild/ PACKAGE=android-arm64 SUBPATH=bin/esbuild validate-build @$(MAKE) --no-print-directory TARGET=platform-android-x64 SCOPE=@esbuild/ PACKAGE=android-x64 SUBPATH=esbuild.wasm validate-build @@ -595,6 +604,7 @@ clean: rm -f npm/@esbuild/win32-ia32/esbuild.exe rm -f npm/@esbuild/win32-x64/esbuild.exe rm -f npm/esbuild-wasm/esbuild.wasm npm/esbuild-wasm/wasm_exec*.js + rm -rf npm/@esbuild/aix-ppc64/bin rm -rf npm/@esbuild/android-arm/bin npm/@esbuild/android-arm/esbuild.wasm npm/@esbuild/android-arm/wasm_exec*.js rm -rf npm/@esbuild/android-arm64/bin rm -rf npm/@esbuild/android-x64/bin npm/@esbuild/android-x64/esbuild.wasm npm/@esbuild/android-x64/wasm_exec*.js diff --git a/lib/npm/node-platform.ts b/lib/npm/node-platform.ts index ad9238f55c3..156d024a347 100644 --- a/lib/npm/node-platform.ts +++ b/lib/npm/node-platform.ts @@ -26,6 +26,7 @@ export const knownWindowsPackages: Record = { } export const knownUnixlikePackages: Record = { + 'aix ppc64 BE': '@esbuild/aix-ppc64', 'android arm64 LE': '@esbuild/android-arm64', 'darwin arm64 LE': '@esbuild/darwin-arm64', 'darwin x64 LE': '@esbuild/darwin-x64', diff --git a/npm/@esbuild/aix-ppc64/README.md b/npm/@esbuild/aix-ppc64/README.md new file mode 100644 index 00000000000..c897cd1a518 --- /dev/null +++ b/npm/@esbuild/aix-ppc64/README.md @@ -0,0 +1,3 @@ +# esbuild + +This is the IBM AIX PowerPC 64-bit binary for esbuild, a JavaScript bundler and minifier. See https://github.com/evanw/esbuild for details. diff --git a/npm/@esbuild/aix-ppc64/package.json b/npm/@esbuild/aix-ppc64/package.json new file mode 100644 index 00000000000..1fa09c030d9 --- /dev/null +++ b/npm/@esbuild/aix-ppc64/package.json @@ -0,0 +1,17 @@ +{ + "name": "@esbuild/aix-ppc64", + "version": "0.19.9", + "description": "The IBM AIX PowerPC 64-bit binary for esbuild, a JavaScript bundler.", + "repository": "https://github.com/evanw/esbuild", + "license": "MIT", + "preferUnplugged": true, + "engines": { + "node": ">=12" + }, + "os": [ + "aix" + ], + "cpu": [ + "ppc64" + ] +} diff --git a/npm/esbuild/package.json b/npm/esbuild/package.json index d34473abd6e..dfa91311bc6 100644 --- a/npm/esbuild/package.json +++ b/npm/esbuild/package.json @@ -15,6 +15,7 @@ "esbuild": "bin/esbuild" }, "optionalDependencies": { + "@esbuild/aix-ppc64": "0.19.9", "@esbuild/android-arm": "0.19.9", "@esbuild/android-arm64": "0.19.9", "@esbuild/android-x64": "0.19.9",