Wei Wu / @lazyparser

PLCT Lab. OSDT/HelloGCC/HelloLLVM. RISC-V Ambassador.

Download as .zip Download as .tar.gz View on GitHub

SpiderMonkey 提供了一个脚本make-source-package.sh来打包 SpiderMonkey 代码. 在configure生成的js/src/Makefile中, 包含了打包脚本的使用方法.

source-package: SRCDIR=$(srcdir)
DIST=$(DIST)
MAKE=$(MAKE)
MKDIR=$(MKDIR)
TAR=$(TAR)
MOZJS_MAJOR_VERSION=$(MOZJS_MAJOR_VERSION)
MOZJS_MINOR_VERSION=$(MOZJS_MINOR_VERSION)
MOZJS_PATCH_VERSION=$(MOZJS_PATCH_VERSION)
MOZJS_ALPHA=$(MOZJS_ALPHA)
$(srcdir)/make-source-package.sh

 

如果是在Debian/Ubuntu或Fedora这样的Linux系统下, 可以直接替换成以下命令生成:

cd $srcdir && \
SRCDIR=$PWD \
DIST=$YOUR_DIST_DIR_OUTSIDE_SRCDIR \
MAKE=make \
MKDIR=mkdir \
TAR=tar \
MOZJS_MAJOR_VERSION=44 \
MOZJS_MINOR_VERSION=0 \
MOZJS_PATCH_VERSION=1 \
MOZJS_ALPHA=a \
./make-source-package.sh

对于make source-package而言, 生成的代码包会放置于./dist目录下. 注意目前make-source-package.sh并不能忽略掉js/src中的_DBG.OBJ_OPT.OBJ 这样的临时文件夹. 所以在打包的时候需要检查相关的目录中没有中间文件或临时文件.