arm port

For those want to deploy in raspberry pi, and you may need further test as I compiled it only for an arm based tv stick.

Modified files include:

[ul][li][*]SFMT.h, added generic solution & keep sse2 one.[/li][li]del all asm code for files under g3dlite:[/li]
[li]Array.h[/li][li]AtomicInt32.h[/li][li]Log.h[/li][li]TextOutput.h[/li][li]debugPrintf.h[/li][li]format.h[/li][li]Log.cpp[/li][li]System.cpp[/li][li]debugAssert.cpp[/li][li]format.cpp[/li][/ul]

In order to cross compile, you need:

[ul][li][*]arm-linux-gnueabihf-gcc[/li][li]arm-linux-gnueabihf-g++[/li][li]arm-based libraries of → readline, openssl, ACE, libz, libbz2, mysql,.[/li][/ul]
P.S. if u stuck by undefined reference to pthread error, do the following:

[ul][li][*] copy gcc, g++, ld and relevant files to ur host machine as[/li]
[li] /usr/bin/arm-linux-gnueabihf-gcc[/li][li] /usr/bin/arm-linux-gnueabihf-g++[/li][li] /usr/arm-linux-gnueabihf/bin/ld[/li][li] /usr/arm-linux-gnueabihf/lib/libpthread-2.15.so[/li][li] /usr/arm-linux-gnueabihf/lib/libpthread.so.0[/li][/ul]

[ul][li]add/replace /usr/arm-linux-gnueabihf/lib/libpthread.so with content:[/li][/ul]
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
OUTPUT_FORMAT(elf32-littlearm)
GROUP ( /usr/arm-linux-gnueabihf/lib/libpthread.so.0 /usr/arm-linux-gnueabihf/lib/libpthread_nonshared.a )[updates]

[ul][li]2013-10-06 modified AtomicInt32.h, compareAndSet();[/li][/ul]
arm_port.patch

Interesting.

Would it be possible to get this working under android? Since android is based on Linux and most android devices run on arm processors?

You should be able to run it from a terminal emulator, just don’t expect it to have an icon or anything fancy

Do expect stuff to crash though, that patch removes the thread-safety of a G3D variable exchange function which might or might not be vital, not to mention that it removes the calling convention from a lot of functions, wether it will work or not depends on the specifics of the device and compiler that you will use.

should have used more preprocessor directives instead of commenting shit out, making the code no longer work on other platforms.

I agree

http://www.trinitycore.org/f/topic/8363-trinitycore-portable/

Here you have an old one I made that supports different arches without breaking all the code by using CMAKE options and preprocessor directives.

— Canned message start —

This thread is not related to the official Trinity codebase and was moved to the Custom Code section.

Please read the stickies next time.

— Canned message end —