lamp test: Add vritual lamp test function

- This feature adds the functionality that enables force updating
  certain physical LEDs and skip updating certain physical LEDs as
  part of lamp test.

- This is a generic feature that gives more control over handing
  physical LEDs.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I6f06ed103b1ceefdaa774b7a74a4a392609000ed
diff --git a/configure.ac b/configure.ac
index 27d4d9d..4a50e38 100644
--- a/configure.ac
+++ b/configure.ac
@@ -101,6 +101,9 @@
     # lamp test timeout secs
     AC_ARG_VAR(LAMP_TEST_TIMEOUT_IN_SECS, [The lamp test timeout in seconds])
 
+    # JSON file having LED names that will be force updated and/or skipped during lamp test
+    AC_ARG_VAR(LAMP_TEST_LED_OVERRIDES_JSON, [JSON file having LED names that will be force updated and/or skipped during lamp test])
+
     AS_IF([test "x$LAMP_TEST_OBJECT" == "x"], [LAMP_TEST_OBJECT="/xyz/openbmc_project/led/groups/lamp_test"])
     AC_DEFINE_UNQUOTED([LAMP_TEST_OBJECT], ["$LAMP_TEST_OBJECT"], [The lamp test D-Bus object])
 
@@ -109,6 +112,9 @@
 
     AS_IF([test "x$LAMP_TEST_TIMEOUT_IN_SECS" == "x"], [LAMP_TEST_TIMEOUT_IN_SECS=240])
     AC_DEFINE_UNQUOTED([LAMP_TEST_TIMEOUT_IN_SECS], [$LAMP_TEST_TIMEOUT_IN_SECS], [The lamp test timeout in seconds])
+
+    AS_IF([test "x$LAMP_TEST_LED_OVERRIDES_JSON" == "x"], [LAMP_TEST_LED_OVERRIDES_JSON="/usr/share/phosphor-led-manager/lamp-test-led-overrides.json"])
+    AC_DEFINE_UNQUOTED([LAMP_TEST_LED_OVERRIDES_JSON], ["$LAMP_TEST_LED_OVERRIDES_JSON"], [JSON file having LED names that will be force updated and/or skipped during lamp test])
 )
 
 # Path of file for storing the names of asserted groups