]> code.delx.au - refind/blobdiff - include/refit_call_wrapper.h
Fixed bug that caused volume icons to be read only from default icons
[refind] / include / refit_call_wrapper.h
index 9b1f5c131a32c5ffeda0edada57e352fad65f26f..1bd4042a4cddd5d7194922d370267b654cb5a773 100644 (file)
@@ -1,7 +1,9 @@
 #ifndef __REFIT_CALL_WRAPPER_H__
 #define __REFIT_CALL_WRAPPER_H__
 
-#ifdef EFIX64
+#ifdef __MAKEWITH_GNUEFI
+
+#if defined (EFIX64) | defined (AARCH64)
 # define refit_call1_wrapper(f, a1) \
   uefi_call_wrapper(f, 1, (UINT64)(a1))
 # define refit_call2_wrapper(f, a1, a2) \
   uefi_call_wrapper(f, 10, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)
 #endif
 
+#else /* not GNU EFI -- TianoCore EDK2 */
+
+#define refit_call1_wrapper(f, a1) \
+        f(a1)
+#define refit_call2_wrapper(f, a1, a2) \
+        f(a1, a2)
+#define refit_call3_wrapper(f, a1, a2, a3) \
+        f(a1, a2, a3)
+#define refit_call4_wrapper(f, a1, a2, a3, a4) \
+        f(a1, a2, a3, a4)
+#define refit_call5_wrapper(f, a1, a2, a3, a4, a5) \
+        f(a1, a2, a3, a4, a5)
+#define refit_call6_wrapper(f, a1, a2, a3, a4, a5, a6) \
+        f(a1, a2, a3, a4, a5, a6)
+#define refit_call7_wrapper(f, a1, a2, a3, a4, a5, a6, a7) \
+        f(a1, a2, a3, a4, a5, a6, a7)
+#define refit_call8_wrapper(f, a1, a2, a3, a4, a5, a6, a7, a8) \
+        f(a1, a2, a3, a4, a5, a6, a7, a8)
+#define refit_call9_wrapper(f, a1, a2, a3, a4, a5, a6, a7, a8, a9) \
+        f(a1, a2, a3, a4, a5, a6, a7, a8, a9)
+#define refit_call10_wrapper(f, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) \
+        f(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)
+
+#define uefi_call_wrapper(f, n, ...) \
+        f(__VA_ARGS__)
+
+#endif /* not GNU EFI -- TianoCore EDK2 */
+
 #endif /* !__REFIT_CALL_WRAPPER_H__ */