pldm: Include config.h via compiler argument

This removes any ambiguity about which config.h is being included.
Subprojects such as libpldm and phosphor-logging also generate config.h
files, and these are exposed in the include path.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I3e0ccd6339f088380ffa29d41167b07aefc7dd16
diff --git a/common/flight_recorder.hpp b/common/flight_recorder.hpp
index a2710f3..fe6e906 100644
--- a/common/flight_recorder.hpp
+++ b/common/flight_recorder.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include <config.h>
-
 #include <common/utils.hpp>
 #include <phosphor-logging/lg2.hpp>
 
diff --git a/common/utils.cpp b/common/utils.cpp
index 03cfd9e..b4bcfcb 100644
--- a/common/utils.cpp
+++ b/common/utils.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "utils.hpp"
 
 #include <libpldm/pdr.h>
diff --git a/host-bmc/host_pdr_handler.cpp b/host-bmc/host_pdr_handler.cpp
index 1b0024c..886ca58 100644
--- a/host-bmc/host_pdr_handler.cpp
+++ b/host-bmc/host_pdr_handler.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "host_pdr_handler.hpp"
 
 #include <assert.h>
diff --git a/libpldmresponder/base.cpp b/libpldmresponder/base.cpp
index e5bbf2f..e675be8 100644
--- a/libpldmresponder/base.cpp
+++ b/libpldmresponder/base.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "base.hpp"
 
 #include "common/utils.hpp"
diff --git a/libpldmresponder/base.hpp b/libpldmresponder/base.hpp
index 2f7c714..1bd88f8 100644
--- a/libpldmresponder/base.hpp
+++ b/libpldmresponder/base.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "libpldmresponder/platform.hpp"
 #include "pldmd/handler.hpp"
 #include "requester/handler.hpp"
diff --git a/libpldmresponder/bios.hpp b/libpldmresponder/bios.hpp
index f72c9e8..517231f 100644
--- a/libpldmresponder/bios.hpp
+++ b/libpldmresponder/bios.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "bios_config.hpp"
 #include "bios_table.hpp"
 #include "pldmd/handler.hpp"
diff --git a/libpldmresponder/bios_attribute.cpp b/libpldmresponder/bios_attribute.cpp
index aa6ff9f..0923ab5 100644
--- a/libpldmresponder/bios_attribute.cpp
+++ b/libpldmresponder/bios_attribute.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "bios_attribute.hpp"
 
 #include "bios_config.hpp"
diff --git a/libpldmresponder/bios_enum_attribute.cpp b/libpldmresponder/bios_enum_attribute.cpp
index ef03749..ba8895e 100644
--- a/libpldmresponder/bios_enum_attribute.cpp
+++ b/libpldmresponder/bios_enum_attribute.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "bios_enum_attribute.hpp"
 
 #include "common/utils.hpp"
diff --git a/libpldmresponder/fru.cpp b/libpldmresponder/fru.cpp
index f4311b8..92d9290 100644
--- a/libpldmresponder/fru.cpp
+++ b/libpldmresponder/fru.cpp
@@ -2,7 +2,6 @@
 
 #include "common/utils.hpp"
 
-#include <config.h>
 #include <libpldm/entity.h>
 #include <libpldm/utils.h>
 #include <systemd/sd-journal.h>
diff --git a/libpldmresponder/fru.hpp b/libpldmresponder/fru.hpp
index 0f0ae93..c47d94c 100644
--- a/libpldmresponder/fru.hpp
+++ b/libpldmresponder/fru.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "fru_parser.hpp"
 #include "pldmd/handler.hpp"
 
diff --git a/libpldmresponder/pdr.hpp b/libpldmresponder/pdr.hpp
index f9ebf52..d0ec8f1 100644
--- a/libpldmresponder/pdr.hpp
+++ b/libpldmresponder/pdr.hpp
@@ -3,7 +3,6 @@
 #include "common/utils.hpp"
 #include "libpldmresponder/pdr_utils.hpp"
 
-#include <config.h>
 #include <stdint.h>
 
 namespace pldm
diff --git a/libpldmresponder/pdr_state_effecter.hpp b/libpldmresponder/pdr_state_effecter.hpp
index 94a8932..1dc2250 100644
--- a/libpldmresponder/pdr_state_effecter.hpp
+++ b/libpldmresponder/pdr_state_effecter.hpp
@@ -3,7 +3,6 @@
 #include "pdr.hpp"
 #include "pdr_utils.hpp"
 
-#include <config.h>
 #include <libpldm/platform.h>
 
 #include <phosphor-logging/lg2.hpp>
diff --git a/libpldmresponder/pdr_utils.cpp b/libpldmresponder/pdr_utils.cpp
index 2e65316..dc6294e 100644
--- a/libpldmresponder/pdr_utils.cpp
+++ b/libpldmresponder/pdr_utils.cpp
@@ -1,6 +1,5 @@
 #include "pdr.hpp"
 
-#include <config.h>
 #include <libpldm/platform.h>
 
 #include <phosphor-logging/lg2.hpp>
diff --git a/libpldmresponder/platform.cpp b/libpldmresponder/platform.cpp
index 679f3b5..2d32468 100644
--- a/libpldmresponder/platform.cpp
+++ b/libpldmresponder/platform.cpp
@@ -12,7 +12,6 @@
 #include "platform_state_effecter.hpp"
 #include "platform_state_sensor.hpp"
 
-#include <config.h>
 #include <libpldm/entity.h>
 #include <libpldm/state_set.h>
 
diff --git a/libpldmresponder/platform.hpp b/libpldmresponder/platform.hpp
index 19f2a78..fed0421 100644
--- a/libpldmresponder/platform.hpp
+++ b/libpldmresponder/platform.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/utils.hpp"
 #include "event_parser.hpp"
 #include "fru.hpp"
diff --git a/libpldmresponder/platform_numeric_effecter.hpp b/libpldmresponder/platform_numeric_effecter.hpp
index 5e74c1c..3acfb3f 100644
--- a/libpldmresponder/platform_numeric_effecter.hpp
+++ b/libpldmresponder/platform_numeric_effecter.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/utils.hpp"
 #include "libpldmresponder/pdr.hpp"
 #include "pdr_utils.hpp"
diff --git a/libpldmresponder/platform_state_effecter.hpp b/libpldmresponder/platform_state_effecter.hpp
index b44d446..cfcd539 100644
--- a/libpldmresponder/platform_state_effecter.hpp
+++ b/libpldmresponder/platform_state_effecter.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/utils.hpp"
 #include "libpldmresponder/pdr.hpp"
 #include "pdr_utils.hpp"
diff --git a/libpldmresponder/platform_state_sensor.hpp b/libpldmresponder/platform_state_sensor.hpp
index d7d6559..de5b14d 100644
--- a/libpldmresponder/platform_state_sensor.hpp
+++ b/libpldmresponder/platform_state_sensor.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/utils.hpp"
 #include "libpldmresponder/pdr.hpp"
 #include "pdr_utils.hpp"
diff --git a/meson.build b/meson.build
index c846121..1cb01e7 100644
--- a/meson.build
+++ b/meson.build
@@ -59,10 +59,12 @@
 conf_data.set('FLIGHT_RECORDER_MAX_ENTRIES',get_option('flightrecorder-max-entries'))
 conf_data.set_quoted('HOST_EID_PATH', join_paths(package_datadir, 'host_eid'))
 conf_data.set('MAXIMUM_TRANSFER_SIZE', get_option('maximum-transfer-size'))
-configure_file(output: 'config.h',
+config = configure_file(output: 'config.h',
   configuration: conf_data
 )
 
+add_project_arguments('-include', '@0@'.format(config), language: 'cpp')
+
 cpp = meson.get_compiler('cpp')
 
 phosphor_dbus_interfaces = dependency('phosphor-dbus-interfaces')
diff --git a/oem/ibm/libpldmresponder/file_io.cpp b/oem/ibm/libpldmresponder/file_io.cpp
index 7abd620..c57c387 100644
--- a/oem/ibm/libpldmresponder/file_io.cpp
+++ b/oem/ibm/libpldmresponder/file_io.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "file_io.hpp"
 
 #include "file_io_by_type.hpp"
diff --git a/oem/ibm/libpldmresponder/file_io.hpp b/oem/ibm/libpldmresponder/file_io.hpp
index aa3b9a9..cd5c54b 100644
--- a/oem/ibm/libpldmresponder/file_io.hpp
+++ b/oem/ibm/libpldmresponder/file_io.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/utils.hpp"
 #include "oem/ibm/requester/dbus_to_file_handler.hpp"
 #include "oem_ibm_handler.hpp"
diff --git a/oem/ibm/libpldmresponder/file_io_by_type.cpp b/oem/ibm/libpldmresponder/file_io_by_type.cpp
index 0f93efb..5a43bd6 100644
--- a/oem/ibm/libpldmresponder/file_io_by_type.cpp
+++ b/oem/ibm/libpldmresponder/file_io_by_type.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "file_io_by_type.hpp"
 
 #include "common/utils.hpp"
diff --git a/oem/ibm/libpldmresponder/file_io_type_lid.hpp b/oem/ibm/libpldmresponder/file_io_type_lid.hpp
index 382dbaf..a4bbb4e 100644
--- a/oem/ibm/libpldmresponder/file_io_type_lid.hpp
+++ b/oem/ibm/libpldmresponder/file_io_type_lid.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "file_io_by_type.hpp"
 
 #include <phosphor-logging/lg2.hpp>
diff --git a/oem/ibm/libpldmresponder/file_io_type_pel.cpp b/oem/ibm/libpldmresponder/file_io_type_pel.cpp
index ba94f4e..1783c77 100644
--- a/oem/ibm/libpldmresponder/file_io_type_pel.cpp
+++ b/oem/ibm/libpldmresponder/file_io_type_pel.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "file_io_type_pel.hpp"
 
 #include "common/utils.hpp"
diff --git a/requester/handler.hpp b/requester/handler.hpp
index 727adf9..1f29b3d 100644
--- a/requester/handler.hpp
+++ b/requester/handler.hpp
@@ -1,7 +1,5 @@
 #pragma once
 
-#include "config.h"
-
 #include "common/types.hpp"
 #include "pldmd/instance_id.hpp"
 #include "request.hpp"
diff --git a/softoff/softoff.cpp b/softoff/softoff.cpp
index b5d9e8c..ec19988 100644
--- a/softoff/softoff.cpp
+++ b/softoff/softoff.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "softoff.hpp"
 
 #include "common/utils.hpp"