1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
/* THIS IS A GENERATED FILE -- DO NOT EDIT */
var targ = xdc.module('ti.targets.arm.elf.M4F');
/* configuro was told the platform explicitly */
var platform = 'ti.platforms.tiva:TM4C129XNCZAD';
/* decide whether to make an assembly or an executable */
var makeAssembly = false;
var Executable = xdc.module('xdc.bld.Executable');
var exeOpts = new Executable.Attrs({
cfgScript: 'C:/Tango/Software/Embedded_SW/Embedded/Embedded.cfg',
profile: 'release',
cfgHome: 'xconfig_Embedded',
});
exeOpts.cfgArgs = 'null';
exeOpts.cfgArgsEncoded = true;
var exe = Pkg[makeAssembly ? 'addAssembly': 'addExecutable'](
'Embedded',
targ,
platform,
exeOpts
);
/*
* Generate the compiler.opt file
* Do this here instead of during the initial creation of the configuro
* package, because the contents of any config.bld script are unknown
* at that time. Config.bld can't be executed until the XDC build phase.
*/
if (makeAssembly) {
var suffix = targ.dllExt || '.p' + targ.suffix;
}
else {
var suffix = '.p' + targ.suffix;
}
var thisObj = {
cfg: 'C:/Tango/Software/Embedded_SW/Embedded/Embedded.cfg',
outputPath: 'C:/Tango/Software/Embedded_SW/Embedded/.config/xconfig_Embedded',
exeName: 'Embedded' + suffix,
exeIntName: 'Embedded' + suffix.replace('.', '_'),
targ: targ,
linkerCommandFile: 'linker.cmd',
compilerOptFile: 'compiler.opt',
compilerDefsFile: 'compiler.opt' + ".defs",
makeAssembly: makeAssembly
};
var tmpl = xdc.loadTemplate('xdc/tools/configuro/template/compiler.opt.xdt');
tmpl.genFile('compiler.opt', thisObj, [], false);
/*
* Generate the custom makefile.
*/
var tmpl = xdc.loadTemplate('xdc/tools/configuro/template/' +
(makeAssembly? 'custom.mak.asm.xdt' : 'custom.mak.exe.xdt'));
tmpl.genFile('custom.mak', thisObj, [], false);
Pkg.makeEpilogue = "include custom.mak";
/*
* Generate the package script.
*/
var tmpl = xdc.loadTemplate('xdc/tools/configuro/template/package.xs.xdt');
tmpl.genFile('package.xs', thisObj, [], false);
if (makeAssembly) {
/*
* Generate the linker options into a staging file, so that the presence or
* age of the advertised linker command file can be the makefile trigger to
* rebuild the package from the user's config script.
*/
var tmpl = xdc.loadTemplate('xdc/tools/configuro/template/linker.cmd.asm.xdt');
tmpl.genFile('linker.cmd.cp', thisObj, [], false);
}
|