Kurallar
işlem_listeleyici
Kural kaynağını gösteraction_listener(name, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, extra_actions, features, licenses, mnemonics, restricted_to, tags, target_compatible_with, testonly, visibility)
UYARI: Ekstra işlemler kullanımdan kaldırılmıştır. Bunun yerine en boy kullanın.
action_listener
kuralı, herhangi bir sonucu oluşturmaz.
Bunun yerine, araç geliştiricilerin işlemden extra_action
özelliğine eşleme sağlayarak derleme sistemine extra_action
eklemelerini sağlar.
Bu kuralın bağımsız değişkenleri, işlem hatırlatmalarını extra_action
kurallarıyla eşler.
--experimental_action_listener=<label>
seçeneğini belirttiğinizde derleme, belirtilen action_listener
kullanarak derleme grafiğine extra_action
ekler.
Örnek
action_listener( name = "index_all_languages", mnemonics = [ "Javac", "CppCompile", "Python", ], extra_actions = [":indexer"], ) action_listener( name = "index_java", mnemonics = ["Javac"], extra_actions = [":indexer"], ) extra_action( name = "indexer", tools = ["//my/tools:indexer"], cmd = "$(location //my/tools:indexer)" + "--extra_action_file=$(EXTRA_ACTION_FILE)", )
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Bu hedef için benzersiz bir ad. |
extra_actions
|
action_listener öğesinin derleme grafiğine eklemesi gereken extra_action hedefin listesi.
Ör. [ "//my/tools:analyzer" ] .
|
mnemonics
|
action_listener adlı kullanıcının dinlemesi gereken işlem hatırlatıcılarının listesi (ör. [ "Javac" ] ).
Hatıralıklar herkese açık bir arayüz değildir. Hatıralıkların ve eylemlerinin değişmeyeceğinin garantisi yoktur. |
ekstra_işlem
Kural kaynağını gösterextra_action(name, data, cmd, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, licenses, out_templates, requires_action_output, restricted_to, tags, target_compatible_with, testonly, toolchains, tools, visibility)
UYARI: Ekstra işlemler kullanımdan kaldırılmıştır. Bunun yerine en boy kullanın.
extra_action
kuralı, normal bir derleme hedefi olarak belirtildiğinde anlamlı bir çıkış oluşturmaz. Bunun yerine, araç geliştiricilerin derleme grafiğine mevcut işlemleri gölgeleyen ek işlemler eklemesine olanak tanır.
extra_action
öğelerinin nasıl etkinleştirileceğiyle ilgili ayrıntılar için action_listener
sayfasına bakın.
extra_action
'ler komut satırı olarak çalışır. Komut satırı aracı, gölgelendirdiği orijinal işlem hakkında ayrıntılı bilgi içeren, $(Extra_ACTION_FILE) şeklinde bir protokol arabelleği içeren bir dosyaya erişim elde eder.
Ayrıca, orijinal işlemin erişebildiği tüm giriş dosyalarına da erişebilir.
Protokol arabelleğinde depolanan verilerle ilgili ayrıntılar için additional_actions_base.proto sayfasına göz atın. Her proto dosyası bir ExtraActionInfo mesajı içerir.
Diğer tüm işlemler gibi ekstra işlemler de korumalı alana alınır. Bu tür işlemler için tasarlanmalıdır.
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Bu hedef için benzersiz bir ad. action_listener kurallarının extra_actions bağımsız değişkeninde label tarafından bu kurala başvurabilirsiniz.
|
cmd
|
Aşağıdaki farklılıkları içeren genrule cmd özelliği gibi:
|
out_templates
|
extra_action komutu tarafından oluşturulan dosyalara yönelik şablonların listesi.
Şablon, aşağıdaki değişkenleri kullanabilir:
|
requires_action_output
|
extra_action orijinal işlemin çıkışının, bu extra_action için giriş olarak mevcut olmasını gerektirdiğini belirtir.
Doğru değerine ayarlandığında (varsayılan değer yanlış olduğunda) additional_action, orijinal işlem çıktılarının girişlerinin bir parçası olarak kullanılabilir olduğunu varsayabilir. |
tools
|
tool bağımlı listesi.
Daha fazla bilgi için bağımlılıklar tanımını inceleyin.
Derleme sistemi, bu ön koşulların Tüm araçlar ve veri bağımlılıkları, komutun göreli yolları kullanabildiği tek bir ağaçta birleştirilir. Çalışma dizini, bu birleştirilmiş ağacın kökü olacak. |