/* THIS IS A GENERATED FILE -- DO NOT EDIT */

var targ = xdc.module('ti.targets.elf.C66');
/* configuro was told the platform explicitly */
var platform = 'ti.platforms.evm6657';

/* 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:/ti/pdk_C6657_1_1_2_6/packages/ti/drv/emac/test/EmacLoopbackTest/evmc6657.cfg',
        profile: 'release',
        cfgHome: 'xconfig_my_evmc6657',
});

/* if the build model supports encoded cfgArgs, use it */
if ('cfgArgsEncoded' in exeOpts) {
    exeOpts.cfgArgs = 'null';
    exeOpts.cfgArgsEncoded = true;
}
else {
    /* otherwise, we must risk errors if cfgArgs contains embedded 's */
    exeOpts.cfgArgs = 'null';
}

var exe = Pkg[makeAssembly ? 'addAssembly': 'addExecutable'](
    'evmc6657',
    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:/ti/pdk_C6657_1_1_2_6/packages/ti/drv/emac/test/EmacLoopbackTest/evmc6657.cfg',
    outputPath: 'C:/ti/pdk_C6657_1_1_2_6/packages/ti/drv/exampleProjects/EMACLoopback_testProject/.config/xconfig_my_evmc6657',
    exeName:    'evmc6657' + suffix,
    exeIntName: 'evmc6657' + suffix.replace('.', '_'),
    targ:       targ,
    legacyTcf:  false,
    bios5Incs:  false,
    linkerCommandFile: 'linker.cmd',
    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);
}
