@@ -806,13 +806,29 @@ BINARYNAME=$(TARNAME)-$(PLATFORM)-$(ARCH)
806806endif
807807BINARYTAR =$(BINARYNAME ) .tar
808808# OSX doesn't have xz installed by default, http://macpkg.sourceforge.net/
809- XZ =$(shell which xz > /dev/null 2>&1; echo $$? )
809+ HAS_XZ ?= $(shell which xz > /dev/null 2>&1; [[ $$? = 0 ]] && echo 1 || echo 0)
810+ # Supply SKIP_XZ=1 to explicitly skip .tar.xz creation
811+ SKIP_XZ ?= 0
812+ XZ = $(shell [[ $(HAS_XZ ) = 1 && $(SKIP_XZ ) = 0 ]] && echo 1 || echo 0)
810813XZ_COMPRESSION ?= 9e
811814PKG =$(TARNAME ) .pkg
812815MACOSOUTDIR =out/macos
813816
817+ ifeq ($(SKIP_XZ ) , 1)
818+ check-xz :
819+ @echo " SKIP_XZ=1 supplied, skipping .tar.xz creation"
820+ else
821+ ifeq ($(HAS_XZ ) , 1)
822+ check-xz :
823+ else
824+ check-xz :
825+ @echo " No xz command, cannot continue"
826+ @exit 1
827+ endif
828+ endif
829+
814830.PHONY : release-only
815- release-only :
831+ release-only : check-xz
816832 @if [ " $( DISTTYPE) " = " release" ] && ` grep -q REPLACEME doc/api/* .md` ; then \
817833 echo ' Please update REPLACEME in Added: tags in doc/api/*.md (See doc/releases.md)' ; \
818834 exit 1 ; \
@@ -938,7 +954,7 @@ $(TARBALL): release-only $(NODE_EXE) doc
938954 tar -cf $(TARNAME ) .tar $(TARNAME )
939955 $(RM ) -r $(TARNAME )
940956 gzip -c -f -9 $(TARNAME ) .tar > $(TARNAME ) .tar.gz
941- ifeq ($(XZ ) , 0 )
957+ ifeq ($(XZ ) , 1 )
942958 xz -c -f -$(XZ_COMPRESSION) $(TARNAME).tar > $(TARNAME).tar.xz
943959endif
944960 $(RM) $(TARNAME).tar
@@ -952,7 +968,7 @@ tar-upload: tar
952968 chmod 664 $(TARNAME ) .tar.gz
953969 scp -p $(TARNAME ) .tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) .tar.gz
954970 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) .tar.gz.done"
955- ifeq ($(XZ ) , 0 )
971+ ifeq ($(XZ ) , 1 )
956972 chmod 664 $(TARNAME).tar.xz
957973 scp -p $(TARNAME).tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME).tar.xz
958974 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME).tar.xz.done"
@@ -978,7 +994,7 @@ $(TARBALL)-headers: release-only
978994 tar -cf $(TARNAME ) -headers.tar $(TARNAME )
979995 $(RM ) -r $(TARNAME )
980996 gzip -c -f -9 $(TARNAME ) -headers.tar > $(TARNAME ) -headers.tar.gz
981- ifeq ($(XZ ) , 0 )
997+ ifeq ($(XZ ) , 1 )
982998 xz -c -f -$(XZ_COMPRESSION) $(TARNAME)-headers.tar > $(TARNAME)-headers.tar.xz
983999endif
9841000 $(RM) $(TARNAME)-headers.tar
@@ -990,7 +1006,7 @@ tar-headers-upload: tar-headers
9901006 chmod 664 $(TARNAME ) -headers.tar.gz
9911007 scp -p $(TARNAME ) -headers.tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) -headers.tar.gz
9921008 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) -headers.tar.gz.done"
993- ifeq ($(XZ ) , 0 )
1009+ ifeq ($(XZ ) , 1 )
9941010 chmod 664 $(TARNAME)-headers.tar.xz
9951011 scp -p $(TARNAME)-headers.tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-headers.tar.xz
9961012 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-headers.tar.xz.done"
@@ -1015,7 +1031,7 @@ endif
10151031 tar -cf $(BINARYNAME).tar $(BINARYNAME)
10161032 $(RM) -r $(BINARYNAME)
10171033 gzip -c -f -9 $(BINARYNAME).tar > $(BINARYNAME).tar.gz
1018- ifeq ($(XZ ) , 0 )
1034+ ifeq ($(XZ ) , 1 )
10191035 xz -c -f -$(XZ_COMPRESSION) $(BINARYNAME).tar > $(BINARYNAME).tar.xz
10201036endif
10211037 $(RM) $(BINARYNAME).tar
@@ -1030,7 +1046,7 @@ binary-upload: binary
10301046 chmod 664 $(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz
10311047 scp -p $(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz $(STAGINGSERVER ) :nodejs/$(DISTTYPEDIR ) /$(FULLVERSION ) /$(TARNAME ) -$(OSTYPE ) -$(ARCH ) .tar.gz
10321048 ssh $(STAGINGSERVER ) " touch nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /$( TARNAME) -$( OSTYPE) -$( ARCH) .tar.gz.done"
1033- ifeq ($(XZ ) , 0 )
1049+ ifeq ($(XZ ) , 1 )
10341050 chmod 664 $(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz
10351051 scp -p $(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz $(STAGINGSERVER):nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz
10361052 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME)-$(OSTYPE)-$(ARCH).tar.xz.done"
0 commit comments