diff --git a/AST.h b/AST.h
index a4b4cda..12dfc89 100644
--- a/AST.h
+++ b/AST.h
@@ -153,7 +153,8 @@
             const FQName &package,
             const std::string &klass);
 
-    std::string makeHeaderGuard(const std::string &baseName) const;
+    std::string makeHeaderGuard(const std::string &baseName,
+                                bool indicateGenerated = true) const;
     void enterLeaveNamespace(Formatter &out, bool enter) const;
 
     static void generateCheckNonNull(Formatter &out, const std::string &nonNull);
diff --git a/generateCpp.cpp b/generateCpp.cpp
index 573a662..95176f9 100644
--- a/generateCpp.cpp
+++ b/generateCpp.cpp
@@ -25,6 +25,7 @@
 
 #include <algorithm>
 #include <hidl-util/Formatter.h>
+#include <hidl-util/StringHelper.h>
 #include <android-base/logging.h>
 #include <string>
 #include <vector>
@@ -67,13 +68,18 @@
     mPackage.getPackageAndVersionComponents(components, cpp_compatible);
 }
 
-std::string AST::makeHeaderGuard(const std::string &baseName) const {
-    std::string guard = "HIDL_GENERATED_";
-    guard += mPackage.tokenName();
+std::string AST::makeHeaderGuard(const std::string &baseName,
+                                 bool indicateGenerated) const {
+    std::string guard;
 
+    if (indicateGenerated) {
+        guard += "HIDL_GENERATED_";
+    }
+
+    guard += StringHelper::Uppercase(mPackage.tokenName());
     guard += "_";
-    guard += baseName;
-    guard += "_H_";
+    guard += StringHelper::Uppercase(baseName);
+    guard += "_H";
 
     return guard;
 }
diff --git a/generateCppImpl.cpp b/generateCppImpl.cpp
index 25310f5..caa0ac0 100644
--- a/generateCppImpl.cpp
+++ b/generateCppImpl.cpp
@@ -104,7 +104,7 @@
 
     Formatter out(file);
 
-    const std::string guard = makeHeaderGuard(baseName);
+    const std::string guard = makeHeaderGuard(baseName, false /* indicateGenerated */);
 
     out << "#ifndef " << guard << "\n";
     out << "#define " << guard << "\n\n";
