Hello again,
first of all: sorry for delay.
I finally found a bit time to do some work again, although I'm in the
middle of the exam period. I committed a buildzip.pl change which can
install RaaA into /usr/local/{bin,lib,share}.
I have also made some progress in making Rockbox work with that layout.
I introduced "const char* get_user_file_path(const char *path, int
flags, char* buf, const size_t bufsize)" which returns Rockbox related
paths. It's capable of determining the path at runtime which is needed
to make $HOME/.config/rockbox (or rockbox.org what rbutil uses? I'm
still not clear on this) override some directories in /usr/local/share.
It returns the path, and copies it into buf if needed.
On target, it's an inline function which is optimized away by the
compiler so that it's not more expensive than using the #define directly.
It works, and I got RaaA mostly running with that direcory layout and
stuff in $HOME. Some places need conversion but it's not that many in
the core. On a side note, the database has problems with recursive
symlinks, any ideas on that?
You can see it in use on my git tree.
I would like to know whether you like that approach or not. It relies on
compiler optimization (but even -O1 manages it, I checked some calls for
that) to be for free on target, and it makes getting the path ugly in
some places. But I cannot really think of something better.
Best regards.