Adding new system and architecture not fully working

153 views
Skip to first unread message

David Gregory

unread,
Jul 6, 2015, 6:57:46 PM7/6/15
to premake-d...@googlegroups.com
In my overrides.lua file, I'm doing the following:

-- add in Xbox One system type
premake.XB1 = "XB1"
premake.api.addAllowed("system", premake.XB1)

-- add Durango as allowable architecture
if premake.vstudio.vs2010_architectures ~= nil then
        premake.vstudio.vs2010_architectures.xbone = "Durango"
end

Then, I'm generating an "AllProjects" solution, with a bunch of subprojects, and it's working (Durango is properly being selected as a valid architecture in solutions).

solution "AllProjects"
        configurations {"Debug", "Full Debug", "Profile", "Release"}
        platforms {"Win32", "x64", "Durango"}
...


However, I then go to generate secondary solutions that have subsets of the same projects using "forceincludeexternal" (a working version of "includeexternal" that I put together - discussed in github issue).  For whatever reason, secondary solutions can't seem to see the "XB1" system. I've traced it to an issue where the prjCfg returned from this function:

 function project.getconfig(prj, buildcfg, platform)

Says that it's a Durango 'platform', but the cfg.system value says "windows".

The internal prj.configs table seems to be made by calling oven.bakeConfigs(sln).  I'm not sure why we're losing the XB1 system the second time through.

Does any of this ring a bell, or do you need a fuller explanation?

-Dave


starkos

unread,
Jul 7, 2015, 12:09:02 PM7/7/15
to premake-d...@googlegroups.com
There are too many moving parts in there to be sure. Can you put together a self-contained example that reproduces the problem?

David Gregory

unread,
Jul 7, 2015, 1:20:35 PM7/7/15
to premake-d...@googlegroups.com
It turns out this was a false alarm - the bug is mine entirely.  I was missing a key set of lines in each subsequent secondary solution.

filter "platforms:Durango"
system "XB1"
filter {}

These lines appeared in my initial solution, but not in the secondary ones.

Oops!
Reply all
Reply to author
Forward
0 new messages