|
|
DescriptionMoving CRD Windows targets to subdirectories.
This is the windows host focused GN rewrite for Remoting Host. This
work attempts to simplify the build for Remoting so it can be more
easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and
producing build files that are more in-line with best-practice GN style.
Committed: https://crrev.com/e3320ae41baa9c861dab9b852bf19e7546446492
Cr-Commit-Position: refs/heads/master@{#419265}
Patch Set 1 #Patch Set 2 : Correcting format. #
Total comments: 17
Patch Set 3 : Merge branch 'master' into win_gn #
Total comments: 1
Patch Set 4 : Move clsids generation to a gni file. #Patch Set 5 : Fix location of chromoting_lib.rc. #Patch Set 6 : Merge branch 'master' into win_gn #Patch Set 7 : 64 bit builds lacked remoting_host_installation targets if offical. #Patch Set 8 : Adding remote_assistance_host_uiaccess dep to host archive. #Patch Set 9 : The exec needs to be called native_messaging_host for downstream installers to work. #
Messages
Total messages: 173 (150 generated)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...) android_clang_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_clan...) android_compile_dbg on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_comp...) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) chromeos_daisy_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_daisy_...) linux_chromium_chromeos_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: android_clang_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_clan...) android_compile_dbg on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_comp...) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) linux_chromium_chromeos_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
Patchset #1 (id:1) has been deleted
Patchset #1 (id:20001) has been deleted
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #1 (id:40001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...) win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...) win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...) win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...) win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #17 (id:370001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...)
Patchset #6 (id:160001) has been deleted
Patchset #3 (id:100001) has been deleted
Patchset #3 (id:120001) has been deleted
Patchset #9 (id:280001) has been deleted
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #2 (id:80001) has been deleted
Patchset #1 (id:60001) has been deleted
Patchset #1 (id:140001) has been deleted
Patchset #1 (id:180001) has been deleted
Patchset #1 (id:200001) has been deleted
Patchset #1 (id:220001) has been deleted
Patchset #2 (id:260001) has been deleted
Patchset #1 (id:240001) has been deleted
Patchset #1 (id:300001) has been deleted
Patchset #1 (id:320001) has been deleted
Patchset #1 (id:330001) has been deleted
Patchset #1 (id:350001) has been deleted
Patchset #1 (id:390001) has been deleted
Patchset #2 (id:430001) has been deleted
Patchset #1 (id:410001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Patchset #3 (id:490001) has been deleted
Patchset #2 (id:470001) has been deleted
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #2 (id:510001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
Patchset #4 (id:570001) has been deleted
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #5 (id:610001) has been deleted
Patchset #4 (id:590001) has been deleted
Patchset #5 (id:650001) has been deleted
Patchset #5 (id:670001) has been deleted
Patchset #4 (id:630001) has been deleted
Patchset #4 (id:690001) has been deleted
Patchset #2 (id:530001) has been deleted
Patchset #2 (id:550001) has been deleted
Patchset #1 (id:450001) has been deleted
Description was changed from ========== Moving Windows targets to subdirectories. ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ==========
nicholss@chromium.org changed reviewers: + joedow@chromium.org, zijiehe@chromium.org
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
PTAL! This is CL 3/~7 for the Remoting GN build system revamp. Thanks!
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... File remoting/host/installer/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... remoting/host/installer/BUILD.gn:10: # compatibility w/ GYP, since the installer needs the file to Is this comment still valid? I'm not sure we need to maintain compatibility with GYP https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... File remoting/host/it2me/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... remoting/host/it2me/BUILD.gn:55: # GYP version: nit: Remove the GYP comments while you are in here? https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... File remoting/host/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... remoting/host/win/BUILD.gn:279: # "/NODEFAULTLIB", Was this comment from the copy/paste or something you changed to get the build working? I'm assuming the former since I see it a few times in this file but it might be worth a TODO to figure out and clean this up. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... remoting/host/win/BUILD.gn:489: # TODO(GYP) More Windows remoting targets from remoting_host_win.gypi Is this comment still accurate? I thought remoting_host_win.gypi was deleted. https://codereview.chromium.org/2308813002/diff/730001/remoting/test/BUILD.gn File remoting/test/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/test/BUILD.gn... remoting/test/BUILD.gn:186: executable("it2me_standalone_host_main") { Zijie is making changes here as well but I think you will check in sooner. Just an FYI.
https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... File remoting/host/installer/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... remoting/host/installer/BUILD.gn:10: # compatibility w/ GYP, since the installer needs the file to On 2016/09/12 18:58:43, joedow wrote: > Is this comment still valid? I'm not sure we need to maintain compatibility > with GYP Not sure. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... File remoting/host/it2me/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... remoting/host/it2me/BUILD.gn:55: # GYP version: On 2016/09/12 18:58:43, joedow wrote: > nit: Remove the GYP comments while you are in here? I will do it in another CL. A simple search and remove will change too many files and remove from the content of this CL. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... File remoting/host/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... remoting/host/win/BUILD.gn:279: # "/NODEFAULTLIB", On 2016/09/12 18:58:43, joedow wrote: > Was this comment from the copy/paste or something you changed to get the build > working? I'm assuming the former since I see it a few times in this file but it > might be worth a TODO to figure out and clean this up. This was how the target was when I moved it. I am doing very little re-writing, more moving things around to get isolation from other platforms. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... remoting/host/win/BUILD.gn:489: # TODO(GYP) More Windows remoting targets from remoting_host_win.gypi On 2016/09/12 18:58:43, joedow wrote: > Is this comment still accurate? I thought remoting_host_win.gypi was deleted. Acknowledged. https://codereview.chromium.org/2308813002/diff/730001/remoting/test/BUILD.gn File remoting/test/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/test/BUILD.gn... remoting/test/BUILD.gn:186: executable("it2me_standalone_host_main") { On 2016/09/12 18:58:43, joedow wrote: > Zijie is making changes here as well but I think you will check in sooner. Just > an FYI. Acknowledged.
lgtm. Filed crbug/646134 to track the GYP comment removal/updating. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... File remoting/host/it2me/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/it2me/BU... remoting/host/it2me/BUILD.gn:55: # GYP version: On 2016/09/12 19:56:32, nicholss wrote: > On 2016/09/12 18:58:43, joedow wrote: > > nit: Remove the GYP comments while you are in here? > > I will do it in another CL. A simple search and remove will change too many > files and remove from the content of this CL. OK, I filed a tracking and assigned to you.
Two comments, others LGTM. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/BUILD.gn File remoting/host/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/BUILD.gn... remoting/host/BUILD.gn:585: testonly = true Why is this a testonly target? https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... File remoting/host/installer/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... remoting/host/installer/win/BUILD.gn:132: action("remoting_host_installation") { GN cannot handle two targets with unique name well, i.e. we won't be able to run "ninja -C out/GNDebug remoting_host_installation" anymore with this change. Suggest to rename this to "remoting_host_installation_win". https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... File remoting/host/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/win/BUIL... remoting/host/win/BUILD.gn:279: # "/NODEFAULTLIB", On 2016/09/12 19:56:32, nicholss wrote: > On 2016/09/12 18:58:43, joedow wrote: > > Was this comment from the copy/paste or something you changed to get the build > > working? I'm assuming the former since I see it a few times in this file but > it > > might be worth a TODO to figure out and clean this up. > > This was how the target was when I moved it. I am doing very little re-writing, > more moving things around to get isolation from other platforms. The comment is in it2me/BUILD.gn. TODO(zijiehe): Why IgnoreAllDefaultLibraries: true in GYP does not take effect? In GYP, this linker option has been applied. But if same option applied to GN, unresolved external symbol _mainCRTStartup link error will be triggered. So there may be some other differences between default settings of GN and GYP.
https://codereview.chromium.org/2308813002/diff/730001/remoting/host/BUILD.gn File remoting/host/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/BUILD.gn... remoting/host/BUILD.gn:585: testonly = true On 2016/09/12 22:32:10, Hzj_jie wrote: > Why is this a testonly target? test_only means that only other testonly targets should dep on this target. This is a convenience target to allow all_test and all targets to build a correctly branded product. For official build paths, they should not use this and instead use the :remoting_host_installation or :remoting_me2me_host_archive targets directly. https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... File remoting/host/installer/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... remoting/host/installer/win/BUILD.gn:132: action("remoting_host_installation") { On 2016/09/12 22:32:10, Hzj_jie wrote: > GN cannot handle two targets with unique name well, i.e. we won't be able to run > "ninja -C out/GNDebug remoting_host_installation" anymore with this change. > Suggest to rename this to "remoting_host_installation_win". While it is true that GN does not allow duplicate names, this is not what happens here. It is a common pattern with GN to provide the same target name (ie remoting_host_installation) that is guarded by configuration as is the case here. for the case where is_chrome_branded is false, :remoting_host_installation is a no-op. And when we intend to build a chrome branded output, it runs the script as described here for :remoting_host_installation. This allows us to depend on :remoting_host_installation always, and have the details of how config flags change the output right where the change happens, rather than complicated logic on which dep to include in the parent targets. This method simplifies the build greatly. I have used it all over the place.
https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... File remoting/host/installer/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/730001/remoting/host/installe... remoting/host/installer/win/BUILD.gn:132: action("remoting_host_installation") { On 2016/09/12 23:01:43, nicholss wrote: > On 2016/09/12 22:32:10, Hzj_jie wrote: > > GN cannot handle two targets with unique name well, i.e. we won't be able to > run > > "ninja -C out/GNDebug remoting_host_installation" anymore with this change. > > Suggest to rename this to "remoting_host_installation_win". > > While it is true that GN does not allow duplicate names, this is not what > happens here. It is a common pattern with GN to provide the same target name (ie > remoting_host_installation) that is guarded by configuration as is the case > here. > > for the case where is_chrome_branded is false, :remoting_host_installation is a > no-op. And when we intend to build a chrome branded output, it runs the script > as described here for :remoting_host_installation. > > This allows us to depend on :remoting_host_installation always, and have the > details of how config flags change the output right where the change happens, > rather than complicated logic on which dep to include in the parent targets. > This method simplifies the build greatly. I have used it all over the place. No, I totally agree to use no-op group target to avoid duplicate conditions. But I mean this target has a unique name with remoting/host:remoting_host_installation.
The CQ bit was checked by nicholss@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...)
nicholss@chromium.org changed reviewers: + brettw@chromium.org
On 2016/09/12 23:20:18, commit-bot: I haz the power wrote: > Try jobs failed on following builders: > chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, > http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...) +Brett to approve the .gn change. PTAL thanks!!
https://codereview.chromium.org/2308813002/diff/750001/remoting/host/installe... File remoting/host/installer/win/BUILD.gn (right): https://codereview.chromium.org/2308813002/diff/750001/remoting/host/installe... remoting/host/installer/win/BUILD.gn:49: clsids = exec_script("//remoting/host/win/get_clsids.py", You call this script twice. This is slow and we shouldn't be doing it in the first place. At the very least, we should be only callint it once. To make this happen, put the call in a .gni file (which are only run once no matter how many times they are referenced), and store the result in a variable you can reference from both places.
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
On 2016/09/13 21:12:43, brettw (ping on IM after 24h) wrote: > https://codereview.chromium.org/2308813002/diff/750001/remoting/host/installe... > File remoting/host/installer/win/BUILD.gn (right): > > https://codereview.chromium.org/2308813002/diff/750001/remoting/host/installe... > remoting/host/installer/win/BUILD.gn:49: clsids = > exec_script("//remoting/host/win/get_clsids.py", > You call this script twice. This is slow and we shouldn't be doing it in the > first place. At the very least, we should be only callint it once. > > To make this happen, put the call in a .gni file (which are only run once no > matter how many times they are referenced), and store the result in a variable > you can reference from both places. Ok Brett, change made, I moved the exec call to the gni and use the vars from the include. Should only run once now. PTAL thanks!
lgtm
The CQ bit was checked by nicholss@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from zijiehe@chromium.org, joedow@chromium.org Link to the patchset: https://codereview.chromium.org/2308813002/#ps770001 (title: "Move clsids generation to a gni file.")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ==========
Message was sent while issue was closed.
Committed patchset #4 (id:770001)
Message was sent while issue was closed.
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. Committed: https://crrev.com/ac59f3fd88f185f04e1cd177fcc2d05a425308e6 Cr-Commit-Position: refs/heads/master@{#418668} ==========
Message was sent while issue was closed.
Patchset 4 (id:??) landed as https://crrev.com/ac59f3fd88f185f04e1cd177fcc2d05a425308e6 Cr-Commit-Position: refs/heads/master@{#418668}
Message was sent while issue was closed.
A revert of this CL (patchset #4 id:770001) has been created in https://codereview.chromium.org/2339163004/ by msw@chromium.org. The reason for reverting is: https://build.chromium.org/p/chromium/builders/Win/builds/47116/ FAILED: obj/remoting/host/win/remoting_core/chromoting_lib.res C:/b/depot_tools/python276_bin/python.exe ... ../../remoting/host/win/chromoting_lib.rc(5) : error RC2135 : file not found: remoting/host/chromoting_lib.tlb.
Message was sent while issue was closed.
On 2016/09/14 at 21:43:46, msw wrote: > A revert of this CL (patchset #4 id:770001) has been created in https://codereview.chromium.org/2339163004/ by msw@chromium.org. > > The reason for reverting is: https://build.chromium.org/p/chromium/builders/Win/builds/47116/ > FAILED: obj/remoting/host/win/remoting_core/chromoting_lib.res > C:/b/depot_tools/python276_bin/python.exe ... > ../../remoting/host/win/chromoting_lib.rc(5) : error RC2135 : file not found: remoting/host/chromoting_lib.tlb. There was also a missed BUILD.gn change for official builds (fix is here: https://codereview.chromium.org/2343723002), but wasn't landed because this CL is being reverted.
Message was sent while issue was closed.
On 2016/09/14 21:46:28, jbroman wrote: > On 2016/09/14 at 21:43:46, msw wrote: > > A revert of this CL (patchset #4 id:770001) has been created in > https://codereview.chromium.org/2339163004/ by mailto:msw@chromium.org. > > > > The reason for reverting is: > https://build.chromium.org/p/chromium/builders/Win/builds/47116/ > > FAILED: obj/remoting/host/win/remoting_core/chromoting_lib.res > > C:/b/depot_tools/python276_bin/python.exe ... > > ../../remoting/host/win/chromoting_lib.rc(5) : error RC2135 : file not found: > remoting/host/chromoting_lib.tlb. > > There was also a missed BUILD.gn change for official builds (fix is here: > https://codereview.chromium.org/2343723002), but wasn't landed because this CL > is being reverted. Also, see the errors here: https://build.chromium.org/p/chromium/builders/Mac/builds/19390/steps/compile... FAILED: remoting-me2me-host-mac.zip python ../../remoting/host/installer/build-installer-archive.py gen/remoting/host/remoting_installation remoting-me2me-host-mac.zip --source-file-roots ../../remoting/host/installer/mac/ ../../chrome/installer/mac --source-files ../../remoting/host/installer/mac/do_signing.sh ../../remoting/host/installer/mac/do_signing.props ../../remoting/host/installer/mac/ChromotingHost.pkgproj ../../remoting/host/installer/mac/ChromotingHostService.pkgproj ../../remoting/host/installer/mac/ChromotingHostUninstaller.pkgproj ../../remoting/host/installer/mac/LaunchAgents/org.chromium.chromoting.plist ../../remoting/host/installer/mac/PrivilegedHelperTools/org.chromium.chromoting.me2me.sh ../../remoting/host/installer/mac/Scripts/keystone_install.sh ../../remoting/host/installer/mac/Scripts/remoting_postflight.sh ../../remoting/host/installer/mac/Scripts/remoting_preflight.sh ../../remoting/host/installer/mac/Keystone/GoogleSoftwareUpdate.pkg ../../chrome/installer/mac/pkg-dmg --generated-files remoting_host_prefpane.prefPane remoting_me2me_host.app native_messaging_host.app remote_assistance_host.app remoting_host_uninstaller.app remoting/com.google.chrome.remote_desktop.json remoting/com.google.chrome.remote_assistance.json --generated-files-dst PreferencePanes/Chromoting.prefPane PrivilegedHelperTools/ChromotingHost.bundle PrivilegedHelperTools/ChromotingHost.bundle/Contents/MacOS/NativeMessagingHost.bundle PrivilegedHelperTools/ChromotingHost.bundle/Contents/MacOS/RemoteAssistanceHost.bundle Applications/Chromoting\ Host\ Uninstaller.app Config/com.google.chrome.remote_desktop.json Config/com.google.chrome.remote_assistance.json --defs VERSION=55.0.2861.0 VERSION_SHORT=55.0.2861 VERSION_MAJOR=55 VERSION_MINOR=0 HOST_NAME=Chromoting\ Host HOST_BUNDLE_NAME=ChromotingHost.bundle HOST_SERVICE_NAME=Chromoting\ Host\ Service HOST_UNINSTALLER_NAME=Chromoting\ Host\ Uninstaller HOST_PKG=Chromoting\ Host HOST_SERVICE_PKG=Chromoting\ Host\ Service HOST_UNINSTALLER_PKG=Chromoting\ Host\ Uninstaller BUNDLE_ID_HOST=org.chromium.pkg.Chromoting\ Host BUNDLE_ID_HOST_SERVICE=org.chromium.pkg.Chromoting\ Host\ Service BUNDLE_ID_HOST_UNINSTALLER=org.chromium.pkg.Chromoting\ Host\ Uninstaller DMG_VOLUME_NAME=Chromoting\ Host\ 55.0.2861.0 DMG_FILE_NAME=Chromoting\ Host-55.0.2861.0 NATIVE_MESSAGING_HOST_BUNDLE_NAME=NativeMessagingHost.bundle REMOTE_ASSISTANCE_HOST_BUNDLE_NAME=RemoteAssistanceHost.bundle PREFPANE_BUNDLE_NAME=Chromoting.prefPane Traceback (most recent call last): File "../../remoting/host/installer/build-installer-archive.py", line 292, in <module> sys.exit(main()) File "../../remoting/host/installer/build-installer-archive.py", line 286, in main defs) File "../../remoting/host/installer/build-installer-archive.py", line 207, in buildHostArchive shutil.copy2(bs, dst_file) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 130, in copy2 copyfile(src, dst) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 82, in copyfile with open(src, 'rb') as fsrc: IOError: [Errno 2] No such file or directory: 'native_messaging_host.app'
Message was sent while issue was closed.
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. Committed: https://crrev.com/ac59f3fd88f185f04e1cd177fcc2d05a425308e6 Cr-Commit-Position: refs/heads/master@{#418668} ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. Committed: https://crrev.com/ac59f3fd88f185f04e1cd177fcc2d05a425308e6 Cr-Commit-Position: refs/heads/master@{#418668} ==========
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. Committed: https://crrev.com/ac59f3fd88f185f04e1cd177fcc2d05a425308e6 Cr-Commit-Position: refs/heads/master@{#418668} ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ==========
FYI: Findit identified this CL at revision 418668 as the culprit for failures in the build cycles as shown on: https://findit-for-me.appspot.com/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3Itb...
Patchset #6 (id:810001) has been deleted
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...)
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Patchset #9 (id:890001) has been deleted
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
The CQ bit was checked by nicholss@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by nicholss@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from brettw@chromium.org, zijiehe@chromium.org, joedow@chromium.org Link to the patchset: https://codereview.chromium.org/2308813002/#ps910001 (title: "The exec needs to be called native_messaging_host for downstream installers to work.")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ==========
Message was sent while issue was closed.
Committed patchset #9 (id:910001)
Message was sent while issue was closed.
Description was changed from ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. ========== to ========== Moving CRD Windows targets to subdirectories. This is the windows host focused GN rewrite for Remoting Host. This work attempts to simplify the build for Remoting so it can be more easily understood and maintained. This is done by pushing more of the target config checking deeper into the platform specific targets and producing build files that are more in-line with best-practice GN style. Committed: https://crrev.com/e3320ae41baa9c861dab9b852bf19e7546446492 Cr-Commit-Position: refs/heads/master@{#419265} ==========
Message was sent while issue was closed.
Patchset 9 (id:??) landed as https://crrev.com/e3320ae41baa9c861dab9b852bf19e7546446492 Cr-Commit-Position: refs/heads/master@{#419265} |