yapmak değişkenlerin bir listeye atamak: Birkaç değerleri gerekirseOku JSON ve ben bununla <code>package.json</code> değeri alabilirsiniz
LAST_VERSION := $(shell node -p "require('./package.json').version")
Ama ne? Gibi:
PROJECT := $(shell node -p "require('./package.json').name")
LAST_VERSION:= $(shell node -p "require('./package.json').version")
DESCRIPTION := $(shell node -p "require('./package.json').description")
PROJECT_URL := $(shell node -p "require('./package.json').repository.url")
Tek yol bu mu? Belki de bir liste oluşturmanın bir yolu vardır.
define GetFromPkg
$(shell node -p "require('./package.json').$(1)")
endef
PROJECT := $(call GetFromPkg,name)
LAST_VERSION := $(call GetFromPkg,version)
DESCRIPTION := $(call GetFromPkg,description)
PROJECT_URL := $(call GetFromPkg,repository.url)
ne kadar süreyle 'node' çağırma sürer: Sonunda – Jens
@Jens Gerçekten de, performansı hiç etkilemiyor, belki de olduğu gibi bırak. –
Tek bir "düğüm" çağrısı dört öğenin tümünü yazdırabiliyorsa, bunları ayırma sorununa sahip olursunuz. Doğa tarafından "make", alanı ayrılmış listeler kullandığı için, açıklamanın boşluk içerdiği için "açıklama" üyesinin sorunlu olmasını beklerim. Özel bir sınırlayıcıyla (virgülle? Noktalı virgül?) Çıktı oluşturmak zorunda kalacaksınız. – Jens