Makefile: move determination test for OS to Makefile.d

Move the test code for OS detection in a extra directory to split it
from the main flashrom code.

flashrom-stable:
* Use `tail -n` to be standard compliant
* Fix some typos in comment

Change-Id: Id911f17f4100f242e1fde10d23a8459ddf38b369
Signed-off-by: Thomas Heijligen <thomas.heijligen@secunet.de>
Original-Reviewed-on: https://review.coreboot.org/c/flashrom/+/58015
Original-Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72241
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/Makefile.include b/Makefile.include
index 62c040c..12fdd81 100644
--- a/Makefile.include
+++ b/Makefile.include
@@ -31,6 +31,10 @@
 	$(eval override $(p) := no))
 endef
 
+# Run the C Preprocessor with file $1 and return the last line, removing quotes.
+define c_macro_test
+$(strip $(shell $(CC) -E $1 2>/dev/null | tail -n 1 | tr -d '"'))
+endef
 
 define COMPILER_TEST
 int main(int argc, char **argv)