阅读:3554回复:11
到底怎么样的设置才能自动编译pgo优化的版本啊?
我用下面的.mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj-@CONFIG_GUESS@ mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py' mk_add_options MOZILLA_OFFICIAL=1 mk_add_options MOZ_PGO=1 mk_add_options BUILD_OFFICIAL=1 mk_add_options AUTOCLOBBER=1 # Options for 'configure' (same as command-line options). #ac_add_options --target=x86_64-pc-mingw32 #ac_add_options --host=x86_64-pc-mingw32 ac_add_options --with-windows-version=601 ac_add_options --enable-application=browser ac_add_options --enable-update-channel=release ac_add_options --enable-update-packaging ac_add_options '--enable-optimize=-O1isy -GF -GL -arch:AVX -fp:precise -Qpar' ac_add_options --enable-ui-locale=zh-CN ac_add_options --with-l10n-base=.. ac_add_options --enable-jemalloc ac_add_options --enable-official-branding ac_add_options --enable-shared-js 但是configure完了之后, obj目录里面就没有 _profile 这个目录, 我记得以前的版本这样就可以compile出pgo的了, 现在不行了? 另, make -f client.mk profiledbuild目前已经不支持了, 必须用build/pymake/make.py -f client.mk profiledbuild, 但这样也不行, compile完第一遍之后就提示Makefile里没有pgo-profile-run的target. 到底现在的版本, ff-24/25怎么样才能在windows下面compile pgo? |
|
1楼#
发布于:2013-10-30 16:16
PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py' 模式已经被废弃。
详见client.mk 中的profiledbuild |
|
2楼#
发布于:2013-10-30 16:19
此外,官方只支持pymake
|
|
3楼#
发布于:2013-10-30 16:20
disable-tests去掉
自动pgo在某个版本之后依赖tests的Makefile |
|
|
4楼#
发布于:2013-10-30 16:25
pcx提醒了我,定义pgo-profile-run的makefile在tests里,自己修改一下就好了。
|
|
5楼#
发布于:2013-10-30 16:26
teredarguiterep:此外,官方只支持pymake回到原帖题外话,pymake不就是为了能在win环境下使用Makefile,现在make又不兼容了。为什么不用scons或者cmake |
|
6楼#
发布于:2013-10-30 16:30
|
|
7楼#
发布于:2013-10-30 16:45
那到底要怎么写.mozconfig呢?
另外, 是继续用build/pymake/make.py -f client.mk profiledbuild还是用 build/pymake/make.py -f client.mk build? |
|
8楼#
发布于:2013-10-30 16:48
|
|
9楼#
发布于:2013-10-30 16:53
倒, 我这.mozconfig里面本身就没有disable-tests啊
|
|
10楼#
发布于:2013-10-30 16:59
|
|
11楼#
发布于:2013-10-30 17:43
mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py' 改为 mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(TOPSRCDIR)/build/pgo/profileserver.py' 看看Makefile就知道了,现在已经不复制pgo文件夹了 难道就不能把PROFILE_GEN_SCRIPT这行和MOZ_OBJDIR去掉吗,非想重定向? 把MOZ_OBJDIR去掉是因为 ifdef MOZ_OBJDIR PGO_OBJDIR = $(MOZ_OBJDIR) else PGO_OBJDIR := $(TOPSRCDIR) endif |
|
|