2009-05-06 16 views
5

Genellikle (studio) 6.0 ile birlikte paketlenen nmake'nın (biraz güncel olmayan) Microsoft sürümünü kullanıyorum. (Daha yeni nmake için uygun bir cevap varsa - bana haber verin, yükseltmeyi düşünebilirim).

Mevcut makefile'yi değiştirmek istiyorum, böylece bağımlılık listesini oluşturması gereken nmake dpndfull hedefiyle koşturulduysa, bağımlılık listesini içermeyecektir.

GNU make ile dpndfull'un MAKECMDGOALS içerip içermediğini ve eğer varsa (belki de varolmayan) bağımlılık listesini eklemediğimi test ederim.

Nmake ile şu anki golü nasıl bulabilirsin?

+0

Lütfen Lucent nmake veya Microsoft NMAKE'yi kullanıp kullanmadığınızı açıklayın. Bağlandığınız sayfa Lucent nmake, ancak Microsoft NMAKE anlamına gelen "visualstudio" ile bu soruyu etiketlediniz. –

+0

Kötü, bağlantının Lucent'in nmakesiyle ilgili olduğunu fark etmedim. Microsoft’lardan bahsediyordum. Şimdi sabit. –

cevap

1

Bu soru şu anda beş yıl boyunca etrafta dolaşıyor ve hiç kimse buna değmedi. Bu yüzden bir cevabın uygun olacağını düşündü.

Yanıt basittir. Hayır. Microsoft NMAKE'de MAKECMDGOALS açık eşdeğeri yoktur. Makefile'nin yürütülmesi sırasında, komut satırında neyin sağlandığını bulmak için bir yol yoktur. Makro $(MAKEFLAGS) var, ancak bu sadece bayraklar gösteriyor ve hedefleri değil.

Sorulan soruyu elde etmenin tek yolu, dpndfull için bir hedef kural oluşturmak ve daha sonra bağımlılık oluşturma yöntemlerini kullanmaktır. Bunların NMAKE için nasıl oluşturulacağına dair bir tartışma, makedepend equivalent for use with nmake? numaralı soruda bulunabilir.

+0

OP Rusça bilmemektedir, bu yüzden muhtemelen orada ya da başka yerlerde yazmamış. Eğer OP'yi görüşmeden cevabı düzenleyebilecekseniz herkes için daha keyifli olacağını düşünüyorum. –

+0

@ElazarLeibovich - Evet; yardım etmekten mutlu olmak. –