>From the recent discussion about WINVER, which is as the name implies Windows-
specific. I looked at what would be needed for a universal way of making the 
platform selector more specific with version numbers.

On Unix-ish systems this would be the output of `uname -r`. For Windows, it's 
found by parsing the output of `ver`. Unless there's a way to get the specific 
version more directly. I think there is but it uses WMI and would involve 
either JScript/VBScript or PowerShell.

The platform table in a rockspec would contain keys naming the operating 
system, as always. But along with just the builtin names "linux", "solaris", 
"windows" etc., the table keys can have version specifiers like dependency 
strings. i.e. "windows >= 5.1" for Windows XP or later.

Additionally, I think the output of `uname -s` could be included in the 
platform list. Right now, LR detects the OS and builds a list of predefined 
names. Instead, for example, Cygwin on Windows 7 would have an OS version 
"1.7.16(0.262/5/3)" and the system names {"unix","cygwin","CYGWIN_NT-6.1"}.
Matching the system then would not be just a string compare, but a case-
insensitive pattern match anchored at the start of the string. (In fact, the 
second name, "cygwin", is redundant.)

It doesn't look like the builtin build backend exposes the architecture, so 
add that to the platform override as well. The keys of the platform table 
would have the form:

    system [COND version] [arch]

or

    '*' arch

Also, cfg.lua is getting crowded with platform specific information. Should 
all the "if detected.foo" blocks be moved out to platform/foo.lua and pulled 
in with require?

-- 
tom <tellia...@whoopdedo.org>

------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
Luarocks-developers mailing list
Luarocks-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/luarocks-developers

Reply via email to