title: declare_artifact --- signature: artifact_name, sources=None, extra=None --- summary: Declares an artifact to build from this program. --- type: method --- body: This method is supposed to be called from [produce_artifacts :ref](../produce-artifacts/). For each of these invocations the builder will later invoke the [build_artifact :ref](../build-artifact/) function. The parameters behave as follows: * `artifact_name`: the name of the final artifact that will be built. This will be converted into a filename appropriate for the operating system automatically and should thus always use forward slashes. * `sources`: a list of source filenames that make up the artifact. This will be tracked as main indication about how artifacts change. * `extra`: arbitrary extra information that is associated with the artifact so that [build_artifact :ref](../build-artifact/) can use it.