diff --git a/base64.h b/base64.h
index 171f535..5e91efb 100644
--- a/base64.h
+++ b/base64.h
@@ -1,3 +1,10 @@
+#ifndef CPER_BASE64_H
+#define CPER_BASE64_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "edk/BaseTypes.h"
 
 /**
@@ -11,3 +18,9 @@
  * Caller is responsible for freeing the returned buffer.
  */
 CHAR8 *base64_encode(const UINT8 *src, INT32 len, INT32 *out_len);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/cper-parse.h b/cper-parse.h
index 752036e..e50d0cc 100644
--- a/cper-parse.h
+++ b/cper-parse.h
@@ -1,5 +1,10 @@
 #ifndef CPER_PARSE_H
 #define CPER_PARSE_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 
 #define CPER_HEADER_VALID_BITFIELD_NAMES                                       \
@@ -36,4 +41,8 @@
 void ir_to_cper(json_object *ir, FILE *out);
 void ir_single_section_to_cper(json_object *ir, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/cper-utils.h b/cper-utils.h
index 22280fe..e4c14a1 100644
--- a/cper-utils.h
+++ b/cper-utils.h
@@ -4,6 +4,10 @@
 #define GUID_STRING_LENGTH 48
 #define TIMESTAMP_LENGTH   24
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "common-utils.h"
 #include <json.h>
 
@@ -42,4 +46,8 @@
 //The available severity types for CPER.
 extern const char *CPER_SEVERITY_TYPES[4];
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/edk/BaseTypes.h b/edk/BaseTypes.h
index 9958889..93320e4 100644
--- a/edk/BaseTypes.h
+++ b/edk/BaseTypes.h
@@ -11,6 +11,10 @@
 #ifndef CPER_BASETYPES_H
 #define CPER_BASETYPES_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 ///
 /// 8-byte unsigned value
 ///
@@ -98,4 +102,8 @@
 #define SIGNATURE_32(A, B, C, D)                                               \
 	(SIGNATURE_16(A, B) | (SIGNATURE_16(C, D) << 16))
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/edk/Cper.h b/edk/Cper.h
index 5fd5b48..f1bbdb1 100644
--- a/edk/Cper.h
+++ b/edk/Cper.h
@@ -9,11 +9,16 @@
   GUIDs defined in UEFI 2.7 Specification.
 
 **/
-#include "BaseTypes.h"
 
 #ifndef __CPER_GUID_H__
 #define __CPER_GUID_H__
 
+#include "BaseTypes.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #pragma pack(push, 1)
 
 #define EFI_ERROR_RECORD_SIGNATURE_START SIGNATURE_32('C', 'P', 'E', 'R')
@@ -1400,4 +1405,8 @@
 extern EFI_GUID gEfiNvidiaErrorSectionGuid;
 #pragma pack(pop)
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/generator/cper-generate.h b/generator/cper-generate.h
index edbac36..042431f 100644
--- a/generator/cper-generate.h
+++ b/generator/cper-generate.h
@@ -1,10 +1,18 @@
 #ifndef CPER_GENERATE_H
 #define CPER_GENERATE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <stdio.h>
 #include "../edk/BaseTypes.h"
 
 void generate_cper_record(char **types, UINT16 num_sections, FILE *out);
 void generate_single_section_record(char *type, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/generator/gen-utils.h b/generator/gen-utils.h
index 0ed28c2..1228253 100644
--- a/generator/gen-utils.h
+++ b/generator/gen-utils.h
@@ -1,5 +1,9 @@
-#ifndef GEN_UTILS_H
-#define GEN_UTILS_H
+#ifndef CPER_GEN_UTILS_H
+#define CPER_GEN_UTILS_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 #include <stdlib.h>
 #include "../edk/BaseTypes.h"
@@ -18,4 +22,8 @@
 void create_valid_error_section(UINT8 *start);
 UINT8 int_to_bcd(int value);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/generator/sections/gen-section.h b/generator/sections/gen-section.h
index be00b5f..d1987b9 100644
--- a/generator/sections/gen-section.h
+++ b/generator/sections/gen-section.h
@@ -1,6 +1,10 @@
 #ifndef GEN_SECTIONS_H
 #define GEN_SECTIONS_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <stdlib.h>
 #include "../../edk/Cper.h"
 
@@ -32,4 +36,8 @@
 extern CPER_GENERATOR_DEFINITION generator_definitions[];
 extern const size_t generator_definitions_len;
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/json-schema.h b/json-schema.h
index 59fb58b..7dbbe48 100644
--- a/json-schema.h
+++ b/json-schema.h
@@ -1,5 +1,9 @@
-#ifndef JSON_SCHEMA_H
-#define JSON_SCHEMA_H
+#ifndef CPER_JSON_SCHEMA_H
+#define CPER_JSON_SCHEMA_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 #include <json.h>
 
@@ -13,4 +17,8 @@
 void validate_schema_debug_enable();
 void validate_schema_debug_disable();
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-arm.h b/sections/cper-section-arm.h
index e865434..fdefeae 100644
--- a/sections/cper-section-arm.h
+++ b/sections/cper-section-arm.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_ARM_H
 #define CPER_SECTION_ARM_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -459,4 +463,8 @@
 json_object *cper_section_arm_to_ir(void *section);
 void ir_section_arm_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-ccix-per.h b/sections/cper-section-ccix-per.h
index 86e277c..69dbea2 100644
--- a/sections/cper-section-ccix-per.h
+++ b/sections/cper-section-ccix-per.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_CCIX_PER_H
 #define CPER_SECTION_CCIX_PER_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -24,4 +28,8 @@
 json_object *cper_section_ccix_per_to_ir(void *section);
 void ir_section_ccix_per_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-cxl-component.h b/sections/cper-section-cxl-component.h
index 69b9066..f3b8ad1 100644
--- a/sections/cper-section-cxl-component.h
+++ b/sections/cper-section-cxl-component.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_CXL_COMPONENT_H
 #define CPER_SECTION_CXL_COMPONENT_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -36,4 +40,8 @@
 json_object *cper_section_cxl_component_to_ir(void *section);
 void ir_section_cxl_component_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-cxl-protocol.h b/sections/cper-section-cxl-protocol.h
index 9339f57..e4854a3 100644
--- a/sections/cper-section-cxl-protocol.h
+++ b/sections/cper-section-cxl-protocol.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_CXL_PROTOCOL_H
 #define CPER_SECTION_CXL_PROTOCOL_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -67,4 +71,8 @@
 json_object *cper_section_cxl_protocol_to_ir(void *section);
 void ir_section_cxl_protocol_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-dmar-generic.h b/sections/cper-section-dmar-generic.h
index 035b25d..8e96ecf 100644
--- a/sections/cper-section-dmar-generic.h
+++ b/sections/cper-section-dmar-generic.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_DMAR_GENERIC_H
 #define CPER_SECTION_DMAR_GENERIC_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -68,4 +72,8 @@
 json_object *cper_section_dmar_generic_to_ir(void *section);
 void ir_section_dmar_generic_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-dmar-iommu.h b/sections/cper-section-dmar-iommu.h
index d15a9d1..2f990ab 100644
--- a/sections/cper-section-dmar-iommu.h
+++ b/sections/cper-section-dmar-iommu.h
@@ -1,10 +1,18 @@
 #ifndef CPER_SECTION_DMAR_IOMMU_H
 #define CPER_SECTION_DMAR_IOMMU_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
 json_object *cper_section_dmar_iommu_to_ir(void *section);
 void ir_section_dmar_iommu_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-dmar-vtd.h b/sections/cper-section-dmar-vtd.h
index f78b2d1..3c3a134 100644
--- a/sections/cper-section-dmar-vtd.h
+++ b/sections/cper-section-dmar-vtd.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_DMAR_VTD_H
 #define CPER_SECTION_DMAR_VTD_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -33,4 +37,8 @@
 json_object *cper_section_dmar_vtd_to_ir(void *section);
 void ir_section_dmar_vtd_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-firmware.h b/sections/cper-section-firmware.h
index eab0e99..858ee5d 100644
--- a/sections/cper-section-firmware.h
+++ b/sections/cper-section-firmware.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_FIRMWARE_H
 #define CPER_SECTION_FIRMWARE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -20,4 +24,8 @@
 json_object *cper_section_firmware_to_ir(void *section);
 void ir_section_firmware_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-generic.h b/sections/cper-section-generic.h
index 765794e..7148cfd 100644
--- a/sections/cper-section-generic.h
+++ b/sections/cper-section-generic.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_GENERIC_H
 #define CPER_SECTION_GENERIC_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -65,4 +69,8 @@
 json_object *cper_section_generic_to_ir(void *section);
 void ir_section_generic_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-ia32x64.h b/sections/cper-section-ia32x64.h
index c020ff4..4670d48 100644
--- a/sections/cper-section-ia32x64.h
+++ b/sections/cper-section-ia32x64.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_IA32X64_H
 #define CPER_SECTION_IA32X64_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -108,4 +112,8 @@
 json_object *cper_section_ia32x64_to_ir(void *section);
 void ir_section_ia32x64_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-ipf.h b/sections/cper-section-ipf.h
index cf346ef..9e265db 100644
--- a/sections/cper-section-ipf.h
+++ b/sections/cper-section-ipf.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_IPF_H
 #define CPER_SECTION_IPF_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -69,4 +73,8 @@
 
 json_object *cper_section_ipf_to_ir(void *section);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-memory.h b/sections/cper-section-memory.h
index 5134f6e..4d293d8 100644
--- a/sections/cper-section-memory.h
+++ b/sections/cper-section-memory.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_MEMORY_H
 #define CPER_SECTION_MEMORY_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -54,4 +58,8 @@
 void ir_section_memory_to_cper(json_object *section, FILE *out);
 void ir_section_memory2_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-nvidia.h b/sections/cper-section-nvidia.h
index 973c3af..b05fdde 100644
--- a/sections/cper-section-nvidia.h
+++ b/sections/cper-section-nvidia.h
@@ -1,10 +1,18 @@
 #ifndef CPER_SECTION_NVIDIA_H
 #define CPER_SECTION_NVIDIA_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
 json_object *cper_section_nvidia_to_ir(void *section);
 void ir_section_nvidia_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-pci-bus.h b/sections/cper-section-pci-bus.h
index 6a959e4..93f61be 100644
--- a/sections/cper-section-pci-bus.h
+++ b/sections/cper-section-pci-bus.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_PCI_BUS_H
 #define CPER_SECTION_PCI_BUS_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -30,4 +34,8 @@
 json_object *cper_section_pci_bus_to_ir(void *section);
 void ir_section_pci_bus_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-pci-dev.h b/sections/cper-section-pci-dev.h
index 5326a8c..9d161c9 100644
--- a/sections/cper-section-pci-dev.h
+++ b/sections/cper-section-pci-dev.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_PCI_DEV_H
 #define CPER_SECTION_PCI_DEV_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -36,4 +40,8 @@
 json_object *cper_section_pci_dev_to_ir(void *section);
 void ir_section_pci_dev_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section-pcie.h b/sections/cper-section-pcie.h
index b0042c5..b2581e5 100644
--- a/sections/cper-section-pcie.h
+++ b/sections/cper-section-pcie.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_PCIE_H
 #define CPER_SECTION_PCIE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include "../edk/Cper.h"
 
@@ -32,4 +36,8 @@
 json_object *cper_section_pcie_to_ir(void *section);
 void ir_section_pcie_to_cper(json_object *section, FILE *out);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/sections/cper-section.h b/sections/cper-section.h
index 4ec8650..71cf4b1 100644
--- a/sections/cper-section.h
+++ b/sections/cper-section.h
@@ -1,6 +1,10 @@
 #ifndef CPER_SECTION_H
 #define CPER_SECTION_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <json.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -17,4 +21,8 @@
 extern CPER_SECTION_DEFINITION section_definitions[];
 extern const size_t section_definitions_len;
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
diff --git a/tests/base64_test.cpp b/tests/base64_test.cpp
index b762b8e..3fcb3af 100644
--- a/tests/base64_test.cpp
+++ b/tests/base64_test.cpp
@@ -1,6 +1,4 @@
-extern "C" {
 #include "base64.h"
-}
 
 #include "gtest/gtest.h"
 #include "gmock/gmock.h"
diff --git a/tests/ir-tests.cpp b/tests/ir-tests.cpp
index e8db79f..061f0a8 100644
--- a/tests/ir-tests.cpp
+++ b/tests/ir-tests.cpp
@@ -7,14 +7,12 @@
 #include <cctype>
 #include "gtest/gtest.h"
 #include "test-utils.hpp"
-extern "C" {
 #include <json.h>
 #include "../cper-parse.h"
 #include "../json-schema.h"
 #include "../generator/cper-generate.h"
 #include "../sections/cper-section.h"
 #include "../generator/sections/gen-section.h"
-}
 
 /*
 * Test templates.
diff --git a/tests/test-utils.cpp b/tests/test-utils.cpp
index 3837030..53aecd3 100644
--- a/tests/test-utils.cpp
+++ b/tests/test-utils.cpp
@@ -7,10 +7,9 @@
 #include <cstdio>
 #include <cstdlib>
 #include "test-utils.hpp"
-extern "C" {
+
 #include "../edk/BaseTypes.h"
 #include "../generator/cper-generate.h"
-}
 
 //Returns a ready-for-use memory stream containing a CPER record with the given sections inside.
 FILE *generate_record_memstream(const char **types, UINT16 num_types,
