Yabause / yabause

Yabause is a Sega Saturn emulator.
http://yabause.org
352 stars 195 forks source link

Build on armv7 problem #362

Open IlyaIndigo opened 7 years ago

IlyaIndigo commented 7 years ago

In obs package is building successfully on architecture aarch64, x86_64 and i586. But armv7 architecture there is a problem in the building.

[  494s] [100%] Linking CXX executable yabause
[  500s] ../libyabause.a(linkage_arm.s.o): In function `.csh2ptr':
[  500s] linkage_arm.s:(.text+0xf0): undefined reference to `CurrentSH2'
[  500s] collect2: error: ld returned 1 exit status
[  500s] make[2]: *** [src/qt/CMakeFiles/yabause-qt.dir/build.make:2516: src/qt/yabause] Error 1
[  500s] make[1]: *** [CMakeFiles/Makefile2:290: src/qt/CMakeFiles/yabause-qt.dir/all] Error 2
[  500s] make: *** [Makefile:150: all] Error 2

yabause in obs armv7_build_log.txt

belegdol commented 7 years ago

Looking at the commit history it looks like the equivalent of commit 3da979f1a1d1d7c1f21971e4a90a53c506ac8a6f needs to be made to linkage_arm.s In the meantime -DSH2_DYNAREC:BOOL=OFF passed to cmake disables the dynarec and allows yabause to build.

IlyaIndigo commented 7 years ago

Thank you, it work.

%ifarch armv7hl
%define sh2 -DSH2_DYNAREC=OFF
%endif
cmake .... %{?sh2}
belegdol commented 7 years ago

I don't think this should be closed, after all, the dynarec (arguably more important on underpowered arm machines) is still rbroken.

IlyaIndigo commented 7 years ago

Well, the more I have no way to verify how the package running on the hardware.