+2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Revert 2009-06-10 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Put checks for __bswapsi2 and __bswapdi2.
+ * include/grub/powerpc/libgcc.h: Don't use weak attribute for all
+ exports.
+ * include/grub/sparc64/libgcc.h: Likewise. Use
+ preprocessor conditionals.
+
2009-10-14 Robert Millan <rmh.grub@aybabtu.com>
* conf/common.rmk (grub-dumpbios): Remove rule.
CPPFLAGS="$TARGET_CPPFLAGS"
LDFLAGS="$TARGET_LDFLAGS"
+# Check for target functions.
+AC_CHECK_FUNCS(__bswapsi2 __bswapdi2)
+
# Defined in aclocal.m4.
grub_PROG_TARGET_CC
if test "x$TARGET_APPLE_CC" != x1 ; then
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
-void EXPORT_FUNC (memset) (void) __attribute__ ((weak));
-void EXPORT_FUNC (__ashldi3) (void) __attribute__ ((weak));
-void EXPORT_FUNC (__ashrdi3) (void) __attribute__ ((weak));
-void EXPORT_FUNC (__lshrdi3) (void) __attribute__ ((weak));
-void EXPORT_FUNC (__trampoline_setup) (void) __attribute__ ((weak));
-void EXPORT_FUNC (__ucmpdi2) (void) __attribute__ ((weak));
+void EXPORT_FUNC (memset) (void);
+void EXPORT_FUNC (__ashldi3) (void);
+void EXPORT_FUNC (__ashrdi3) (void);
+void EXPORT_FUNC (__lshrdi3) (void);
+void EXPORT_FUNC (__trampoline_setup) (void);
+void EXPORT_FUNC (__ucmpdi2) (void);
void EXPORT_FUNC (memset) (void);
+#ifdef HAVE___BSWAPSI2
typedef int SItype __attribute__ ((mode (SI)));
-SItype EXPORT_FUNC (__bswapsi2) (SItype) __attribute__ ((weak));
+SItype EXPORT_FUNC (__bswapsi2) (SItype);
+#endif
+#ifdef HAVE___BSWAPDI2
typedef int DItype __attribute__ ((mode (DI)));
-DItype EXPORT_FUNC (__bswapdi2) (DItype) __attribute__ ((weak));
+DItype EXPORT_FUNC (__bswapdi2) (DItype);
+#endif