summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/HPMi.h6
-rw-r--r--src/plugins/HPMHooking.h4
2 files changed, 10 insertions, 0 deletions
diff --git a/src/common/HPMi.h b/src/common/HPMi.h
index 7698d3ca7..3d39f06d4 100644
--- a/src/common/HPMi.h
+++ b/src/common/HPMi.h
@@ -241,9 +241,15 @@ struct HPMi_interface {
#ifdef HERCULES_CORE
#define HPM_SYMBOL(n, s) (HPM->share((s), (n)), true)
#else // ! HERCULES_CORE
+#ifdef HERCULES_CORE_HPMI_SKIP
+extern struct HPMi_interface HPMi_s;
+extern struct HPMi_interface *HPMi;
+extern void *(*import_symbol) (char *name, unsigned int pID);
+#else
HPExport struct HPMi_interface HPMi_s;
HPExport struct HPMi_interface *HPMi;
HPExport void *(*import_symbol) (char *name, unsigned int pID);
+#endif
#define HPM_SYMBOL(n, s) ((s) = import_symbol((n),HPMi->pid))
#endif // !HERCULES_CORE
diff --git a/src/plugins/HPMHooking.h b/src/plugins/HPMHooking.h
index f94dccac4..39d63a50b 100644
--- a/src/plugins/HPMHooking.h
+++ b/src/plugins/HPMHooking.h
@@ -41,7 +41,11 @@ struct HPMHooking_core_interface {
const char *(*Hooked)(bool *fr);
};
#else // ! HERCULES_CORE
+#ifdef HERCULES_CORE_HPMI_SKIP
+extern struct HPMHooking_interface HPMHooking_s;
+#else
HPExport struct HPMHooking_interface HPMHooking_s;
+#endif
#include "HPMHooking/HPMHooking.Defs.inc"