Example NuGet Native Package Script for DirectXTK library showing Desktop, WinRT, WinPhone in one pkg

Topics: Ecosystem, General
Apr 24, 2013 at 12:14 AM
Edited Apr 24, 2013 at 12:19 AM
Anyone know why the css color syntax highliter doesn't work?

(color version : http://fearthecowboy.com/stuff/directxtk.autopkg.html )

nuget {
    nuspec {
        id = directxtk;
        version : 2.22.13.13;
        title: DirectX Tool Kit;
        authors: {Microsoft Corporation};
        owners: {Chuck Walbourn, Shawn Hargreaves};
        licenseUrl: "http://www.microsoft.com/en-us/openness/licenses.aspx#MPL";
        projectUrl: "http://directxtk.codeplex.com/";


        // put the url of the logo from the website here. Found it by right clicking on the icon 
        // on codeplex.
        iconUrl: "http://download-codeplex.sec.s-msft.com/Download?ProjectName=directxtk&DownloadId=373840&Build=20426";
        requireLicenseAcceptance:false;
        summary:The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing Direct3D 11 code in C++. ;
        
        // if you need to span several lines you can prefix a string with an @ symbol 
        // (exactly like c# does).
        description: @"Features:
SpriteBatch - simple & efficient 2D sprite rendering
SpriteFont - bitmap based text rendering
Effects - set of built-in shaders for common rendering tasks
PrimitiveBatch - simple and efficient way to draw user primitives
GeometricPrimitive - draws basic shapes such as cubes and spheres
Model - draws simple meshes loaded from .CMO or .SDKMESH files
CommonStates - factory providing commonly used D3D state objects
VertexTypes - structures for commonly used vertex data formats
DDSTextureLoader - light-weight DDS file texture loader
WICTextureLoader - WIC-based image file texture loader
ScreenGrab - light-weight screen shot saver
SimpleMath - simplified C++ wrapper for DirectXMath

        ";
        releaseNotes: "Release of DirectXTK Feb 22, 2013 libraries.";
        copyright: Copyright 2013;
        tags: { DirectX, native };
    };

    // the files that go into the content folders
    files {
    
        #defines {
            DIRECTXTK = .\;
            SDK_2012_PHONE = ${DIRECTXTK}bin\WindowsPhone8\;
            SDK_2012_RT = ${DIRECTXTK}\bin\Windows8\;
            SDK_2012_DESKTOP = ${DIRECTXTK}\bin\Desktop_2012\;
        }
    
        // grab all the files in the include folder
        // the folder that contains all the .h files will 
        // automatically get added to the Includes path.
        include: { "${DIRECTXTK}Inc\*" };

        // Documents that we want to ship with the package. 
        // how can I indicate multiple files on this line?  
        // also want to include ${DIRECTXTK}Readme.txt.
        // garretts : collections ( foo : { ... }; ) can have multiple items separated by commas.
        docs: {  ${DIRECTXTK}Microsoft Permissive License.rtf, ${DIRECTXTK}Readme.txt };
                
        [x86,v110,debug,desktop] { 
            lib:${SDK_2012_DESKTOP}Win32\Debug\DirectXTK.lib;
            symbols:${SDK_2012_DESKTOP}Win32\Debug\directxtk.pdb;
        }
        
        [x86,v110,release,desktop] { 
            lib:${SDK_2012_DESKTOP}Win32\Release\DirectXTK.lib;
            symbols:${SDK_2012_DESKTOP}Win32\Release\directxtk.pdb;
        }
        
        [x64,v110,debug,desktop] { 
            lib:${SDK_2012_DESKTOP}x64\Debug\DirectXTK.lib;
            symbols:${SDK_2012_DESKTOP}x64\Debug\directxtk.pdb;
        }
        
        [x64,v110,release,desktop] { 
            lib:${SDK_2012_DESKTOP}x64\Release\DirectXTK.lib;
            symbols:${SDK_2012_DESKTOP}x64\Release\directxtk.pdb;
        }
        
        [x86,v110,debug,phone] {
            lib:${SDK_2012_PHONE}Win32\Debug\DirectXTK.lib;
            symbols:${SDK_2012_PHONE}Win32\Debug\directxtk.pdb;
        }           
        
        [x86,v110,release,phone] {
            lib:${SDK_2012_PHONE}Win32\Release\DirectXTK.lib;
            symbols:${SDK_2012_PHONE}Win32\Release\directxtk.pdb;
        }
        
        [arm,v110,debug,phone] {
            lib:${SDK_2012_PHONE}arm\Debug\DirectXTK.lib;
            symbols:${SDK_2012_PHONE}arm\Debug\directxtk.pdb;
        }           
        
        [arm,v110,release,phone] {
            lib:${SDK_2012_PHONE}arm\Release\DirectXTK.lib;
            symbols:${SDK_2012_PHONE}arm\Release\directxtk.pdb;
        }
        
        [x86,v110,debug,WinRT] {
            lib:${SDK_2012_RT}Win32\Debug\DirectXTK.lib;
            symbols:${SDK_2012_RT}Win32\Debug\directxtk.pdb;
        }           
        
        [x86,v110,release,WinRT] {
            lib:${SDK_2012_RT}Win32\Release\DirectXTK.lib;
            symbols:${SDK_2012_RT}Win32\Release\directxtk.pdb;
        }
        
        [arm,v110,debug,WinRT] {
            lib:${SDK_2012_RT}arm\Debug\DirectXTK.lib;
            symbols:${SDK_2012_RT}arm\Debug\directxtk.pdb;
        }           
        
        [arm,v110,release,WinRT] {
            lib:${SDK_2012_RT}arm\Release\DirectXTK.lib;
            symbols:${SDK_2012_RT}arm\Release\directxtk.pdb;
        }
        
        [x64,v110,debug,WinRT] {
            lib:${SDK_2012_RT}x64\Debug\DirectXTK.lib;
            symbols:${SDK_2012_RT}x64\Debug\directxtk.pdb;
        }           
        
        [x64,v110,release,WinRT] {
            lib:${SDK_2012_RT}x64\Release\DirectXTK.lib;
            symbols:${SDK_2012_RT}x64\Release\directxtk.pdb;
        }
        
        tools: {
            ${DIRECTXTK}MakeSpriteFont\bin\Release\MakeSpriteFont.exe
        }
    };
    
    targets {
        // We're trying to be standard about these sorts of thing. 
        // (Will help with config.h later :D)
        Defines += HAS_DIRECTXTK;
    };
}