Ничего не понял. Что нужно то?
Если Rule совсем кастомное (совсем кастомные теги, которых не знает ядро qbs) и это Rule завернуто в модуль. То чтобы оно выполнялось нужно добавить additionalProductTypes в модуль. И в своем проекте использовать этот тип.
модуль MyCoolModule:
Module {
additionalProductTypes: ["my_cool_type"]
FileTagger {
patterns: [ "*.mycoolextension" ]
fileTags: [ "my_cool_in" ]
}
Rule {
inputs: [ "my_cool_in" ]
Artifact {
filePath: product.destinationDirectory + "/" + FileInfo.fileName(input.filePath)
fileTags: [ "my_cool_type" ]
}
prepare: {
...
}
}
}
продукт MyCoolProduct:
Product {
name: "MyCoolProduct"
type: [ "my_cool_type" ]
Depends { name: "MyCoolModule" }
...
}