meson: enable override_find_program for subprojects

When sdbusplus is used as a meson subproject it is helpful to have a
section like:

```
    [provide]
    sdbusplus = sdbusplus_dep
    program_names = sdbus++, sdbus++-gen-meson
```

This allows a project to easily find both the 'sdbusplus' dependency
without manually setting a 'fallback' and it allows it to obtain the
typically used programs utilizing the `find_program`.  Doing this
requires usage of the `meson.override_find_program` in the subproject.

Meson doesn't like it if you pass an already `find_program` result into
the `override_find_program`.  The typical expectation from meson appears
to be that you are exporting a program you've compiled rather than an
existing script.  In order to work around this, add a simple indirection
where we symlink all of the executables to the same name prefixed with a
dot.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I23ab97d85c4c43d4e5ad0da00491b75ff03e110d
diff --git a/tools/.sdbus++ b/tools/.sdbus++
new file mode 120000
index 0000000..0e11fa9
--- /dev/null
+++ b/tools/.sdbus++
@@ -0,0 +1 @@
+sdbus++
\ No newline at end of file
diff --git a/tools/.sdbus++-gen-meson b/tools/.sdbus++-gen-meson
new file mode 120000
index 0000000..f22caec
--- /dev/null
+++ b/tools/.sdbus++-gen-meson
@@ -0,0 +1 @@
+sdbus++-gen-meson
\ No newline at end of file
diff --git a/tools/.sdbus++-gendir b/tools/.sdbus++-gendir
new file mode 120000
index 0000000..dc7b900
--- /dev/null
+++ b/tools/.sdbus++-gendir
@@ -0,0 +1 @@
+sdbus++-gendir
\ No newline at end of file
diff --git a/tools/meson.build b/tools/meson.build
index bf5d574..40c6bc5 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -1,3 +1,8 @@
-sdbusplusplus_prog = find_program('sdbus++')
-sdbusgen_prog = find_program('sdbus++-gendir')
-sdbuspp_gen_meson_prog = find_program('sdbus++-gen-meson')
+sdbusplusplus_prog = find_program('.sdbus++')
+meson.override_find_program('sdbus++', sdbusplusplus_prog)
+
+sdbusgen_prog = find_program('.sdbus++-gendir')
+meson.override_find_program('sdbus++-gendir', sdbusgen_prog)
+
+sdbuspp_gen_meson_prog = find_program('.sdbus++-gen-meson')
+meson.override_find_program('sdbus++-gen-meson', sdbuspp_gen_meson_prog)