Bir değişkenin ortamdan komut satırında mı ayarlanıp ayarlanmadığını tespit etmenin bir yolu var mı?Komut satırından ortama doğru Makefile değişkenleri
make LIB=mylib
ve make
ve make $ LIB ile make yapan birini ayırt etmek istiyorum.
Bir değişkenin ortamdan komut satırında mı ayarlanıp ayarlanmadığını tespit etmenin bir yolu var mı?Komut satırından ortama doğru Makefile değişkenleri
make LIB=mylib
ve make
ve make $ LIB ile make yapan birini ayırt etmek istiyorum.
Evet. Bir değişkenin nerede tanımlandığını belirlemek için origin işlevini kullanabilirsiniz. olmayan Gnu ile
ifneq (,$(findstring environment,$(origin LIB))) # LIB was defined by the environment else # LIB was defined some other way endif
söz konusu değişken için export
komuta ve grep
çalıştırabilir, olun. Bu, yalnızca kurallarda çalışır ve yalnızca değişken tek adım olarak ayarlanmadığı sürece (LIB=foo make
'da olduğu gibi).
Lütfen, make ile ilgili sorularınızı [make] etiketiyle etiketleyin. Gerekçe için bkz. Http://meta.stackexchange.com/questions/24030/why-do-they-specify-makefile-tag-instead-of-make/26567#26567 –