minor, provide fltdef.[ch] in analogy to strdef.[ch]

Which is to provide echs_open_fltdef() to instantiate filters defined
in files or DSOs.

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, provide echse-filter tool to run a collection of echse streams through a filter

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, provide simple example filter DSO collect

which collects XMAS and BOXD states into xmas.

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
hygiene, kick unused inline from gq.c

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
Merge branch 'core/filter' into next

* core/filter:
  hygiene, kick unused inline from gq.c
  minor, provide simple example filter DSO collect
  minor, provide echse-filter tool to run a collection of echse streams through a filter
  minor, provide fltdef.[ch] in analogy to strdef.[ch]
minor, refactor filter tool so that a filter in turn is turned into a stream

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, refactor echse-filter again in standalone mode

In standalone mode we create a stream from the input args, a filter from
the --filter arg and then call the DSO version's make_echs_stream(...) on them.

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
chore, provide guards for echse-filter's standalone mode and compile the binary that way

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, provide service {make,free}_echs_filtstrm() in fltdef.c

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, support --filter in echse tool

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
chore, don't build echse-filter tool (echse(1) has --filter now)

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, rename echse-filter to echs-filter and kick standalone stuff

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
chore, also kick unused __identity filter

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
chore, compile echs-filter into DSO

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
Merge branch 'tool/filter' into next

* tool/filter:
  chore, compile echs-filter into DSO
  chore, also kick unused __identity filter
  minor, rename echse-filter to echs-filter and kick standalone stuff
  chore, don't build echse-filter tool (echse(1) has --filter now)
  minor, support --filter in echse tool
  minor, provide service {make,free}_echs_filtstrm() in fltdef.c
  chore, provide guards for echse-filter's standalone mode and compile the binary that way
  minor, refactor echse-filter again in standalone mode
  minor, refactor filter tool so that a filter in turn is turned into a stream
minor, store the whole last event instead of just the instant

This is to filter out equal events coming from 2 different streams.

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
minor, slightly optimise __events_eq_p()

Signed-off-by: Sebastian Freundt <freundt@ga-group.nl>
Merge branch 'tool/echse' into next

* tool/echse:
  minor, slightly optimise __events_eq_p()
  minor, store the whole last event instead of just the instant
Merge branch 'next'

* next:
  minor, slightly optimise __events_eq_p()
  minor, store the whole last event instead of just the instant
  chore, compile echs-filter into DSO
  chore, also kick unused __identity filter
  minor, rename echse-filter to echs-filter and kick standalone stuff
  chore, don't build echse-filter tool (echse(1) has --filter now)
  minor, support --filter in echse tool
  minor, provide service {make,free}_echs_filtstrm() in fltdef.c
  chore, provide guards for echse-filter's standalone mode and compile the binary that way
  minor, refactor echse-filter again in standalone mode
  minor, refactor filter tool so that a filter in turn is turned into a stream
  hygiene, kick unused inline from gq.c
  minor, provide simple example filter DSO collect
  minor, provide echse-filter tool to run a collection of echse streams through a filter
  minor, provide fltdef.[ch] in analogy to strdef.[ch]