Dimitar Trendafilov committed f7c614e

* fixed linking to dependencies when project has a config map

Comments (0)

Files changed (1)


 			elseif premake.isdotnetproject(source.project) then
 				return premake.isdotnetproject(target.project)
-		end	
+		end
+		local function find_solution_config(buildcfg, configmap)
+			for slnconfig, map in pairs(configmap) do
+				for _, project_config in ipairs(map) do
+					if project_config == buildcfg then
+						return slnconfig
+					end
+				end
+			end
+		end
 		for _, link in ipairs(cfg.links) do
 			local item
 			-- is this a sibling project?
 			local prj = premake.solution.findproject(cfg.solution, link)
 			if prj and kind ~= "system" then
 				local prjcfg = project.getconfig(prj, cfg.buildcfg, cfg.platform)
+				if not prjcfg then
+					local slnconfig = find_solution_config(cfg.buildcfg, cfg.project.configmap)
+					if slnconfig then
+						prjcfg = project.getconfig(prj, slnconfig, cfg.platform)
+					end
+				end
 				if prjcfg and (kind == "dependencies" or canlink(cfg, prjcfg)) then
 					-- if the caller wants the whole project object, then okay
 					if part == "object" then
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.