summaryrefslogtreecommitdiff
path: root/src/dlls/dbgshim/dbgshim.targets
blob: 8332befa5ae5ea81e294d67feea4a63af4e48fd2 (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
84
85
86
87
88
89
90
91
92
93
94
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="dogfood">

    <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\xplat\utility.props"/>
    <PropertyGroup>
        <LinkUseCMT>true</LinkUseCMT>
        <UserIncludes>
            $(UserIncludes);
            ..\;
            $(VCToolsIncPath);
            $(Clrbase)\src\Debug\shim;
        </UserIncludes>
        <OutputName>dbgshim</OutputName>
        <TargetType>DYNLINK</TargetType>
        <LinkSubsystem>windows</LinkSubsystem>
        <CDefines>$(CDefines);UNICODE;_UNICODE;FEATURE_NO_HOST;SELF_NO_HOST</CDefines>
        <DllDef>..\dbgshim.ntdef</DllDef>
        <DllEntryPoint>_DllMainCRTStartup</DllEntryPoint>
        <ExtDelayImpLib >false</ExtDelayImpLib>
        <UseMsvcrt>false</UseMsvcrt>
        <NoLinkGdi32>true</NoLinkGdi32>
    </PropertyGroup>

    <PropertyGroup Condition="'$(HostMachineOS)' == 'windows'">
        <LinkDelayLoad Condition="'$(LinkDelayLoad)'!=''">$(LinkDelayLoad);</LinkDelayLoad>
        <LinkDelayLoad>$(LinkDelayLoad)user32.dll;advapi32.dll;oleaut32.dll</LinkDelayLoad>
    </PropertyGroup>

    <ItemGroup>
      <LinkPreCrtLibs Include="$(ClrLibPath)\utilcodestaticnohost$(XPlatHostLibSuffix).lib" >
        <!-- This project isn't factored like the others... there are many projects pointing to the current path of corguids -->
        <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostLocal'">$(ClrSrcDirectory)utilcode\staticnohost\staticnohost.nativeproj</ProjectReference>
        <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostWinx86'">$(ClrSrcDirectory)utilcode\staticnohostx86\staticnohost.nativeproj</ProjectReference>
        <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostWinAMD64'">$(ClrSrcDirectory)utilcode\staticnohostamd64\staticnohost.nativeproj</ProjectReference>
      </LinkPreCrtLibs>
    </ItemGroup>
    <ItemGroup>
        <!-- This lib differs between Win32 and CoreSys, so I am specifically using XPlatHostSuffix, not XPlatHostLibSuffix -->
        <!-- In retrospect the naming on those props aren't great, but I don't want to undo all the testing already done on this change
             with potential errors refactoring to a new prop name. XPlatHostLibSuffix only varies on architecture whereas XPlatHostSuffix
             varies on arch and OS -->
        <TargetLib Include="$(ClrLibPath)\debugshim$(XPlatHostSuffix).lib" />
        <ProjectReference Include="$(ClrSrcDirectory)\Debug\shim\$(XPlatHostBuildDir)\debugshim.nativeproj" />
        <TargetLib Include="$(ClrLibPath)\dbgutil$(XPlatHostLibSuffix).lib" />
        <ProjectReference Include="$(ClrSrcDirectory)\Debug\dbgutil\$(XPlatHostLibBuildDir)\dbgutil.nativeproj" />
    </ItemGroup>
    <ItemGroup Condition="'$(HostMachineOS)' == 'windows'">
        <TargetLib Include="$(ClrLibPath)\CorGUIDS$(XPlatHostLibSuffix).lib">
          <!-- This project isn't factored like the others... there are many projects pointing to the current path of corguids -->
          <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostLocal'">$(ClrSrcDirectory)inc\corguids.nativeproj</ProjectReference>
          <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostWinx86'">$(ClrSrcDirectory)incx86\corguids.nativeproj</ProjectReference>
          <ProjectReference Condition="'$(XPlatHostLibBuildDir)'=='HostWinAMD64'">$(ClrSrcDirectory)incamd64\corguids.nativeproj</ProjectReference>
        </TargetLib>
        <Targetlib Include="$(SdkLibPath)\kernel32.lib" />
        <Targetlib Include="$(CrtLibPath)\libcmt$(BuildSuffix).lib" />
        <Targetlib Include="$(SdkLibPath)\uuid.lib" />
        <Targetlib Include="$(SdkLibPath)\user32.lib" />
        <Targetlib Include="$(SdkLibPath)\advapi32.lib" />
        <Targetlib Include="$(SdkLibPath)\oleaut32.lib" />
        <Targetlib Include="$(SdkLibPath)\WtsApi32.lib" />
        <Targetlib Include="$(SdkLibPath)\version.lib" />
        <Targetlib Include="$(SdkLibPath)\psapi.lib" />
    </ItemGroup>
    <ItemGroup Condition="'$(HostMachineOS)' == 'OneCore' or '$(HostMachineOS)'=='OneCoreWin7Compat'">
      <TargetLib Include="$(CoreSystemCrt)" />
      <TargetLib Include="$(SdkLibPath)\uuid.lib" />
    </ItemGroup>
    <ItemGroup Condition="'$(HostMachineOS)' == 'OneCoreWin7Compat'">
      <TargetLib Include="$(SdkLibPath)\bcrypt.lib" />
      <TargetLib Include="$(SdkLibPath)\crypt32.lib" />
      <TargetLib Include="$(SdkLibPath)\oleaut32.lib" />
      <TargetLib Include="$(SdkLibPath)\mincore_fw.lib" />
    </ItemGroup>
    <ItemGroup Condition="'$(HostMachineOS)' == 'OneCore'">
      <TargetLib Include="$(SdkLibPath)\mincore.lib" />
      <TargetLib Include="$(SdkLibPath)\mincore_legacy.lib" />
      <TargetLib Include="$(SdkLibPath)\mincore_private.lib" />
      <TargetLib Include="$(SdkLibPath)\mincore_obsolete.lib" />
    </ItemGroup>

    <ItemGroup>
        <RCResourceFile Include="..\dbgshim.rc" />
    </ItemGroup>

    <ItemGroup>
        <CppCompile Include="..\dbgshim.cpp" />
    </ItemGroup>

    <ItemGroup>
        <DataFile Include="..\dbgshim.h" />
    </ItemGroup>

    <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\clr.targets" />

</Project>