How to handle libraries?

Hi, since I'm several of us are working on a library port right now (as i.e. discussed previously in the attached email or Christian who is porting redis or me who is porting libcoap). We have to discuss how to include libraries into RIOT in the future. As of now I used an pretty ugly hack by wrapping a submodule which contained the lib and building the lib from this wrapper. This was only partially successful and is, as I've mentioned, pretty ugly. An alternative that Oleg, Emmanual and I discussed - which would also be a nice why to show new users which libraries are already ported and how to use them - would be to make a fork to the RIOT-OS organization on Github, make the necassary changes to the Makefiles etc. in that fork and add this repository, if needed as a submodule. I know submodules are not that favoured, but apart from the very beta-ish git-subtree (try to rebase after including a subtree into your repo ;-)), I don't see any other way to uphold the original projects history and add new changes to the repo. The maintenance could be done with a cronjob that merges the upstream project regularly and signifies the maintainers if a conflict occurs.

If anyone has a better idea I'm happy to here it.

Best regards, Martine