* configure.ac: Define NEED_REGISTER_FRAME_INFO.
* include/grub/misc.h (__register_frame_info)
[NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
(__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
* kern/misc.c (__register_frame_info)
[NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
(__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
+2010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix cygwin compilation.
+
+ * configure.ac: Define NEED_REGISTER_FRAME_INFO.
+ * include/grub/misc.h (__register_frame_info)
+ [NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
+ (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
+ * kern/misc.c (__register_frame_info)
+ [NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
+ (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
+
2010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
* configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols.
# For platforms where ELF is not the default link format.
AC_MSG_CHECKING([for command to convert module to ELF format])
case "${host_os}" in
- cygwin) TARGET_OBJ2ELF='grub-pe2elf' ;;
+ cygwin) TARGET_OBJ2ELF='grub-pe2elf';
+# FIXME: put proper test here
+ AC_DEFINE([NEED_REGISTER_FRAME_INFO], 1,
+ [Define to 1 if GCC generates calls to __register_frame_info()])
+ ;;
*) ;;
esac
AC_SUBST(TARGET_OBJ2ELF)
void EXPORT_FUNC(__enable_execute_stack) (void *addr);
#endif
+#if defined (NEED_REGISTER_FRAME_INFO) && !defined(GRUB_UTIL)
+void EXPORT_FUNC (__register_frame_info) (void);
+void EXPORT_FUNC (__deregister_frame_info) (void);
+#endif
+
/* Inline functions. */
static inline unsigned int
}
#endif
+#if defined (NEED_REGISTER_FRAME_INFO) && !defined(GRUB_UTIL)
+void __register_frame_info (void)
+{
+}
+
+void __deregister_frame_info (void)
+{
+}
+#endif