wcc,wcsc: lazyload for Linux

This commit is contained in:
msojocs 2022-02-22 16:24:41 +08:00
parent f25d9d7e36
commit d14fd2c0aa
37 changed files with 19316 additions and 24 deletions

View File

@ -9,7 +9,8 @@ let exeList = []
const macExeList = [
'wcc',
'wcsc',
'wcc.bin'
'wcc.bin',
'wcsc.bin'
]
const winExeList = [
'wcc.exe',

254
compiler/nodejs/wcc Normal file

File diff suppressed because one or more lines are too long

145
compiler/nodejs/wcsc Normal file
View File

@ -0,0 +1,145 @@
#!/usr/bin/env node
const { spawn, spawnSync } = require("child_process");
const path = require("path");
const args = process.argv.slice(2);
const wcscPath = path.resolve(__dirname, "./wcsc.bin")
function encode1(s) {
return encodeURI(s).replace(
/%(u[0-9A-F]{4})|(%[0-9A-F]{2})/gm,
function ($0, $1, $2) {
return ($1 && "\\" + $1.toLowerCase()) || decodeURI($2);
}
);
}
if (args.includes("-ll")) {
const wcsc = spawn(wcscPath, args, {
cwd: process.cwd(),
});
const spwanData = [],
errData = [];
wcsc.stdout.on("data", (e) => {
spwanData.push(e);
});
wcsc.stderr.on("data", (e) => {
errData.push(e);
});
wcsc.on("close", (n) => {
// console.log('close', new Date().getTime()/1000)
if (0 === n) {
const str = Buffer.concat(spwanData).toString().replace(/\\\\/g, '\\\\u005c');
const resultSplit = encode1(str).split("=");
const tempObj = {};
for (
let i = 0, total = resultSplit.length;
i < total && resultSplit[i + 1];
i += 2
) {
// a=b ---> a: b
const key = resultSplit[i];
if (key === "version") continue;
tempObj[key] = resultSplit[i + 1].replace(
/((\\x[\da-f]{2}|\\u[\da-f]{4})){1,}/gi,
function ($0, $1, $2) {
return eval('"' + $0 + '"');
// return dict[$0] ? dict[$0] : eval('"' + $0 + '"')
}
);
}
const resultObj = {
common: tempObj.comm, //.replace(/\\n/g, '\\u000a'),
pageWxss: {},
};
// console.log(resultObj.common)
// console.log('for key', new Date().getTime()/1000)
for (const key in tempObj) {
if (key.endsWith(".wxss")) {
resultObj.pageWxss[key] = tempObj[key];
}
}
let result = JSON.stringify(resultObj);
String.prototype.splice = function (start, newStr) {
return this.slice(0, start) + newStr + this.slice(start + 1);
};
result = result.replace(/\\\\/g, "\\");
// console.log('main replace', new Date().getTime()/1000)
// for (let i = 0; i < result.length; i++) {
// if (result[i] === "\\") {
// // && result[i + 1] !== 'u'
// const c = result[i + 1] === "n" ? "\n" : result[i + 1];
// result = result.splice(
// i + 1,
// "u" + c.charCodeAt(0).toString(16).padStart(4, "0")
// );
// }
// }
result = result.replace(/\\[\s\S]{1}/gi, function ($0, $1, $2) {
// console.log($0, $1)
const c = $0 === "\\n" ? "\n" : $0[1];
return "\\u" + c.charCodeAt(0).toString(16).padStart(4, "0")
})
// console.log('main replace end', new Date().getTime()/1000)
// result = result.replace(/u005c"/g, 'u005cx22')
// console.log('done', new Date().getTime()/1000)
process.stdout.write(result);
}
});
// const wcsc = spawnSync(path.resolve(__dirname, "../wcsc"), args, {
// cwd: process.cwd(),
// });
// if (wcsc.status !== 0) {
// console.error(wcsc.error);
// process.exit(wcsc.status);
// }
// const str = wcsc.stdout.toString();
// // console.log(str)
// const resultSplit = encode1(str).split("=");
// const tempObj = {};
// for (
// let i = 0, total = resultSplit.length;
// i < total && resultSplit[i + 1];
// i += 2
// ) {
// // a=b ---> a: b
// const key = resultSplit[i];
// if (key === "version") continue;
// tempObj[key] = resultSplit[i + 1].replace(
// /((\\x[\da-f]{2}|\\u[\da-f]{4})){1,}/gi,
// function ($0, $1, $2) {
// return eval('"' + $0 + '"');
// // return dict[$0] ? dict[$0] : eval('"' + $0 + '"')
// }
// );
// }
// const resultObj = {
// common: tempObj.comm, //.replace(/\\n/g, '\\u000a'),
// pageWxss: {},
// };
// // console.log(resultObj.common)
// for (const key in tempObj) {
// if (key.endsWith(".wxss")) {
// resultObj.pageWxss[key] = tempObj[key];
// }
// }
// let result = JSON.stringify(resultObj);
// String.prototype.splice = function (start, newStr) {
// return this.slice(0, start) + newStr + this.slice(start + 1);
// };
// result = result.replace(/\\\\/g, "\\");
// for (let i = 0; i < result.length; i++) {
// if (result[i] === "\\") {
// // && result[i + 1] !== 'u'
// const c = result[i + 1] === "n" ? "\n" : result[i + 1];
// result = result.splice(
// i + 1,
// "u" + c.charCodeAt(0).toString(16).padStart(4, "0")
// );
// }
// }
// process.stdout.write(result);
} else {
spawn(wcscPath, args, {
cwd: process.cwd(),
stdio: "inherit",
});
}

View File

@ -68,5 +68,9 @@ Usage: ./bin/linux/wcsc [-lc] [-o OUTPUT] [-s <NAME OF FILE>] [-st] [-js] [-db]
-cp: add class prefix
-pc: page wxss files count
```
## 按需注入和用时注入
https://developers.weixin.qq.com/miniprogram/dev/framework/ability/lazyload.html#%E6%8C%89%E9%9C%80%E6%B3%A8%E5%85%A5
# 输出

View File

@ -1,5 +1,14 @@
#!/usr/bin/env node
const sl = require("spdlog")
console.log(sl)
// sl.setAsyncMode(5000, 1000);
function encode1(s) {
return encodeURI(s).replace(
/%(u[0-9A-F]{4})|(%[0-9A-F]{2})/gm,
function ($0, $1, $2) {
return ($1 && "\\" + $1.toLowerCase()) || decodeURI($2);
}
);
}
console.log(encode1('content:\\\\x22\\\\x22'))
console.log(encodeURI('\\\\x22\\\\x22'))
// console.log(JSON.parse())

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

1
test/wcc/lla/1/wine.json Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

1
test/wcc/lla/2/wine.json Normal file

File diff suppressed because one or more lines are too long

0
test/wcc/lla/LOG.MD Normal file
View File

13
test/wcc/lla1.sh Normal file
View File

@ -0,0 +1,13 @@
#!/bin/bash
# 本脚本用于测试wcc编译器带lla参数时的编译结果
root_dir=$(cd `dirname $0`/../.. && pwd -P)
pkg_dir="/mnt/disk1/Project/WeCuit-Project/WeCuit-Mini-uni-test_uni_vue-cli/dist/build/mp-weixin"
pkg_dir="/home/msojocs/Documents/we1"
cd "$pkg_dir" && \
wine "$root_dir/package.nw/js/vendor/wcc.exe" "-d" "--split" ">_<9657" "-cc" "2>_<9657./pages/index/index.wxml>_<96570>_<9657./pages/logs/logs.wxml>_<96570" "-lla" "./pages/index/index>_<9657./pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "\$gwx" > "$root_dir/test/wcc/lla/1/wine.json"
echo "==================="
cd "$pkg_dir" && \
"$root_dir/compiler/nodejs/wcc" "-d" "--split" ">_<9657" "-cc" "2>_<9657./pages/index/index.wxml>_<96570>_<9657./pages/logs/logs.wxml>_<96570" "-lla" "./pages/index/index>_<9657./pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "\$gwx" > "$root_dir/test/wcc/lla/1/nodejs.json"

16
test/wcc/lla2.sh Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
test/wcc/llw/1/wine.json Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

10939
test/wcc/llw/2/linux_output.js Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
test/wcc/llw/2/wine.json Normal file

File diff suppressed because one or more lines are too long

26
test/wcc/llw/LOG.MD Normal file
View File

@ -0,0 +1,26 @@
# unicode
| 符号 | unicode |
|-----|---------|
| tab | \u0009 |
| t | \u0074 |
# 起始
var cs = cs || [];\u000a$gwx_XC_1=function(_,_v,_n,_p,_s,_wp,_wl,$gwn,$gwl,$gwh,wh,$gstack,$gwrt,gra,grb,TestTest,wfor,_ca,_da,_r,_rz,_o,_oz,_1,_1z,_2,_2z,_m,_mz,nv_getDate,nv_getRegExp,nv_console,nv_parseInt,nv_parseFloat,nv_isNaN,nv_isFinite,nv_decodeURI,nv_decodeURIComponent,nv_encodeURI,nv_encodeURIComponent,$gdc,nv_JSON,_af,_gv,_ai,_grp,_gd,_gapi,$ixc,_ic,_w,_ev,_tsd){return function(path,global){\u000aif(typeof global==='undefined'){if (typeof __GWX_GLOBAL__==='undefined')global={};else global=__GWX_GLOBAL__;}if(typeof __WXML_GLOBAL__ === 'undefined') {__WXML_GLOBAL__={};\u000a}__WXML_GLOBAL__.modules = __WXML_GLOBAL__.modules || {};\u000a
#
var e_={}\u000aif(typeof(global.entrys)==='undefined')global.entrys={};e_=global.entrys;\u000avar d_={}\u000aif(typeof(global.defines)==='undefined')global.defines={};d_=global.defines;\u000avar f_={}\u000aif(typeof(global.modules)==='undefined')global.modules={};f_=global.modules || {};\u000avar p_={}\u000avar cs = cs || [];\u000a__WXML_GLOBAL__.ops_cached = __WXML_GLOBAL__.ops_cached || {}\u000a__WXML_GLOBAL__.ops_set = __WXML_GLOBAL__.ops_set || {};\u000a__WXML_GLOBAL__.ops_init = __WXML_GLOBAL__.ops_init || {};\u000avar z=__WXML_GLOBAL__.ops_set.$gwx_XC_1 || [];\u000a
# 函数
function gz$gwx_XC_0_1(){\u000aif( __WXML_GLOBAL__.ops_cached.$gwx_XC_0_1)return __WXML_GLOBAL__.ops_cached.$gwx_XC_0_1\u000a__WXML_GLOBAL__.ops_cached.$gwx_XC_0_1=[];\u000a(function(z){var a=11;function Z(ops){z.push(ops)}\u000aZ([3,'container'])\u000aZ([3,'userinfo'])\u000aZ([[7],[3,'canIUseOpenData']])\u000aZ([3,'bindViewTap'])\u000aZ([3,'userinfo-avatar'])\u000aZ([3,'width: 183rpx; height: 148rpx; display: block; box-sizing: border-box'])\u000aZ([3,'userAvatarUrl'])\u000aZ([3,'userNickName'])\u000aZ([[2,'!'],[[7],[3,'hasUserInfo']]])\u000aZ([[7],[3,'canIUseGetUserProfile']])\u000aZ([3,'getUserProfile'])\u000aZ([3,' 获取头像昵称 '])\u000aZ([[7],[3,'canIUse']])\u000aZ([3,'getUserInfo'])\u000aZ(z[13])\u000aZ(z[11])\u000aZ([3,' 请使用1.4.4及以上版本基础库 '])\u000aZ(z[3])\u000aZ(z[4])\u000aZ([3,'cover'])\u000aZ([[6],[[7],[3,'userInfo']],[3,'avatarUrl']])\u000aZ([3,'userinfo-nickname'])\u000aZ([a,[[6],[[7],[3,'userInfo']],[3,'nickName']]])\u000aZ([3,'usermotto'])\u000aZ([3,'user-motto'])\u000aZ([a,[[7],[3,'motto']]])\u000a})(__WXML_GLOBAL__.ops_cached.$gwx_XC_0_1);return __WXML_GLOBAL__.ops_cached.$gwx_XC_0_1\u000a}
#
\u000a__WXML_GLOBAL__.ops_set.$gwx_XC_0=z;\u000a__WXML_GLOBAL__.ops_init.$gwx_XC_0=true;\u000avar x=['./pages/index/index.wxml'];d_[x[0]]={}\u000a
var m0=function(e,s,r,gg){\u000avar z=gz$gwx_XC_0_1()\u000acs.push(\u0022./pages/index/index.wxml:view:2:2\u0022)\u000avar oB=_n('view')\u000a_rz(z,oB,'class',0,e,s,gg)\u000acs.push(\u0022./pages/index/index.wxml:view:3:4\u0022)\u000avar xC=_n('view')\u000a_rz(z,xC,'class',1,e,s,gg)\u000avar oD=_v()\u000a_(xC,oD)\u000aif(_oz(z,2,e,s,gg)){oD.wxVkey=1\u000acs.push(\u0022./pages/index/index.wxml:block:4:6\u0022)\u000acs.push(\u0022./pages/index/index.wxml:view:5:8\u0022)\u000avar fE=_mz(z,'view',['bindtap',3,'class',1,'style',2],[],e,s,gg)\u000acs.push(\u0022./pages/index/index.wxml:open-data:6:10\u0022)\u000avar cF=_n('open-data')\u000a_rz(z,cF,'type',6,e,s,gg)\u000acs.pop()\u000a_(fE,cF)\u000acs.pop()\u000a_(oD,fE)\u000acs.push(\u0022./pages/index/index.wxml:open-data:8:8\u0022)\u000avar hG=_n('open-data')\u000a_rz(z,hG,'type',7,e,s,gg)\u000acs.pop()\u000a_(oD,hG)\u000acs.pop()\u000a}\u000aelse if(_oz(z,8,e,s,gg)){oD.wxVkey=2\u000acs.push(\u0022./pages/index/index.wxml:block:10:6\u0022)\u000avar oH=_v()\u000a_(oD,oH)\u000aif(_oz(z,9,e,s,gg)){oH.wxVkey=1\u000acs.push(\u0022./pages/index/index.wxml:button:11:8\u0022)\u000acs.push(\u0022./pages/index/index.wxml:button:11:8\u0022)\u000avar cI=_n('button')\u000a_rz(z,cI,'bindtap',10,e,s,gg)\u000avar oJ=_oz(z,11,e,s,gg)\u000a_(cI,oJ)\u000acs.pop()\u000a_(oH,cI)\u000acs.pop()\u000a}\u000aelse if(_oz(z,12,e,s,gg)){oH.wxVkey=2\u000acs.push(\u0022./pages/index/index.wxml:button:12:8\u0022)\u000acs.push(\u0022./pages/index/index.wxml:button:12:8\u0022)\u000avar lK=_mz(z,'button',['bindgetuserinfo',13,'openType',1],[],e,s,gg)\u000avar aL=_oz(z,15,e,s,gg)\u000a_(lK,aL)\u000acs.pop()\u000a_(oH,lK)\u000acs.pop()\u000a}\u000aelse{oH.wxVkey=3\u000acs.push(\u0022./pages/index/index.wxml:view:13:8\u0022)\u000acs.push(\u0022./pages/index/index.wxml:view:13:8\u0022)\u000avar tM=_n('view')\u000avar eN=_oz(z,16,e,s,gg)\u000a_(tM,eN)\u000acs.pop()\u000a_(oH,tM)\u000acs.pop()\u000a}\u000aoH.wxXCkey=1\u000acs.pop()\u000a}\u000aelse{oD.wxVkey=3\u000acs.push(\u0022./pages/index/index.wxml:block:15:6\u0022)\u000acs.push(\u0022./pages/index/index.wxml:image:16:8\u0022)\u000avar bO=_mz(z,'image',['bindtap',17,'class',1,'mode',2,'src',3],[],e,s,gg)\u000acs.pop()\u000a_(oD,bO)\u000acs.push(\u0022./pages/index/index.wxml:text:17:8\u0022)\u000avar oP=_n('text')\u000a_rz(z,oP,'class',21,e,s,gg)\u000avar xQ=_oz(z,22,e,s,gg)\u000a_(oP,xQ)\u000acs.pop()\u000a_(oD,oP)\u000acs.pop()\u000a}\u000aoD.wxXCkey=1\u000acs.pop()\u000a_(oB,xC)\u000acs.push(\u0022./pages/index/index.wxml:view:20:4\u0022)\u000avar oR=_n('view')\u000a_rz(z,oR,'class',23,e,s,gg)\u000acs.push(\u0022./pages/index/index.wxml:text:21:6\u0022)\u000avar fS=_n('text')\u000a_rz(z,fS,'class',24,e,s,gg)\u000avar cT=_oz(z,25,e,s,gg)\u000a_(fS,cT)\u000acs.pop()\u000a_(oR,fS)\u000acs.pop()\u000a_(oB,oR)\u000acs.pop()\u000a_(r,oB)\u000areturn r\u000a}\u000ae_[x[0]]={f:m0,j:[],i:[],ti:[],ic:[]}\u000a
#
if(path&&e_[path]){\u000aouterGlobal.__wxml_comp_version__=0.02\u000areturn function(env,dd,global){$gwxc=0;var root={\u0022tag\u0022:\u0022wx-page\u0022};root.children=[]\u000a;g=\u0022$gwx_XC_0\u0022;var main=e_[path].f\u000acs=[]\u000aif (typeof global===\u0022undefined\u0022)global={};global.f=$gdc(f_[path],\u0022\u0022,1);\u000aif(typeof(outerGlobal.__webview_engine_version__)!='undefined'&&outerGlobal.__webview_engine_version__+1e-6>=0.02+1e-6&&outerGlobal.__mergeData__)\u000a{\u000aenv=outerGlobal.__mergeData__(env,dd);\u000a}\u000atry{\u000amain(env,{},root,global);\u000a_tsd(root)\u000aif(typeof(outerGlobal.__webview_engine_version__)=='undefined'|| outerGlobal.__webview_engine_version__+1e-6<0.01+1e-6){return _ev(root);}\u000a}catch(err){\u000aconsole.log(cs, env);\u000aconsole.log(err)\u000athrow err\u000a}\u000a;g=\u0022\u0022;\u000areturn root;\u000a}\u000a}\u000a}\u000a}
# end
(__g.a,__g.b,__g.c,__g.d,__g.e,__g.f,__g.g,__g.h,__g.i,__g.j,__g.k,__g.l,__g.m,__g.n,__g.o,__g.p,__g.q,__g.r,__g.s,__g.t,__g.u,__g.v,__g.w,__g.x,__g.y,__g.z,__g.A,__g.B,__g.C,__g.D,__g.E,__g.F,__g.G,__g.H,__g.I,__g.J,__g.K,__g.L,__g.M,__g.N,__g.O,__g.P,__g.Q,__g.R,__g.S,__g.T,__g.U,__g.V,__g.W,__g.X,__g.Y,__g.Z,__g.aa);if(__vd_version_info__.delayedGwx||false)$gwx_XC_0();

10
test/wcc/llw/common.js Normal file

File diff suppressed because one or more lines are too long

1
test/wcc/llw/index.js Normal file

File diff suppressed because one or more lines are too long

1
test/wcc/llw/logs.js Normal file
View File

@ -0,0 +1 @@
var cs = cs || [];\u000a$gwx_XC_1=function(_,_v,_n,_p,_s,_wp,_wl,$gwn,$gwl,$gwh,wh,$gstack,$gwrt,gra,grb,TestTest,wfor,_ca,_da,_r,_rz,_o,_oz,_1,_1z,_2,_2z,_m,_mz,nv_getDate,nv_getRegExp,nv_console,nv_parseInt,nv_parseFloat,nv_isNaN,nv_isFinite,nv_decodeURI,nv_decodeURIComponent,nv_encodeURI,nv_encodeURIComponent,$gdc,nv_JSON,_af,_gv,_ai,_grp,_gd,_gapi,$ixc,_ic,_w,_ev,_tsd){return function(path,global){\u000aif(typeof global==='undefined'){if (typeof __GWX_GLOBAL__==='undefined')global={};else global=__GWX_GLOBAL__;}if(typeof __WXML_GLOBAL__ === 'undefined') {__WXML_GLOBAL__={};\u000a}__WXML_GLOBAL__.modules = __WXML_GLOBAL__.modules || {};\u000avar e_={}\u000aif(typeof(global.entrys)==='undefined')global.entrys={};e_=global.entrys;\u000avar d_={}\u000aif(typeof(global.defines)==='undefined')global.defines={};d_=global.defines;\u000avar f_={}\u000aif(typeof(global.modules)==='undefined')global.modules={};f_=global.modules || {};\u000avar p_={}\u000avar cs = cs || [];\u000a__WXML_GLOBAL__.ops_cached = __WXML_GLOBAL__.ops_cached || {}\u000a__WXML_GLOBAL__.ops_set = __WXML_GLOBAL__.ops_set || {};\u000a__WXML_GLOBAL__.ops_init = __WXML_GLOBAL__.ops_init || {};\u000avar z=__WXML_GLOBAL__.ops_set.$gwx_XC_1 || [];\u000afunction gz$gwx_XC_1_1(){\u000aif( __WXML_GLOBAL__.ops_cached.$gwx_XC_1_1)return __WXML_GLOBAL__.ops_cached.$gwx_XC_1_1\u000a__WXML_GLOBAL__.ops_cached.$gwx_XC_1_1=[];\u000a(function(z){var a=11;function Z(ops){z.push(ops)}\u000aZ([3,'container log-list'])\u000aZ([3,'log'])\u000aZ([[7],[3,'logs']])\u000aZ([3,'timeStamp'])\u000aZ([3,'log-item'])\u000aZ([a,[[2,'+'],[[7],[3,'index']],[1,1]],[3,'. '],[[6],[[7],[3,'log']],[3,'date']]])\u000a})(__WXML_GLOBAL__.ops_cached.$gwx_XC_1_1);return __WXML_GLOBAL__.ops_cached.$gwx_XC_1_1\u000a}\u000a__WXML_GLOBAL__.ops_set.$gwx_XC_1=z;\u000a__WXML_GLOBAL__.ops_init.$gwx_XC_1=true;\u000avar x=['./pages/logs/logs.wxml'];d_[x[0]]={}\u000avar m0=function(e,s,r,gg){\u000avar z=gz$gwx_XC_1_1()\u000acs.push(\u0022./pages/logs/logs.wxml:view:2:2\u0022)\u000avar oV=_n('view')\u000a_rz(z,oV,'class',0,e,s,gg)\u000avar cW=_v()\u000a_(oV,cW)\u000acs.push(\u0022./pages/logs/logs.wxml:block:3:4\u0022)\u000avar oX=function(aZ,lY,t1,gg){\u000acs.push(\u0022./pages/logs/logs.wxml:block:3:4\u0022)\u000acs.push(\u0022./pages/logs/logs.wxml:text:4:6\u0022)\u000avar b3=_n('text')\u000a_rz(z,b3,'class',4,aZ,lY,gg)\u000avar o4=_oz(z,5,aZ,lY,gg)\u000a_(b3,o4)\u000acs.pop()\u000a_(t1,b3)\u000acs.pop()\u000areturn t1\u000a}\u000acW.wxXCkey=2\u000a_2z(z,2,oX,e,s,gg,cW,'log','index','timeStamp')\u000acs.pop()\u000acs.pop()\u000a_(r,oV)\u000areturn r\u000a}\u000ae_[x[0]]={f:m0,j:[],i:[],ti:[],ic:[]}\u000aif(path&&e_[path]){\u000aouterGlobal.__wxml_comp_version__=0.02\u000areturn function(env,dd,global){$gwxc=0;var root={\u0022tag\u0022:\u0022wx-page\u0022};root.children=[]\u000a;g=\u0022$gwx_XC_1\u0022;var main=e_[path].f\u000acs=[]\u000aif (typeof global===\u0022undefined\u0022)global={};global.f=$gdc(f_[path],\u0022\u0022,1);\u000aif(typeof(outerGlobal.__webview_engine_version__)!='undefined'&&outerGlobal.__webview_engine_version__+1e-6>=0.02+1e-6&&outerGlobal.__mergeData__)\u000a{\u000aenv=outerGlobal.__mergeData__(env,dd);\u000a}\u000atry{\u000amain(env,{},root,global);\u000a_tsd(root)\u000aif(typeof(outerGlobal.__webview_engine_version__)=='undefined'|| outerGlobal.__webview_engine_version__+1e-6<0.01+1e-6){return _ev(root);}\u000a}catch(err){\u000aconsole.log(cs, env);\u000aconsole.log(err)\u000athrow err\u000a}\u000a;g=\u0022\u0022;\u000areturn root;\u000a}\u000a}\u000a}\u000a}(__g.a,__g.b,__g.c,__g.d,__g.e,__g.f,__g.g,__g.h,__g.i,__g.j,__g.k,__g.l,__g.m,__g.n,__g.o,__g.p,__g.q,__g.r,__g.s,__g.t,__g.u,__g.v,__g.w,__g.x,__g.y,__g.z,__g.A,__g.B,__g.C,__g.D,__g.E,__g.F,__g.G,__g.H,__g.I,__g.J,__g.K,__g.L,__g.M,__g.N,__g.O,__g.P,__g.Q,__g.R,__g.S,__g.T,__g.U,__g.V,__g.W,__g.X,__g.Y,__g.Z,__g.aa);if(__vd_version_info__.delayedGwx||false)$gwx_XC_1();

1266
test/wcc/llw/nodejs copy.js Normal file

File diff suppressed because it is too large Load Diff

0
test/wcc/llw/nodejs.json Normal file
View File

1
test/wcc/llw/wine.json Normal file

File diff suppressed because one or more lines are too long

13
test/wcc/llw1.sh Normal file
View File

@ -0,0 +1,13 @@
#!/bin/bash
# 本脚本用于测试wcc编译器带llw参数时的编译结果
root_dir=$(cd `dirname $0`/../.. && pwd -P)
pkg_dir="/mnt/disk1/Project/WeCuit-Project/WeCuit-Mini-uni-test_uni_vue-cli/dist/build/mp-weixin"
pkg_dir="/home/msojocs/Documents/we1"
cd "$pkg_dir" && \
wine "$root_dir/package.nw/js/vendor/wcc.exe" "-d" "--split" ">_<9657" "-cc" "2>_<9657./pages/index/index.wxml>_<96570>_<9657./pages/logs/logs.wxml>_<96570" "-llw" "./pages/index/index>_<9657./pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "\$gwx" > "$root_dir/test/wcc/llw/1/wine.json"
echo "==================="
cd "$pkg_dir" && \
"$root_dir/compiler/nodejs/wcc" "-d" "--split" ">_<9657" "-cc" "2>_<9657./pages/index/index.wxml>_<96570>_<9657./pages/logs/logs.wxml>_<96570" "-llw" "./pages/index/index>_<9657./pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "\$gwx" > "$root_dir/test/wcc/llw/1/nodejs.json"

16
test/wcc/llw2.sh Normal file

File diff suppressed because one or more lines are too long

View File

@ -1,18 +0,0 @@
#!/bin/bash
# cd /home/msojocs/Documents/we1 && \
# /mnt/disk1/GitHub/wechat-devtools/package.nw/node_modules/wcc/bin/linux/wcc -d --split ">_<9772" -cc "2>_<9772./pages/index/index.wxml>_<97720>_<9772./pages/logs/logs.wxml>_<97720" ./pages/index/index.wxml ./pages/logs/logs.wxml -gn $gwx
# | grep Z
# cd /home/msojocs/Documents/we1 && \
# wine /mnt/disk1/GitHub/wechat-devtools/cache/wechat_devtools_1.05.2201240_x64/code/package.nw/js/vendor/wcc.exe \
# " -d --split >_<9772 -xc 2>_<9772./pages/index/index.wxml>_<97720>_<9772./pages/logs/logs.wxml>_<97720" \
# " ./pages/logs/logs.wxml ./pages/index/index.wxml -gn $gwx"
cd /home/msojocs/Documents/we1 && \
/mnt/disk1/GitHub/wechat-devtools/node_modules/miniprogram-compiler/bin/linux/wcc \
"-d" "--split" ">_<1266" "-xc" "2>_<1266./pages/index/index.wxml>_<12660>_<1266./pages/logs/logs.wxml>_<12660" "-ll" "pages/index/index" "pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "$gwx"
cd /home/msojocs/Documents/we1 && \
wine /mnt/disk1/GitHub/wechat-devtools/node_modules/miniprogram-compiler/bin/windows/wcc.exe \
"-d" "--split" ">_<1266" "-xc" "2>_<1266./pages/index/index.wxml>_<12660>_<1266./pages/logs/logs.wxml>_<12660" "-lla" "./pages/index/index>_<1266./pages/logs/logs" "./pages/index/index.wxml" "./pages/logs/logs.wxml" "-gn" "$gwx"

View File

1091
test/wcsc/compare/wine.json Normal file

File diff suppressed because it is too large Load Diff

12
test/wcsc/ll.sh Normal file
View File

@ -0,0 +1,12 @@
#!/bin/bash
root_dir=$(cd `dirname $0`/../.. && pwd -P)
pkg_dir="/mnt/disk1/Project/WeCuit-Project/WeCuit-Mini-uni-test_uni_vue-cli/dist/build/mp-weixin"
cd "$pkg_dir" && \
wine $root_dir/package.nw/js/vendor/wcsc.exe "-db" "-pc" "54" "./pages/login/login.wxss" "./pages/index/index.wxss" "./pages/articleView/articleView.wxss" "./pages/calendar/calendar.wxss" "./pages/card/card.wxss" "./pages/checkIn/edit.wxss" "./pages/checkIn/list.wxss" "./pages/courseTable/courseTable.wxss" "./pages/courseTable/imgCropper/imgCropper.wxss" "./pages/exam/exam.wxss" "./pages/grade/grade.wxss" "./pages/laboratory/list.wxss" "./pages/laboratory/detail.wxss" "./pages/maintenance/maintenance.wxss" "./pages/my/ADMag/ADMag.wxss" "./pages/my/ADMag/watchAD/watchAD.wxss" "./pages/my/dataMag/dataMag.wxss" "./pages/my/my.wxss" "./pages/my/sub/sub.wxss" "./pages/my/sso/sso.wxss" "./pages/newsList/newsList.wxss" "./pages/officeGrade/query.wxss" "./pages/THEOL/dir/dir.wxss" "./pages/THEOL/THEOL.wxss" "./pages/THEOL/tree/tree.wxss" "./pages/auth/auth.wxss" "./pages/my/bind/bind.wxss" "./pages/my/register/register.wxss" "./pages/my/bind/mini.wxss" "./pages/terms/privacy.wxss" "./pages/resources/list.wxss" "./pages/my/about.wxss" "./components/beat-char/beat-char.wxss" "./components/card.wxss" "./components/mytree/mytree.wxss" "./components/scroll/index.wxss" "./components/tab/index.wxss" "./miniprogram_npm/weui-miniprogram/cell/cell.wxss" "./miniprogram_npm/weui-miniprogram/cells/cells.wxss" "./miniprogram_npm/weui-miniprogram/loading/loading.wxss" "./node-modules/mp-html/dist/uni-app/components/mp-html/mp-html.wxss" "./node-modules/mp-html/dist/uni-app/components/mp-html/node/node.wxss" "./pages/my/info.wxss" "./uni_modules/uni-card/components/uni-card/uni-card.wxss" "./uni_modules/uni-icons/components/uni-icons/uni-icons.wxss" "./uni_modules/uni-row/components/uni-col/uni-col.wxss" "./uni_modules/uni-row/components/uni-row/uni-row.wxss" "./uni_modules/uni-title/components/uni-title/uni-title.wxss" "./wxcomponents/dynamicForm/components/timePicker/timePicker.wxss" "./wxcomponents/dynamicForm/index.wxss" "./wxcomponents/dynamicForm/vant/icon/index.wxss" "./wxcomponents/dynamicForm/vant/info/index.wxss" "./wxcomponents/dynamicForm/vant/uploader/index.wxss" "./wxcomponents/image-cropper/image-cropper.wxss" "./app.wxss" "./common/main.wxss" "./wxcomponents/dynamicForm/components/timePicker/timePicker-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/common/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/common/index.wxss" "./wxcomponents/dynamicForm/vant/icon/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/info/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/uploader/index-wxa-auto-dark.wxss" "-ll" > $root_dir/test/wcsc/compare/wine.json
echo "==================="
cd "$pkg_dir" && \
$root_dir/compiler/nodejs/wcsc "-db" "-pc" "54" "./pages/login/login.wxss" "./pages/index/index.wxss" "./pages/articleView/articleView.wxss" "./pages/calendar/calendar.wxss" "./pages/card/card.wxss" "./pages/checkIn/edit.wxss" "./pages/checkIn/list.wxss" "./pages/courseTable/courseTable.wxss" "./pages/courseTable/imgCropper/imgCropper.wxss" "./pages/exam/exam.wxss" "./pages/grade/grade.wxss" "./pages/laboratory/list.wxss" "./pages/laboratory/detail.wxss" "./pages/maintenance/maintenance.wxss" "./pages/my/ADMag/ADMag.wxss" "./pages/my/ADMag/watchAD/watchAD.wxss" "./pages/my/dataMag/dataMag.wxss" "./pages/my/my.wxss" "./pages/my/sub/sub.wxss" "./pages/my/sso/sso.wxss" "./pages/newsList/newsList.wxss" "./pages/officeGrade/query.wxss" "./pages/THEOL/dir/dir.wxss" "./pages/THEOL/THEOL.wxss" "./pages/THEOL/tree/tree.wxss" "./pages/auth/auth.wxss" "./pages/my/bind/bind.wxss" "./pages/my/register/register.wxss" "./pages/my/bind/mini.wxss" "./pages/terms/privacy.wxss" "./pages/resources/list.wxss" "./pages/my/about.wxss" "./components/beat-char/beat-char.wxss" "./components/card.wxss" "./components/mytree/mytree.wxss" "./components/scroll/index.wxss" "./components/tab/index.wxss" "./miniprogram_npm/weui-miniprogram/cell/cell.wxss" "./miniprogram_npm/weui-miniprogram/cells/cells.wxss" "./miniprogram_npm/weui-miniprogram/loading/loading.wxss" "./node-modules/mp-html/dist/uni-app/components/mp-html/mp-html.wxss" "./node-modules/mp-html/dist/uni-app/components/mp-html/node/node.wxss" "./pages/my/info.wxss" "./uni_modules/uni-card/components/uni-card/uni-card.wxss" "./uni_modules/uni-icons/components/uni-icons/uni-icons.wxss" "./uni_modules/uni-row/components/uni-col/uni-col.wxss" "./uni_modules/uni-row/components/uni-row/uni-row.wxss" "./uni_modules/uni-title/components/uni-title/uni-title.wxss" "./wxcomponents/dynamicForm/components/timePicker/timePicker.wxss" "./wxcomponents/dynamicForm/index.wxss" "./wxcomponents/dynamicForm/vant/icon/index.wxss" "./wxcomponents/dynamicForm/vant/info/index.wxss" "./wxcomponents/dynamicForm/vant/uploader/index.wxss" "./wxcomponents/image-cropper/image-cropper.wxss" "./app.wxss" "./common/main.wxss" "./wxcomponents/dynamicForm/components/timePicker/timePicker-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/common/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/common/index.wxss" "./wxcomponents/dynamicForm/vant/icon/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/info/index-wxa-auto-dark.wxss" "./wxcomponents/dynamicForm/vant/uploader/index-wxa-auto-dark.wxss" "-ll" > $root_dir/test/wcsc/compare/nodejs.json

View File

@ -33,8 +33,8 @@ cd $tmp_dir && npm install miniprogram-compiler
# 如果是mac执行wcc,否则wcc.exe
if [[ $REDUCE_WINE == 'true' ]];then
\cp -rf "${srcdir}/compiler/generatemd5.js" "${package_dir}/js/vendor/generatemd5.js"
\cp -rf "${srcdir}/compiler/wine/wcc" "${package_dir}/js/vendor/wcc"
\cp -rf "${srcdir}/compiler/wine/wcsc" "${package_dir}/js/vendor/wcsc"
\cp -rf "${srcdir}/compiler/nodejs/wcc" "${package_dir}/js/vendor/wcc"
\cp -rf "${srcdir}/compiler/nodejs/wcsc" "${package_dir}/js/vendor/wcsc"
\cp -rf "${tmp_dir}/node_modules/miniprogram-compiler/bin/linux/wcc" "${package_dir}/js/vendor/wcc.bin"
\cp -rf "${tmp_dir}/node_modules/miniprogram-compiler/bin/linux/wcsc" "${package_dir}/js/vendor/wcsc.bin"
node "${package_dir}/js/vendor/generatemd5.js"