diff options
author | isaacs <i@izs.me> | 2012-08-02 13:35:41 -0700 |
---|---|---|
committer | isaacs <i@izs.me> | 2012-08-02 13:56:50 -0700 |
commit | 2dd710e7ea5163af3573d7d53c64858aaa88cf58 (patch) | |
tree | d358226f026edad2f047ab36ae2cf62564fb5a13 | |
parent | 37537d5720a563cb63929a0f4014491467767874 (diff) | |
download | node-new-2dd710e7ea5163af3573d7d53c64858aaa88cf58.tar.gz |
build: Sign pkg installer for OS X
This makes the installer work on Mountain Lion.
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | tools/osx-codesign.sh | 12 | ||||
-rw-r--r-- | tools/osx-productsign.sh | 12 |
3 files changed, 28 insertions, 1 deletions
@@ -3,6 +3,7 @@ BUILDTYPE ?= Release PYTHON ?= python DESTDIR ?= +SIGN ?= # Default to verbose builds. # To do quiet/pretty builds, run `make V=` to set V to an empty string, @@ -210,6 +211,7 @@ $(PKG): rm -rf out/deps out/Release ./configure --prefix=$(PKGDIR)/usr/local --without-snapshot --dest-cpu=x64 $(MAKE) install V=$(V) + SIGN="$(SIGN)" PKGDIR="$(PKGDIR)" bash tools/osx-codesign.sh lipo $(PKGDIR)/32/usr/local/bin/node \ $(PKGDIR)/usr/local/bin/node \ -output $(PKGDIR)/usr/local/bin/node-universal \ @@ -217,9 +219,10 @@ $(PKG): mv $(PKGDIR)/usr/local/bin/node-universal $(PKGDIR)/usr/local/bin/node rm -rf $(PKGDIR)/32 $(packagemaker) \ - --id "org.nodejs.NodeJS-$(VERSION)" \ + --id "org.nodejs.Node" \ --doc tools/osx-pkg.pmdoc \ --out $(PKG) + SIGN="$(SIGN)" PKG="$(PKG)" bash tools/osx-productsign.sh $(TARBALL): node doc @if [ "$(shell git status --porcelain | egrep -v '^\?\? ')" = "" ]; then \ diff --git a/tools/osx-codesign.sh b/tools/osx-codesign.sh new file mode 100644 index 0000000000..65a8d48b8a --- /dev/null +++ b/tools/osx-codesign.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -x +set -e + +if ! [ -n "$SIGN" ] && [ $STEP -eq 1 ]; then + echo "No SIGN environment var. Skipping codesign." >&2 + exit 0 +fi + +codesign -s "$SIGN" "$PKGDIR"/usr/local/bin/node +codesign -s "$SIGN" "$PKGDIR"/32/usr/local/bin/node diff --git a/tools/osx-productsign.sh b/tools/osx-productsign.sh new file mode 100644 index 0000000000..4834c9bbb8 --- /dev/null +++ b/tools/osx-productsign.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -x +set -e + +if ! [ -n "$SIGN" ]; then + echo "No SIGN environment var. Skipping codesign." >&2 + exit 0 +fi + +productsign --sign "$SIGN" "$PKG" "$PKG"-SIGNED +mv "$PKG"-SIGNED "$PKG" |