summaryrefslogtreecommitdiff
path: root/cpp/msbuild/ice.nuget.targets
blob: 71000ee68a178a9d07b2f5c65ef1a22623b2fe38 (plain)
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
79
80
81
82
83
<Project DefaultTargets="NugetPack" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <PropertyGroup>
        <IceSrcRootDir>$(MSBuildThisFileDirectory)..\</IceSrcRootDir>
    </PropertyGroup>

    <!-- Dynamic libraries and import libraries -->
    <ItemGroup>
        <Libraries Include="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\*.dll"
                   Exclude="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\glacier2cryptpermissionsverifier*d.dll;
                            $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icesslopenssl*.dll;
                            $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\libeay32.dll;
                            $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\ssleay32.dll"/>

        <ImportLibraries Include="$(IceSrcRootDir)lib\$(Platform)\$(Configuration)\*.lib"
                         Exclude="$(IceSrcRootDir)lib\$(Platform)\$(Configuration)\*uwp++11*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\glacier2cryptpermissionsverifier*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\icedb*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\icesslopenssl*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\icestormservice*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\iceutil*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\icexml*.lib;
                                  $(IceSrcRootDir)lib\$(Platform)\$(Configuration)\slice*.lib"/>
    </ItemGroup>

    <!-- Win32 Release binaries -->
    <ItemGroup Condition="'$(Platform)|$(Configuration)' == 'Win32|Release'">
        <Executables Include="$(IceSrcRootDir)bin\Win32\Release\*.exe"
                     Exclude="$(IceSrcRootDir)bin\Win32\Release\slice2*.exe" />
    </ItemGroup>

    <!-- x64 Release binaries -->
    <ItemGroup Condition="'$(Platform)|$(Configuration)' == 'x64|Release'">
        <Executables Include="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\*.exe"
                     Exclude="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\slice2*.exe"/>
        <Tools Include="$(IceSrcRootDir)bin\x64\Release\slice2*.exe" />
    </ItemGroup>

    <!-- Debug binaries -->
    <ItemGroup Condition="'$(Configuration)' == 'Debug'">
        <Executables Include="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\*.exe"
                     Exclude="$(IceSrcRootDir)bin\$(Platform)\$(Configuration)\glacier2router.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\iceboxadmin.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icebridge.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icegridadmin.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icegriddb.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icepatch2*.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\iceserviceinstall.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icestormadmin.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\icestormdb.exe;
                              $(IceSrcRootDir)bin\$(Platform)\$(Configuration)\slice2*.exe"/>
    </ItemGroup>

    <!-- public C++ header and Slice files -->
    <ItemGroup>
        <Headers Include="$(IceSrcRootDir)include\**\*.h"
                 Exclude="$(IceSrcRootDir)include\IceBT\*.h;
                          $(IceSrcRootDir)include\IceIAP\*.h;
                          $(IceSrcRootDir)include\generated\**\*.h"/>

        <Headers Include="$(IceSrcRootDir)include\generated\cpp98\$(Platform)\$(Configuration)\**\*.h"
                 Exclude="$(IceSrcRootDir)include\generated\cpp98\$(Platform)\$(Configuration)\IceDiscovery\*.h;
                          $(IceSrcRootDir)include\generated\cpp98\$(Platform)\$(Configuration)\IceLocatorDiscovery\*.h"/>

        <Slices Include="$(IceSrcRootDir)..\slice\**\*.ice"
                Exclude="$(IceSrcRootDir)..\slice\IceDiscovery\*.ice;
                         $(IceSrcRootDir)..\slice\IceLocatorDiscovery\*.ice"/>
    </ItemGroup>

    <!-- Copy required files to the package specific directories -->
    <Target Name="NugetPack">
        <Copy Condition="'$(Platform)|$(Configuration)' == 'Win32|Release'"
              SourceFiles="@(Headers)" DestinationFolder="$(PackageDirectory)\build\native\include\%(Headers.RecursiveDir)" />

        <Copy Condition="'$(Platform)|$(Configuration)' == 'Win32|Release'"
              SourceFiles="@(Slices)" DestinationFolder="$(PackageDirectory)\slice\%(Slices.RecursiveDir)" />
        <Copy Condition="'$(Platform)|$(Configuration)' == 'x64|Release'"
              SourceFiles="@(Tools)" DestinationFolder="$(PackageDirectory)\tools" />
        <Copy SourceFiles="@(Executables)" DestinationFolder="$(PackageDirectory)\build\native\bin\$(Platform)\$(Configuration)" />
        <Copy SourceFiles="@(Libraries)" DestinationFolder="$(PackageDirectory)\build\native\bin\$(Platform)\$(Configuration)" />
        <Copy SourceFiles="@(ImportLibraries)" DestinationFolder="$(PackageDirectory)\build\native\lib\$(Platform)\$(Configuration)" />
    </Target>
</Project>