Skip to content

Make sure that dependency output category works properly for all target types #42

Description

@ethouris

The facility of "output category specification" should work for all targets, and there must function at least the following categories:

  • default - should return the first existing output file from the list
  • all - should return the list of all output files
  • none - should always map to an empty output file

Currently the library target type supports the output category specification by -libspec key. Consider changing the name to a more general name -outspec (or provide -outspec key as a more low-level option, only when you simultaneously provide the -output files manually). The only category names for that case are shared and static and they can also be used when using -depends key.

This should extend the output category specification to anything, and strict naming concerns only the library type target. For example, you should be able to define such a custom target where you spell up the categories and output files assigned to them in the same order, e.g.:

ag langen -type custom -outspec lexer parser -output lex.ll.c parser.yy.c -command ...

This way you can then have another two:

ag lexer -type program -depends langen/lexer
ag parser -type program -depends langen/parser

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions