--- openrc-0.11.8.orig/src/libeinfo/einfo.h
+++ openrc-0.11.8/src/libeinfo/einfo.h
@@ -48,7 +48,9 @@
 # endif
 #endif
 
-__BEGIN_DECLS
+#ifdef  __cplusplus
+extern "C" {
+#endif
 
 /*! @brief Color types to use */
 typedef enum
@@ -140,5 +142,8 @@
 /*! @brief Prefix each einfo line with something */
 void eprefix(const char * EINFO_RESTRICT);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
+
 #endif
--- openrc-0.11.8.orig/src/librc/rc.h.in
+++ openrc-0.11.8/src/librc/rc.h.in
@@ -31,7 +31,9 @@
 #include <stdbool.h>
 #include <stdio.h>
 
-__BEGIN_DECLS
+#ifdef  __cplusplus
+extern "C" {
+#endif
 
 #define RC_PREFIX "@PREFIX@"
 #define RC_SYSCONFDIR		"@SYSCONFDIR@"
@@ -563,5 +565,8 @@
  * we have our own */
 ssize_t rc_getline(char **, size_t *, FILE *);
 
-__END_DECLS
+#ifdef  __cplusplus
+}
+#endif
+
 #endif