cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From muratsu <...@git.apache.org>
Subject [GitHub] cordova-windows pull request: CB-9359: Adds support for .appxbundl...
Date Tue, 21 Jul 2015 18:00:28 GMT
Github user muratsu commented on a diff in the pull request:

    https://github.com/apache/cordova-windows/pull/102#discussion_r35133311
  
    --- Diff: template/cordova/lib/build.js ---
    @@ -229,11 +268,66 @@ function buildTargets(msbuild, config) {
                 if (msbuild.version == '4.0' && build.target == projFiles.win80)
{
                     build.target = 'CordovaApp.vs2012.sln';
                 }
    -            return msbuild.buildProject(path.join(ROOT, build.target), config.buildType,
 build.arch);
    +
    +            var otherProperties = { };
    +            // Only add the CordovaBundlePlatforms argument when on the last build step
    +            if (shouldBundle && index === configsArray.length - 1) {
    +                otherProperties.CordovaBundlePlatforms = bundleTerms;
    +            } else if (shouldBundle) {
    +                otherProperties.CordovaBundlePlatforms = build.arch;
    +            }
    +            return msbuild.buildProject(path.join(ROOT, build.target), config.buildType,
 build.arch, otherProperties);
              });
         }, Q());
    +
    +    if (shouldBundle) {
    +        return buildsCompleted.then(function() {
    +            // msbuild isn't capable of generating bundles unless you enable bundling
for each individual arch
    +            // However, that generates intermediate bundles, like "CordovaApp.Windows10_0.0.1.0_x64.appxbundle"
    +            // We need to clear the intermediate bundles, or else "cordova run" will
fail because of too
    +            // many .appxbundle files.
    +
    +            console.log('Clearing intermediates...');
    +            var appPackagesPath = path.join(ROOT, 'AppPackages');
    +            var childDirectories = shell.ls(path.join(appPackagesPath, '*')).map(function(pathName)
{
    +                return { path: pathName, stats: fs.statSync(pathName) };
    +            }).filter(function(fileInfo) {
    +                return fileInfo.stats.isDirectory();
    +            });
    +
    +            if (childDirectories.length === 0) {
    +                throw new Error('Could not find a completed app package directory.');
    --- End diff --
    
    should we Q.reject instead?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org


Mime
View raw message