Missing install target in Makefiles is a significant gap in support of Unix-like systems by Premake. I'd like to fill it.
In previous post generic API for file installation was discussed. Here is the version I'm considering to use for now:
install { ["/usr/local/share"] = { "A", "B" }, -- default file permissions ["/usr/local/bin"] = { "C", "D", perms=755 } }
However, there are two issues:
1. We need to support what autotools call "DESTDIR" and some others call "installation prefix" or "INSTALL_ROOT" - root directory, defining base path for installation. In Makefile, it should probably be $(DESTDIR) variable. Is it OK to expose raw Makefile synatax here:
install { ["$(DESTDIR)/share"] = { "A", "B" }, -- default perms ["$(DESTDIR)/bin"] = { "C", "D", perms=755 } }
or should it be some Makefile-independent pattern like
install { ["%prefix/share"] = { "A", "B" }, -- default perms ["%prefix/bin"] = { "C", "D", perms=755 } }
?
2. Simplest case of installation is exactly one file (library or executable) per project, and it could be more easy to use. Probably something like installpath API with kind = "string" and scope = "config". How DESTDIR issue should be handled here?
P.S. Considering Premake is not a make-centric tool, I'm also planning to add "install" action accepting option like "--prefix" or "--destdir", doing similar thing as "make install" in makefile.

Might want to ask on the mailing list too.
Got one vote for "$(DESTDIR)" version from user.