This is all good and sensible advice.
Github is a great boon for lazy people, because it will allow browsing
of the README and source without having to look in tarballs. The fact
that it will render README.md as Markdown is particularly nifty for a
good looking document that can do hyperlinks.
Perhaps something for another page, but Luarocks does put stricter
requirements on the project structure - any documentation and tests
must be in separate directories, so that copy_directories can do its
work (delivering documentation was a bit of an afterthought).
This poses a problem when packaging lhf's excellent libraries - they
have a good README and test.lua, but not in separate directories. The
problem there of course is that the tarball is the only place where
you can find these documents; the simple solution is to put these
libraries on github and keep watching his downloads page occasionally
;)
On the LfW build-from-scratch front, some libraries are almost there -
lanes works, for instance. Alien crashes in a particularly spectacular
way, probably because of problems building libffi.
LuaInterface is going to be a hard one, because the C++ loader file
needs headers from the SDK like mscoree.h. Attempting to pull these
into GCC causes confusion, partially because of include path confusion
and also MS' old-fashioned C++ support. I will try with the Windows 7
SDK later.
The other approach is to persuade MSVC to link against msvcrt.dll.
This also proves to be a serious mission [1] although I cannot help
feeling there must be an easier way.
LuaJIT does not build on mingw64 because of their poor 64-bit Windows
exception handling, which is a pain because it would be cool to offer
LuaJIT as an alternate for LfW [2]
steve d.
[1] http://planet.jboss.org/view/post.seam;jsessionid=7DAEE574F8150631850C69069245BBB2?post=fighting_the_msvcrt_dll_hell
[2] Yes, but some 'deep integration' modules like Lanes won't work.
Preliminary testing conventions and other stuff has been added to
http://lua-users.org/wiki/LuaPackagingGuide .
I think that is a case where the solution is to amend the tool
(LuaRocks) rather than the packages. README.txt/md documentation
should not be in a separate directory, as per github requirements.