libretro / picodrive

Fast MegaDrive/MegaCD/32X emulator
Other
38 stars 60 forks source link

configure broken on armv7l since commit 107cdd508bdeb79763bd3890581cacbe7b0964dd #147

Closed neilmunday closed 3 years ago

neilmunday commented 3 years ago

Platform: Raspberry Pi 4 OS: Arch Linux (armv7l)

Commit 107cdd508bdeb79763bd3890581cacbe7b0964dd introduced this change to configure:

 check_define()
 {
-  $CC -E -dD $CFLAGS pico/arm_features.h | grep -q $1 || return 1
+  $CC -E -dD $CFLAGS pico/arm_features.h | grep -q "define[    ]*$1" || return 1
   return 0
 }

With gcc 10.2.0 on arm7l under Arch Linux, this causes configure to fail with:

$ ./configure
compiler test failed, please check config.log

The contents of config.log is:

gcc -mfpu=vfp -mfloat-abi=softfp /tmp/picodrive-conf-31220-21535-4076.c -o /tmp/picodrive-conf-31294-21535-8438
/usr/bin/ld: error: /tmp/picodrive-conf-31294-21535-8438 uses VFP register arguments, /tmp/ccltKYl1.o does not
/usr/bin/ld: failed to merge target specific data of file /tmp/ccltKYl1.o
collect2: error: ld returned 1 exit status
irixxxx commented 3 years ago

Please send me the full output of (with whatever additional CFLAGS you are supplying to configure): gcc -E -dD pico/arm_features.h You can possibly temporarily fix this by exporting CFLAGS="-mfpu=neon -mfloat-abi=hard" to configure.

irixxxx commented 3 years ago

BTW not libretro related; please don't report this on the libretro fork, use my base repo irixxxx/picodrive for this.

neilmunday commented 3 years ago

Apologies, I didn't realise. I will close the issue and open one on your base repo with the information required.