1) delay expanding the extractDir keywords on archives until we're actually    extracting them.  This allows you to use more meaningful macros that    are not set until unpackSources such as %(maindir)s 2) implement addPatchFromRPM and addSourceFromRPM, refactor code to    use existing functions for addPatch, addSource, addArchive, move    addSourceFromRPM to _extractFromRPM, which just extracts the file    and adds it to the source cache.
1) delay expanding the extractDir keywords on archives until we're actually
   extracting them.  This allows you to use more meaningful macros that
   are not set until unpackSources such as %(maindir)s
2) implement addPatchFromRPM and addSourceFromRPM, refactor code to
   use existing functions for addPatch, addSource, addArchive, move
   addSourceFromRPM to _extractFromRPM, which just extracts the file
   and adds it to the source cache.

sassoftware/conary,sassoftware/conary,sassoftware/conary,sassoftware/conary,sassoftware/conary