@@ -851,13 +851,29 @@ BINARYNAME=$(TARNAME)-$(PLATFORM)-$(ARCH)
851851endif
852852BINARYTAR =$(BINARYNAME ) .tar
853853# OSX doesn't have xz installed by default, http://macpkg.sourceforge.net/
854- XZ =$(shell which xz > /dev/null 2>&1; echo $$? )
854+ HAS_XZ ?= $(shell which xz > /dev/null 2>&1; [[ $$? = 0 ]] && echo 1 || echo 0)
855+ # Supply SKIP_XZ=1 to explicitly skip .tar.xz creation
856+ SKIP_XZ ?= 0
857+ XZ = $(shell [[ $(HAS_XZ ) = 1 && $(SKIP_XZ ) = 0 ]] && echo 1 || echo 0)
855858XZ_COMPRESSION ?= 9e
856859PKG =$(TARNAME ) .pkg
857860MACOSOUTDIR =out/macos
858861
862+ ifeq ($(SKIP_XZ ) , 1)
863+ check-xz :
864+ @echo " SKIP_XZ=1 supplied, skipping .tar.xz creation"
865+ else
866+ ifeq ($(HAS_XZ ) , 1)
867+ check-xz :
868+ else
869+ check-xz :
870+ @echo " No xz command, cannot continue"
871+ @exit 1
872+ endif
873+ endif
874+
859875.PHONY : release-only
860- release-only :
876+ release-only : check-xz
861877 @if [ " $( DISTTYPE) " = " release" ] && ` grep -q REPLACEME doc/api/* .md` ; then \
862878 echo ' Please update REPLACEME in Added: tags in doc/api/*.md (See doc/releases.md)' ; \
863879 exit 1 ; \
@@ -983,7 +999,7 @@ $(TARBALL): release-only $(NODE_EXE) doc
983999 tar -cf $(TARNAME ) .tar $(TARNAME )
9841000 $(RM ) -r $(TARNAME )
9851001 gzip -c -f -9 $(TARNAME ) .tar > $(TARNAME ) .tar.gz
986- ifeq ($(XZ ) , 0 )
1002+ ifeq ($(XZ ) , 1 )
9871003 xz -c -f -$(XZ_COMPRESSION) $(TARNAME).tar > $(TARNAME).tar.xz
9881004endif
9891005 $(RM) $(TARNAME).tar
@@ -997,7 +1013,7 @@ tar-upload: tar
9971013 chmod 664 $(TARNAME ) .tar.gz
9981014 scp -p $(TARNAME ) .tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) .tar.gz
9991015 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) .tar.gz.done"
1000- ifeq ($(XZ ) , 0 )
1016+ ifeq ($(XZ ) , 1 )
10011017 chmod 664 $(TARNAME).tar.xz
10021018 scp -p $(TARNAME).tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME).tar.xz
10031019 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME).tar.xz.done"
@@ -1023,7 +1039,7 @@ $(TARBALL)-headers: release-only
10231039 tar -cf $(TARNAME ) -headers.tar $(TARNAME )
10241040 $(RM ) -r $(TARNAME )
10251041 gzip -c -f -9 $(TARNAME ) -headers.tar > $(TARNAME ) -headers.tar.gz
1026- ifeq ($(XZ ) , 0 )
1042+ ifeq ($(XZ ) , 1 )
10271043 xz -c -f -$(XZ_COMPRESSION) $(TARNAME)-headers.tar > $(TARNAME)-headers.tar.xz
10281044endif
10291045 $(RM) $(TARNAME)-headers.tar
@@ -1035,7 +1051,7 @@ tar-headers-upload: tar-headers
10351051 chmod 664 $(TARNAME ) -headers.tar.gz
10361052 scp -p $(TARNAME ) -headers.tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) -headers.tar.gz
10371053 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) -headers.tar.gz.done"
1038- ifeq ($(XZ ) , 0 )
1054+ ifeq ($(XZ ) , 1 )
10391055 chmod 664 $(TARNAME)-headers.tar.xz
10401056 scp -p $(TARNAME)-headers.tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-headers.tar.xz
10411057 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-headers.tar.xz.done"
@@ -1060,7 +1076,7 @@ endif
10601076 tar -cf $(BINARYNAME).tar $(BINARYNAME)
10611077 $(RM) -r $(BINARYNAME)
10621078 gzip -c -f -9 $(BINARYNAME).tar > $(BINARYNAME).tar.gz
1063- ifeq ($(XZ ) , 0 )
1079+ ifeq ($(XZ ) , 1 )
10641080 xz -c -f -$(XZ_COMPRESSION) $(BINARYNAME).tar > $(BINARYNAME).tar.xz
10651081endif
10661082 $(RM) $(BINARYNAME).tar
@@ -1075,7 +1091,7 @@ binary-upload: binary
10751091 chmod 664 $(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz
10761092 scp -p $(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz
10771093 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) -$( OSTYPE) -$( ARCH) .tar.gz.done"
1078- ifeq ($(XZ ) , 0 )
1094+ ifeq ($(XZ ) , 1 )
10791095 chmod 664 $(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz
10801096 scp -p $(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz
10811097 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz.done"
0 commit comments