build: add support for building with meson

Follow the OpenBMC herd and support a more modern, more comprehensible,
more performant build framework.

To build using meson:
  meson build
  ninja -C build
  ninja -C build install

Maintained support for:
  Configurable dbus parameters:
    INPUT_HISTORY_BUSNAME_ROOT= -> -Dinput-history-busname-root=
    INPUT_HISTORY_SENSOR_ROOT = -> -Dinput-history-sensor-root=
  UCD90160 support:
    UCD90160_DEF_YAML_FILE= -> -Ducd90160-yaml=
    --enable-turn-off-ucd90160-access = -> -Ducd90160-access=

Added -Dtests to match de-facto OpenBMC meson usage conventions.

Dropped UCD90160_DEF_OUTPUT_DIR.  Much like the destination of
intermediate artifacts like object files are not configurable, the
location of the generated UCD definition file should not be configurable
either.

Dropped support for --enable-oe-sdk rpath munging.  This was a
workaround for broken oe sdks that don't figure out the correct rpath
when running make check or ninja test.

Tested by building with both meson and autotools and then compared build
artifacts from each build system:
  generated source code is the same
  generated binaries have the same symbols

Ran existing unit tests (which passed) using ninja test.

Change-Id: Iac80ba1fe5c2d01abe0e0a95e0bec03b8b828ef5
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/power-sequencer/meson.build b/power-sequencer/meson.build
new file mode 100644
index 0000000..a52fe02
--- /dev/null
+++ b/power-sequencer/meson.build
@@ -0,0 +1,33 @@
+ucd90160_defs_cpp = custom_target(
+    'ucd90160_defs.cpp',
+    command: [
+        prog_python, '@INPUT0@',
+        '-i', '@INPUT1@', '-o', meson.current_build_dir(),
+    ],
+    input: [
+        'gen-ucd90160-defs.py',
+        get_option('ucd90160-yaml'),
+        'templates/ucd90160_defs.mako.cpp'
+    ],
+    output: 'ucd90160_defs.cpp',
+)
+
+executable(
+    'pseq-monitor',
+    'argument.cpp',
+    error_hpp,
+    'main.cpp',
+    'pgood_monitor.cpp',
+    'runtime_monitor.cpp',
+    'ucd90160.cpp',
+    ucd90160_defs_cpp,
+    dependencies: [
+        phosphor_dbus_interfaces,
+        phosphor_logging,
+        sdbusplus,
+        sdeventplus,
+    ],
+    include_directories: '..',
+    install: true,
+    link_with: libpower,
+)