Example #1
0
        public Boolean TestWhetherProjectFileBelongs(ProjectFile pf)
        {
            // TODO: allow relax if some defines are absent in one of sets
            if (!CompilerPossiblyRelativePathComparer.Instance.Equals(CompilerInstance.BaseCompiler,
                                                                      pf.CompilerOfFile.BaseCompiler))
            {
                return(false);
            }

            if (OwnerSolution.config.RelaxIncludeDirsOrder)
            {
                if (!IncludeDirectories.ListIdenticalRelaxOrder(pf.IncludeDirectories))
                {
                    return(false);
                }
            }
            else
            {
                if (!IncludeDirectories.ListIdentical(pf.IncludeDirectories))
                {
                    return(false);
                }
            }

            if (!Defines.SetEquals(pf.SetOfDefines))
            {
                return(false);
            }

            if (!ForcedIncludes.SetEquals(pf.ForceIncludes))
            {
                return(false);
            }

            return(true);
        }