>某些文件非常庞大,需要永久印刷.
>无论基础文件是否实际发生变化,始终都会进行漂亮的打印.
在过去,我能够用CMake做一些具有几个不错的属性的东西,我想在bazel中重现:
>只有在经过linting /漂亮打印等之后才构建代码.
>只有lint /漂亮的打印/等等已经改变的东西
>漂亮的印刷品,无论它是否在VC下
在CMake-land中,我使用了这个策略,受SCons代理目标技巧的启发:
>引入虚拟目标(例如source – > source.formatted).与此目标关联的 *** 作有两个作用:a)运行clang-format -i source,b)输出/触摸名为source.formatted的文件(这保证了对于合理的文件系统,如果source.formatted比源更新,则源不需要重新格式化)
>添加一个虚拟目标(target_name.aggregated_formatted),它聚合与特定库/可执行目标源相对应的所有.formatted文件
>使库/可执行目标依赖于target_name.aggregated_formatted作为预构建步骤
任何帮助将不胜感激.
解决方法 您可能可以使用方面.如果确实有可能,Bazel-dev可能会指出这一点.如果您熟悉规则和 *** 作等,快速而肮脏的方式(类似于CMake Hackery)就是编写一个宏.对于例如cc_library你会这样做:
def clean_cc_library(name,srcs,**kwargs): lint_sources( name = "%s_linted" % name,srcs = srcs,) pretty_print_sources( name = "%s_pretty" % name,srcs = ["%s_linted"],) return native.cc_library( name = name,srcs = ["%s_pretty"],**kwargs )
那么你当然需要用clean_cc_library替换每个cc_library. lint_sources和pretty_print_sources是你必须自己实现的规则,需要生成清理文件列表.
总结以上是内存溢出为你收集整理的c – 如何将漂亮的印刷作为构建在bazel中的一部分进行整合全部内容,希望文章能够帮你解决c – 如何将漂亮的印刷作为构建在bazel中的一部分进行整合所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)