diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ef7bc4d7fc..e4603a07b1a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,10 @@ The original paths in nested source maps are now modified to be relative to the directory containing the source map. This means source maps from packages inside `node_modules` will stay inside `node_modules` in browser developer tools instead of appearing at the root of the virtual file system where they might collide with the original paths of files in other packages. +* Support for 32-bit Linux systems ([#285](https://github.com/evanw/esbuild/issues/285)) + + You can now install the esbuild npm package on 32-bit Linux systems. + ## 0.6.6 * Fix minification bug with `this` values for function calls ([#282](https://github.com/evanw/esbuild/issues/282)) diff --git a/Makefile b/Makefile index 45faf445af2..245a80599ae 100644 --- a/Makefile +++ b/Makefile @@ -36,12 +36,13 @@ update-version-go: echo "package main\n\nconst esbuildVersion = \"$(ESBUILD_VERSION)\"" > cmd/esbuild/version.go platform-all: update-version-go test-all - make -j9 \ + make -j10 \ platform-windows \ platform-darwin \ platform-freebsd \ platform-freebsd-arm64 \ platform-linux \ + platform-linux-32 \ platform-linux-arm64 \ platform-linux-ppc64le \ platform-wasm \ @@ -69,6 +70,9 @@ platform-freebsd-arm64: platform-linux: make GOOS=linux GOARCH=amd64 NPMDIR=npm/esbuild-linux-64 platform-unixlike +platform-linux-32: + make GOOS=linux GOARCH=386 NPMDIR=npm/esbuild-linux-32 platform-unixlike + platform-linux-arm64: make GOOS=linux GOARCH=arm64 NPMDIR=npm/esbuild-linux-arm64 platform-unixlike @@ -87,12 +91,13 @@ platform-neutral: | esbuild node scripts/esbuild.js ./esbuild publish-all: update-version-go test-all - make -j8 \ + make -j9 \ publish-windows \ publish-darwin \ publish-freebsd \ publish-freebsd-arm64 \ publish-linux \ + publish-linux-32 \ publish-linux-arm64 \ publish-linux-ppc64le \ publish-wasm @@ -116,6 +121,9 @@ publish-freebsd-arm64: platform-freebsd-arm64 publish-linux: platform-linux test -n "$(OTP)" && cd npm/esbuild-linux-64 && npm publish --otp="$(OTP)" +publish-linux-32: platform-linux-32 + test -n "$(OTP)" && cd npm/esbuild-linux-32 && npm publish --otp="$(OTP)" + publish-linux-arm64: platform-linux-arm64 test -n "$(OTP)" && cd npm/esbuild-linux-arm64 && npm publish --otp="$(OTP)" @@ -134,6 +142,7 @@ clean: rm -rf npm/esbuild-darwin-64/bin rm -rf npm/esbuild-freebsd-64/bin rm -rf npm/esbuild-freebsd-amd64/bin + rm -rf npm/esbuild-linux-32/bin rm -rf npm/esbuild-linux-64/bin rm -rf npm/esbuild-linux-arm64/bin rm -rf npm/esbuild-linux-ppc64le/bin diff --git a/npm/esbuild-linux-32/README.md b/npm/esbuild-linux-32/README.md new file mode 100644 index 00000000000..377d1b728c1 --- /dev/null +++ b/npm/esbuild-linux-32/README.md @@ -0,0 +1,3 @@ +# esbuild + +This is the Linux 32-bit binary for esbuild, a JavaScript bundler and minifier. See https://github.com/evanw/esbuild for details. diff --git a/npm/esbuild-linux-32/package.json b/npm/esbuild-linux-32/package.json new file mode 100644 index 00000000000..5f94d82aeb5 --- /dev/null +++ b/npm/esbuild-linux-32/package.json @@ -0,0 +1,16 @@ +{ + "name": "esbuild-linux-32", + "version": "0.6.6", + "description": "The Linux 32-bit binary for esbuild, a JavaScript bundler.", + "repository": "https://github.com/evanw/esbuild", + "license": "MIT", + "os": [ + "linux" + ], + "cpu": [ + "ia32" + ], + "directories": { + "bin": "bin" + } +} diff --git a/npm/esbuild/install.js b/npm/esbuild/install.js index 6d21d03103e..de01ebc8a6a 100644 --- a/npm/esbuild/install.js +++ b/npm/esbuild/install.js @@ -108,6 +108,7 @@ const knownUnixlikePackages = { 'darwin x64 LE': 'esbuild-darwin-64', 'freebsd x64 LE': 'esbuild-freebsd-64', 'freebsd arm64 LE': 'esbuild-freebsd-arm64', + 'linux ia32 LE': 'esbuild-linux-32', 'linux x64 LE': 'esbuild-linux-64', 'linux arm64 LE': 'esbuild-linux-arm64', 'linux ppc64 LE': 'esbuild-linux-ppc64le',