예제 #1
0
        protected override string GenerateResponseFileCommands()
        {
            StringBuilder templateStr = new StringBuilder(Utils.EST_MAX_CMDLINE_LEN);

            if (m_currentSourceItem != null)
            {
                string sourcePath = Utils.PathSanitize(m_currentSourceItem.ToString());

                // -c = Compile the C/C++ file
                // -MD = Generate dependency .d file
                templateStr.Append(m_propXmlParse.ProcessProperties(m_currentSourceItem));
                templateStr.Append(" -c -MD ");
                templateStr.Append(sourcePath);

                // Remove rtti stuff from plain C builds. -Wall generates warnings otherwise.
                string compileAs = m_currentSourceItem.GetMetadata("CompileAs");
                if ((compileAs != null) && (compileAs == "CompileAsC"))
                {
                    templateStr.Replace("-fno-rtti", "");
                    templateStr.Replace("-frtti", "");
                }
            }

            return(templateStr.ToString());
        }
예제 #2
0
파일: GCCLink.cs 프로젝트: cpascal/vs-nacl
        protected override string GenerateResponseFileCommands()
        {
            StringBuilder templateStr = new StringBuilder(Utils.EST_MAX_CMDLINE_LEN);

            foreach (ITaskItem sourceFile in Sources)
            {
                templateStr.Append(Utils.PathSanitize(sourceFile.GetMetadata("Identity")));
                templateStr.Append(" ");
            }

            templateStr.Append(m_propXmlParse.ProcessProperties(Sources[0]));

            return(templateStr.ToString());
        }