8 import org.mozilla.javascript.*;
9 import xdc.services.intern.xsr.*;
10 import xdc.services.spec.Session;
14 static final String VERS =
"@(#) xdc-E10\n";
16 static final Proto.Elm $$T_Bool = Proto.Elm.newBool();
17 static final Proto.Elm $$T_Num = Proto.Elm.newNum();
18 static final Proto.Elm $$T_Str = Proto.Elm.newStr();
19 static final Proto.Elm $$T_Obj = Proto.Elm.newObj();
21 static final Proto.Fxn $$T_Met =
new Proto.Fxn(
null,
null, 0, -1,
false);
22 static final Proto.Map $$T_Map =
new Proto.Map($$T_Obj);
23 static final Proto.Arr $$T_Vec =
new Proto.Arr($$T_Obj);
25 static final XScriptO $$DEFAULT = Value.DEFAULT;
26 static final Object $$UNDEF = Undefined.instance;
28 static final Proto.Obj $$Package = (Proto.Obj)Global.get(
"$$Package");
29 static final Proto.Obj $$Module = (Proto.Obj)Global.get(
"$$Module");
30 static final Proto.Obj $$Instance = (Proto.Obj)Global.get(
"$$Instance");
31 static final Proto.Obj $$Params = (Proto.Obj)Global.get(
"$$Params");
33 static final Object $$objFldGet = Global.get(
"$$objFldGet");
34 static final Object $$objFldSet = Global.get(
"$$objFldSet");
35 static final Object $$proxyGet = Global.get(
"$$proxyGet");
36 static final Object $$proxySet = Global.get(
"$$proxySet");
37 static final Object $$delegGet = Global.get(
"$$delegGet");
38 static final Object $$delegSet = Global.get(
"$$delegSet");
50 ArrayList<Object> imports =
new ArrayList<Object>();
51 ArrayList<Object> loggables =
new ArrayList<Object>();
52 ArrayList<Object> mcfgs =
new ArrayList<Object>();
53 ArrayList<Object> icfgs =
new ArrayList<Object>();
54 ArrayList<String> inherits =
new ArrayList<String>();
55 ArrayList<Object> proxies =
new ArrayList<Object>();
56 ArrayList<Object> sizes =
new ArrayList<Object>();
57 ArrayList<Object> tdefs =
new ArrayList<Object>();
61 Global.callFxn(
"loadPackage", xdcO,
"xdc");
62 Global.callFxn(
"loadPackage", xdcO,
"xdc.corevers");
67 pkgP = (Proto.Obj)om.bind(
"configPkg.Package",
new Proto.Obj());
68 pkgV = (Value.Obj)om.bind(
"configPkg",
new Value.Obj(
"configPkg", pkgP));
73 pkgP.init(
"configPkg.Package", (Proto.Obj)om.findStrict(
"xdc.IPackage.Module",
"configPkg"));
74 Scriptable cap = (Scriptable)Global.callFxn(
"loadCapsule", xdcO,
"configPkg/package.xs");
75 om.bind(
"xdc.IPackage$$capsule", cap);
77 fxn = Global.get(cap,
"init");
78 if (fxn !=
null) pkgP.addFxn(
"init", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$init",
"configPkg"), fxn);
79 fxn = Global.get(cap,
"close");
80 if (fxn !=
null) pkgP.addFxn(
"close", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$close",
"configPkg"), fxn);
81 fxn = Global.get(cap,
"validate");
82 if (fxn !=
null) pkgP.addFxn(
"validate", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$validate",
"configPkg"), fxn);
83 fxn = Global.get(cap,
"exit");
84 if (fxn !=
null) pkgP.addFxn(
"exit", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$exit",
"configPkg"), fxn);
85 fxn = Global.get(cap,
"getLibs");
86 if (fxn !=
null) pkgP.addFxn(
"getLibs", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$getLibs",
"configPkg"), fxn);
87 fxn = Global.get(cap,
"getSects");
88 if (fxn !=
null) pkgP.addFxn(
"getSects", (Proto.Fxn)om.findStrict(
"xdc.IPackage$$getSects",
"configPkg"), fxn);
89 pkgP.bind(
"$capsule", cap);
90 pkgV.init2(pkgP,
"configPkg", Value.DEFAULT,
false);
91 pkgV.bind(
"$name",
"configPkg");
92 pkgV.bind(
"$category",
"Package");
93 pkgV.bind(
"$$qn",
"configPkg.");
94 pkgV.bind(
"$vers", Global.newArray());
95 Value.Map atmap = (Value.Map)pkgV.getv(
"$attr");
98 pkgV.bind(
"$imports", imports);
99 StringBuilder sb =
new StringBuilder();
100 sb.append(
"var pkg = xdc.om['configPkg'];\n");
101 sb.append(
"if (pkg.$vers.length >= 3) {\n");
102 sb.append(
"pkg.$vers.push(Packages.xdc.services.global.Vers.getDate(xdc.csd() + '/..'));\n");
104 sb.append(
"if ('configPkg$$stat$base' in xdc.om) {\n");
105 sb.append(
"pkg.packageBase = xdc.om['configPkg$$stat$base'];\n");
106 sb.append(
"pkg.packageRepository = xdc.om['configPkg$$stat$root'];\n");
108 sb.append(
"pkg.build.libraries = [\n");
110 sb.append(
"pkg.build.libDesc = [\n");
112 Global.eval(sb.toString());
115 void $$INITIALIZATION()
121 Global.callFxn(
"init", pkgV);
122 ((Value.Arr)om.findStrict(
"$packages",
"configPkg")).add(pkgV);
125 public void exec( Scriptable xdcO, Session ses )
129 om = (Value.Obj)xdcO.get(
"om",
null);
131 Object o = om.geto(
"$name");
132 String s = o instanceof String ? (String)o :
null;
133 isCFG = s !=
null && s.equals(
"cfg");
134 isROV = s !=
null && s.equals(
"rov");