<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <div class="moz-cite-prefix">On 12/22/2014 04:01 PM, Galina
      Kistanova wrote:<br>
    </div>
    <blockquote
cite="mid:CAJ8eiNyWi+313McHmGRpuuHQzrAu5bgia0cRf5GcDZksp1RVcw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>Hi Rick,</div>
        <div><br>
        </div>
        Sorry for forcing you to merge.
        <div>
          <div><br>
          </div>
        </div>
      </div>
    </blockquote>
    no problem.<br>
    <blockquote
cite="mid:CAJ8eiNyWi+313McHmGRpuuHQzrAu5bgia0cRf5GcDZksp1RVcw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div>Agree, using raw strings for Windows paths everywhere we
            have to have them is more clean and easier to read.<br>
          </div>
          <div><br>
          </div>
          <div>As of the Windows envs, I'm not even sure we need to
            merge them for the builder. So far it seems more clean to
            require the VS envs and paths to be set correctly for the
            buildslave account locally on a slave.</div>
          <div><br>
          </div>
        </div>
      </div>
    </blockquote>
    2 cases I've needed:<br>
    <br>
    1) Selecting which msvc version/architecture to use. the
    vcvarsall.bat %arch%.<br>
    While the msvc version atm is 2013, the arch changes a number of env
    variables on 32 or 64 bit builds.<br>
    <br>
    2) Python 32 or 64 bit for LLDB. I have both 32 and 64 bit installed
    on windows buildslaves. <br>
    Buildbot needs 32 bit python still, and 64 bit builds should
    have/need 64 bit.<br>
    <br>
    Once you set one part of the env, in buildbot you end up setting
    everything. So having the slave env available on the master helps in
    this area as well.<br>
    <br>
    <blockquote
cite="mid:CAJ8eiNyWi+313McHmGRpuuHQzrAu5bgia0cRf5GcDZksp1RVcw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div>Thanks</div>
          <div><br>
          </div>
          <div>Galina</div>
          <div><br>
          </div>
        </div>
      </div>
    </blockquote>
    Thanks,<br>
    Rick<br>
    <blockquote
cite="mid:CAJ8eiNyWi+313McHmGRpuuHQzrAu5bgia0cRf5GcDZksp1RVcw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div><br>
          </div>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Mon, Dec 22, 2014 at 1:44 PM, Rick
          Foos <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:rfoos@codeaurora.org" target="_blank">rfoos@codeaurora.org</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000"> Hi Galina,<br>
              <br>
              ack, and I fixed all the merge conflicts with mine :)<br>
              <br>
              I have an alternate way to the long windows env string.
              Doing a set on the host and using slave2env creates a
              dictionary off all the host variables. That way it works
              on any windows slave you have set up correctly.<br>
              <br>
              If you must do windows environment variables, you will
              live a lot easier if you use raw strings:<br>
              <br>
              {<br>
                                                                                 

              'PATH': r'C:\Program Files (x86)\MSBuild\12.0\bin;'<br>
                                                                                         

              r'C:\Program Files (x86)\Microsoft Visual Studio
              12.0\Common7\IDE;'<br>
                                                                                         

              r'C:\Program Files (x86)\Microsoft Visual Studio
              12.0\VC\BIN;'<br>
                                                                                         

              r'C:\Program Files (x86)\Microsoft Visual Studio
              12.0\Common7\Tools;'<br>
                                                                                         

              r'C:\Windows\Microsoft.NET\Framework\v4.0.30319;'<br>
                                                                                         

              r'C:\Program Files (x86)\Microsoft Visual Studio
              12.0\VC\VCPackages;'<br>
                                                                                         

              r'C:\Program Files (x86)\Windows Kits\8.1\bin\x86;',<br>
              }<span class="HOEnZb"><font color="#888888"><br>
                  <br>
                  -rick</font></span>
              <div>
                <div class="h5"><br>
                  <div>On 12/22/2014 03:33 PM, Galina Kistanova wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="ltr">
                      <div>
                        <div>
                          <div>
                            <div>Hi Rick,<br>
                              <br>
                            </div>
                            I reverted this revision. Need more
                            attention.<br>
                          </div>
                          <br>
                        </div>
                        Thanks<br>
                        <br>
                      </div>
                      Galina<br>
                    </div>
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On Mon, Dec 22, 2014 at
                        1:24 PM, Rick Foos <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:rfoos@codeaurora.org"
                            target="_blank">rfoos@codeaurora.org</a>></span>
                        wrote:<br>
                        <blockquote class="gmail_quote" style="margin:0
                          0 0 .8ex;border-left:1px #ccc
                          solid;padding-left:1ex">Hi Galina, Zachary,<br>
                          I'm getting a checkconfig error. Should Debug
                          be a string in builders.py?<br>
                          <br>
                          - config=Debug environment to be identical to
                          what would happen if you ran vcvarsall.bat<br>
                          + config='Debug' environment to be identical
                          to what would happen if you ran vcvarsall.bat<br>
                          <br>
                          <br>
                            File
                          "buildbot/osuosl/master/config/builders.py",
                          line 654, in _get_lldb_builders<br>
                              config=Debug,<br>
                          exceptions.NameError: global name 'Debug' is
                          not defined<br>
                          Configuration Errors:<br>
                            error while parsing config file: global name
                          'Debug' is not defined (traceback in logfile)
                          <div>
                            <div><br>
                              <br>
                              On 12/22/2014 02:17 PM, Galina Kistanova
                              wrote:<br>
                              <blockquote class="gmail_quote"
                                style="margin:0 0 0 .8ex;border-left:1px
                                #ccc solid;padding-left:1ex"> Author:
                                gkistanova<br>
                                Date: Mon Dec 22 14:17:51 2014<br>
                                New Revision: 224726<br>
                                <br>
                                URL: <a moz-do-not-send="true"
                                  href="http://llvm.org/viewvc/llvm-project?rev=224726&view=rev"
                                  target="_blank">http://llvm.org/viewvc/llvm-project?rev=224726&view=rev</a><br>
                                Log:<br>
                                Added new Windows builder/slave for
                                LLDB, with the following properties:<br>
                                1) Only builds x86.<br>
                                2) Only compiles, does not run tests.<br>
                                3) Uses MSVC 2013 as the compiler, with
                                the CMake / ninja generator.<br>
                                <br>
                                Patch by Zachary Turner!<br>
                                <br>
                                Modified:<br>
                                   
                                 zorg/trunk/buildbot/osuosl/master/config/builders.py<br>
                                   
                                 zorg/trunk/buildbot/osuosl/master/config/slaves.py<br>
                                   
                                 zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py<br>
                                <br>
                                Modified:
                                zorg/trunk/buildbot/osuosl/master/config/builders.py<br>
                                URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/builders.py?rev=224726&r1=224725&r2=224726&view=diff"
                                  target="_blank">http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/builders.py?rev=224726&r1=224725&r2=224726&view=diff</a><br>
==============================================================================<br>
                                ---
                                zorg/trunk/buildbot/osuosl/master/config/builders.py
                                (original)<br>
                                +++
                                zorg/trunk/buildbot/osuosl/master/config/builders.py
                                Mon Dec 22 14:17:51 2014<br>
                                @@ -609,6 +609,40 @@ def
                                _get_lldb_builders():<br>
                                           'factory':
                                LLDBBuilder.getLLDBBuildFactory(triple=None,
                                # use default<br>
                                                                       
                                              make='gmake',<br>
                                                                       
                                             
                                extra_configure_args=['--enable-cxx11',
                                '--enable-optimized',
                                '--enable-assertions'])},<br>
                                +        {'name':
                                "lldb-x86-windows-msvc",<br>
                                +         'slavenames':
                                ["zturner-win2008"],<br>
                                +         'builddir':
                                "lldb-windows-x86",<br>
                                +         'factory':
                                LLDBBuilder.getLLDBWindowsCMakeBuildFactory(triple=None,
                                # use default<br>
                                +                                       
                                                        config=Debug,<br>
                                +                                       
                                                        # This sets up
                                the environment to be identical to what
                                would happen if you ran vcvarsall.bat<br>
                                +                                       
                                                        # which is a
                                required step before invoking the
                                compiler, linker, or for CMake to even
                                be<br>
                                +                                       
                                                        # able to
                                generate the relevant ninja.<br>
                                +                                       
                                                        env={<br>
                                +                                       
                                                            'PATH':
                                'C:\\Program Files
                                (x86)\\MSBuild\\12.0\\bin;' +<br>
                                +                                       
                                                                   
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\Common7\\IDE\\;' +<br>
                                +                                       
                                                                   
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\VC\\BIN;' +<br>
                                +                                       
                                                                   
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\Common7\\Tools;' +<br>
                                +                                       
                                                                   
                                'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319;'
                                +<br>
                                +                                       
                                                                   
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\VC\\VCPackages;' +<br>
                                +                                       
                                                                   
                                'C:\\Program Files (x86)\\Windows
                                Kits\\8.1\\bin\\x86;',<br>
                                +                                       
                                                            'DevEnvDir':
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\Common7\\IDE\\',<br>
                                +                                       
                                                           
                                'ExtensionSdkDir': 'C:\\Program Files
                                (x86)\\Microsoft
                                SDKs\\Windows\\v8.1\\ExtensionSDKs\\',<br>
                                +                                       
                                                           
                                'Framework40Version': 'v4.0',<br>
                                +                                       
                                                           
                                'FrameworkDir':
                                'C:\\Windows\\Microsoft.NET\\Framework\\',<br>
                                +                                       
                                                           
                                'FrameworkDIR32':
                                'C:\\Windows\\Microsoft.NET\\Framework\\',<br>
                                +                                       
                                                           
                                'FrameworkVersion': 'v4.0.30319',<br>
                                +                                       
                                                           
                                'FrameworkVersion32': 'v4.0.30319',<br>
                                +                                       
                                                            'INCLUDE':
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio
                                12.0\\VC\\INCLUDE;C:\\Program Files
                                (x86)\\Microsoft Visual Studio
                                12.0\\VC\\ATLMFC\\INCLUDE;C:\\Program
                                Files (x86)\\Windows
                                Kits\\8.1\\include\\shared;C:\\Program
                                Files (x86)\\Windows
                                Kits\\8.1\\include\\um;C:\\Program Files
                                (x86)\\Windows
                                Kits\\8.1\\include\\winrt;',<br>
                                +                                       
                                                            'LIB':
                                'C:\\Program Files (x86)\\Microsoft
                                Visual Studio 12.0\\VC\\LIB;C:\\Program
                                Files (x86)\\Microsoft Visual Studio
                                12.0\\VC\\ATLMFC\\LIB;C:\\Program Files
                                (x86)\\Windows
                                Kits\\8.1\\lib\\winv6.3\\um\\x86;',<br>
                                +                                       
                                                            'LIBPATH':
                                'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319;C:\\Program
                                Files (x86)\\Microsoft Visual Studio
                                12.0\\VC\\LIB;C:\\Program Files
                                (x86)\\Microsoft Visual Studio
                                12.0\\VC\\ATLMFC\\LIB;',<br>
                                +                                       
                                                           
                                'VCINSTALLDIR': 'C:\\Program Files
                                (x86)\\Microsoft Visual Studio
                                12.0\\VC\\',<br>
                                +                                       
                                                           
                                'VisualStudioVersion': '12.0',<br>
                                +                                       
                                                           
                                'VSINSTALLDIR': 'C:\\Program Files
                                (x86)\\Microsoft Visual Studio 12.0\\',<br>
                                +                                       
                                                           
                                'WindowsSdkDir': 'C:\\Program Files
                                (x86)\\Windows Kits\\8.1\\',<br>
                                +                                       
                                                           
                                'WindowsSDK_ExecutablePath_x64':
                                'C:\\Program Files (x86)\\Microsoft
                                SDKs\\Windows\\v8.1A\\bin\\NETFX 4.5.1
                                Tools\\x64\\',<br>
                                +                                       
                                                           
                                'WindowsSDK_ExecutablePath_x86':
                                'C:\\Program Files (x86)\\Microsoft
                                SDKs\\Windows\\v8.1A\\bin\\NETFX 4.5.1
                                Tools\\',<br>
                                +                                       
                                                        }<br>
                                +                                       
                                                        )},<br>
                                         ]<br>
                                    # Offline.<br>
                                <br>
                                Modified:
                                zorg/trunk/buildbot/osuosl/master/config/slaves.py<br>
                                URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/slaves.py?rev=224726&r1=224725&r2=224726&view=diff"
                                  target="_blank">http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/slaves.py?rev=224726&r1=224725&r2=224726&view=diff</a><br>
==============================================================================<br>
                                ---
                                zorg/trunk/buildbot/osuosl/master/config/slaves.py
                                (original)<br>
                                +++
                                zorg/trunk/buildbot/osuosl/master/config/slaves.py
                                Mon Dec 22 14:17:51 2014<br>
                                @@ -169,6 +169,9 @@ def
                                get_build_slaves():<br>
                                         
                                create_slave('ericwf-buildslave2',
                                properties={'jobs': 4}, max_builds=2),<br>
                                          # OS X 10.10 x86_64, Intel
                                Core 2 Duo @ 2.40GHz<br>
                                         
                                create_slave("ericwf-osx-slave",
                                properties={'jobs': 2}, max_builds=1),<br>
                                +<br>
                                +        # Windows Server 2008 R2, Quad
                                2.6GHz Intel Xeon(R) 4GB RAM<br>
                                +        create_slave("zturner-win2008",
                                properties={'jobs': 4}, max_builds=1),<br>
                                          # Defunct.<br>
                                    #        # GCC Compile Farm Slaves,
                                see <a moz-do-not-send="true"
                                  href="http://gcc.gnu.org/wiki/CompileFarm"
                                  target="_blank">http://gcc.gnu.org/wiki/CompileFarm</a><br>
                                <br>
                                Modified:
                                zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py<br>
                                URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py?rev=224726&r1=224725&r2=224726&view=diff"
                                  target="_blank">http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py?rev=224726&r1=224725&r2=224726&view=diff</a><br>
==============================================================================<br>
                                ---
                                zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py
                                (original)<br>
                                +++
                                zorg/trunk/zorg/buildbot/builders/LLDBBuilder.py
                                Mon Dec 22 14:17:51 2014<br>
                                @@ -8,6 +8,84 @@ from
                                buildbot.steps.shell import ShellCo<br>
                                  from buildbot.process.properties
                                import WithProperties<br>
                                  from
                                zorg.buildbot.commands.LitTestCommand
                                import LitTestCommand<br>
                                  +# CMake Windows builds<br>
                                +def getLLDBWindowsCMakeBuildFactory(<br>
                                +            clean=True,<br>
                                +            cmake='cmake',<br>
                                +            jobs=None,<br>
                                +<br>
                                +            config='Release',<br>
                                +<br>
                                +            # Environmental variables
                                for all steps.<br>
                                +            env={},<br>
                                +            extra_cmake_args=[]):<br>
                                +<br>
                                +    ############# PREPARING<br>
                                +    f =
                                buildbot.process.factory.BuildFactory()<br>
                                +<br>
                                +    # We *must* checkout at least
                                Clang, LLVM, and LLDB.  Once we add a
                                step to run<br>
                                +    # tests (e.g. ninja check-lldb), we
                                will also need to add a step for LLD,
                                since<br>
                                +    # MSVC LD.EXE cannot link
                                executables with DWARF debug info.<br>
                                +    f.addStep(SVN(name='svn-llvm',<br>
                                +                  mode='update',
                                baseURL='<a moz-do-not-send="true"
                                  href="http://llvm.org/svn/llvm-project/llvm/"
                                  target="_blank">http://llvm.org/svn/llvm-project/llvm/</a>',<br>
                                +                 
                                defaultBranch='trunk',<br>
                                +                  workdir='llvm'))<br>
                                +    f.addStep(SVN(name='svn-clang',<br>
                                +                  mode='update',
                                baseURL='<a moz-do-not-send="true"
                                  href="http://llvm.org/svn/llvm-project/cfe/"
                                  target="_blank">http://llvm.org/svn/llvm-project/cfe/</a>',<br>
                                +                 
                                defaultBranch='trunk',<br>
                                +                 
                                workdir='llvm/tools/clang'))<br>
                                +    f.addStep(SVN(name='svn-lldb',<br>
                                +                  mode='update',
                                baseURL='<a moz-do-not-send="true"
                                  href="http://llvm.org/svn/llvm-project/lldb/"
                                  target="_blank">http://llvm.org/svn/llvm-project/lldb/</a>',<br>
                                +                 
                                defaultBranch='trunk',<br>
                                +                 
                                workdir='llvm/tools/lldb'))<br>
                                +<br>
                                +    # If jobs not defined, Ninja will
                                choose a suitable value<br>
                                +    jobs_cmd=[]<br>
                                +    if jobs is not None:<br>
                                +        jobs_cmd=["-j"+str(jobs)]<br>
                                +    ninja_cmd=['ninja'] + jobs_cmd<br>
                                +<br>
                                +    # Global configurations<br>
                                +    build_dir='build'<br>
                                +<br>
                                +    ############# CLEANING<br>
                                +    if clean:<br>
                                +       
                                f.addStep(ShellCommand(name='clean',<br>
                                +                             
                                 command=['rmdir', '/S/Q', build_dir],<br>
                                +                             
                                 warnOnFailure=True,<br>
                                +                             
                                 description='Cleaning',<br>
                                +                             
                                 descriptionDone='clean',<br>
                                +                             
                                 workdir='.',<br>
                                +                             
                                 env=env))<br>
                                +<br>
                                +    # Use batch files instead of
                                ShellCommand directly, Windows quoting
                                is<br>
                                +    # borked. FIXME: See buildbot
                                ticket #595 and buildbot ticket #377.<br>
                                +   
                                f.addStep(batch_file_download.BatchFileDownload(name='cmakegen',<br>
                                +                               
                                command=[cmake, "-G", "Ninja",
                                "../llvm",<br>
                                +                                       
                                 "-DCMAKE_BUILD_TYPE="+config,<br>
                                +                                       
                                 # Need to use our custom built version
                                of python<br>
                                +                                       
 "-DPYTHON_LIBRARY=C:\\src\\python\\PCbuild\\python27_d.lib",<br>
                                +                                       
 "-DPYTHON_INCLUDE_DIR=C:\\src\\python\\Include",<br>
                                +                                       
 "-DPYTHON_EXECUTABLE=C:\\src\\python\\PCbuild\\python_d.exe"]<br>
                                +                                       
                                 + extra_cmake_args,<br>
                                +                               
                                workdir=build_dir))<br>
                                +<br>
                                +   
                                f.addStep(ShellCommand(name='cmake',<br>
                                +                         
                                 command=['cmakegen.bat'],<br>
                                +                         
                                 haltOnFailure=True,<br>
                                +                         
                                 description='cmake gen',<br>
                                +                         
                                 workdir=build_dir,<br>
                                +                           env=env))<br>
                                +<br>
                                +   
                                f.addStep(WarningCountingShellCommand(name='build',<br>
                                +                                       
                                  command=ninja_cmd,<br>
                                +                                       
                                  haltOnFailure=True,<br>
                                +                                       
                                  description='ninja build',<br>
                                +                                       
                                  workdir=build_dir,<br>
                                +                                       
                                  env=env))<br>
                                +<br>
                                +    return f<br>
                                +<br>
                                  def getLLDBBuildFactory(<br>
                                              triple,<br>
                                              outOfDir=False,<br>
                                <br>
                                <br>
_______________________________________________<br>
                                llvm-commits mailing list<br>
                                <a moz-do-not-send="true"
                                  href="mailto:llvm-commits@cs.uiuc.edu"
                                  target="_blank">llvm-commits@cs.uiuc.edu</a><br>
                                <a moz-do-not-send="true"
                                  href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits"
                                  target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
                              </blockquote>
                              <br>
                            </div>
                          </div>
                          <span><font color="#888888"> -- <br>
                              Rick Foos<br>
                              Qualcomm Innovation Center, Inc.<br>
                              Qualcomm Innovation Center, Inc. is a
                              member of Code Aurora Forum, a Linux
                              Foundation Collaborative Project</font></span>
                          <div>
                            <div><br>
                              <br>
_______________________________________________<br>
                              llvm-commits mailing list<br>
                              <a moz-do-not-send="true"
                                href="mailto:llvm-commits@cs.uiuc.edu"
                                target="_blank">llvm-commits@cs.uiuc.edu</a><br>
                              <a moz-do-not-send="true"
                                href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits"
                                target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
                            </div>
                          </div>
                        </blockquote>
                      </div>
                      <br>
                    </div>
                  </blockquote>
                  <br>
                  <pre cols="72">-- 
Rick Foos
Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project</pre>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Rick Foos
Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project</pre>
  </body>
</html>