mirror of
https://github.com/Chuyu-Team/VC-LTL5.git
synced 2026-10-16 20:50:41 +08:00
新增_LTL_XXXXX_module_type系列宏支持,以及运行时支持。
This commit is contained in:
+2
-1
@@ -111,7 +111,8 @@
|
||||
<ZipFileName Condition="'$(TagVersion)' == ''">VC-LTL-Binary.7z</ZipFileName>
|
||||
<ZipFileName Condition="'$(TagVersion)' != ''">VC-LTL-$(TagVersion)-Binary.7z</ZipFileName>
|
||||
</PropertyGroup>
|
||||
<Exec Command="7z.exe a $(ZipFileName) config _msvcrt.h %22VC-LTL helper for Visual Studio.props%22 TargetPlatform Readme.md -xr!*.objs.lib" WorkingDirectory="$(MSBuildThisFileDirectory)"/>
|
||||
<Delete Files="$(MSBuildThisFileDirectory)$(ZipFileName)"/>
|
||||
<Exec Command="7z.exe a $(ZipFileName) config _msvcrt.h %22VC-LTL helper for *%22 TargetPlatform Readme.md -xr!*.objs.lib" WorkingDirectory="$(MSBuildThisFileDirectory)"/>
|
||||
</Target>
|
||||
|
||||
<Target Name="_GetProjectAllConfiguration" Returns="@(AllProjectReferenceConfigurations)">
|
||||
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
@echo off
|
||||
setlocal
|
||||
set IsTextMode=No
|
||||
|
||||
echo VC-LTL Installer [Version 0.1.0]
|
||||
echo (c) Chuyu Team. All rights reserved.
|
||||
echo.
|
||||
|
||||
if /i "%1"=="" goto TextMode
|
||||
if /i "%1"=="/?" goto Help
|
||||
if /i "%1"=="/I" goto Install
|
||||
if /i "%1"=="/U" goto UnInstall
|
||||
|
||||
echo Invaild Command Parameter.
|
||||
echo.
|
||||
goto Help
|
||||
|
||||
:Install
|
||||
echo.
|
||||
echo.Start writing to the registry
|
||||
echo.[HKCU\Code\VC-LTL]
|
||||
echo.Root="%~dp0"
|
||||
echo.
|
||||
reg ADD HKCU\Code\VC-LTL /v Root /t REG_SZ /d "%~dp0\" /f
|
||||
echo.
|
||||
goto ExitScript
|
||||
|
||||
:UnInstall
|
||||
echo.
|
||||
reg delete HKCU\Code\VC-LTL /f
|
||||
echo.
|
||||
goto ExitScript
|
||||
|
||||
:Help
|
||||
echo.Manages VC-LTL information in the current user registry.
|
||||
echo.
|
||||
echo.Install [Options]
|
||||
echo.
|
||||
echo. /I Add VC-LTL information to the current user registry.
|
||||
echo. /U Remove VC-LTL information to the current user registry.
|
||||
echo. /? Show this content.
|
||||
goto ExitScript
|
||||
|
||||
:TextMode
|
||||
set IsTextMode=Yes
|
||||
echo.Welcome to use VC-LTL Installer! If you want to invoke this script
|
||||
echo.silently, please use /? parameter to read help.
|
||||
reg query HKCU\Code\VC-LTL /v Root >nul 2>nul && goto TextUnInstall || goto Install
|
||||
|
||||
:TextUnInstall
|
||||
echo.
|
||||
set /p Answer=VC-LTL appears to be installed, do you want to uninstall it (Y/N)?
|
||||
if /i "%Answer%"=="Y" goto UnInstall
|
||||
echo.
|
||||
echo.Operation canceled.
|
||||
echo.
|
||||
goto ExitScript
|
||||
|
||||
:ExitScript
|
||||
if /i "%IsTextMode%"=="Yes" pause
|
||||
@echo on
|
||||
@@ -0,0 +1,18 @@
|
||||
|
||||
#include "..\..\header\VC_LTL_Config.h"
|
||||
|
||||
#ifndef _LTL_vcruntime_module_type
|
||||
#define _LTL_vcruntime_module_type _LTL_vcruntime_module_type_from_ucrtbase
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_ucrt_module_type
|
||||
#define _LTL_ucrt_module_type _LTL_ucrt_module_type_from_ucrtbase
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_vccorlib_module_type
|
||||
#define _LTL_vccorlib_module_type _LTL_vccorlib_module_type_form_wincorlib
|
||||
#endif
|
||||
|
||||
#include <..\include\vcruntime.h>
|
||||
@@ -0,0 +1,18 @@
|
||||
|
||||
#include "..\..\header\VC_LTL_Config.h"
|
||||
|
||||
#ifndef _LTL_vcruntime_module_type
|
||||
#define _LTL_vcruntime_module_type _LTL_vcruntime_module_type_from_ucrtbase
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_ucrt_module_type
|
||||
#define _LTL_ucrt_module_type _LTL_ucrt_module_type_from_ucrtbase
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_vccorlib_module_type
|
||||
#define _LTL_vccorlib_module_type _LTL_vccorlib_module_type_form_wincorlib
|
||||
#endif
|
||||
|
||||
#include <..\include\vcruntime.h>
|
||||
@@ -0,0 +1,18 @@
|
||||
|
||||
#include "..\..\header\VC_LTL_Config.h"
|
||||
|
||||
#ifndef _LTL_vcruntime_module_type
|
||||
#define _LTL_vcruntime_module_type _LTL_vcruntime_module_type_from_msvcrt
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_ucrt_module_type
|
||||
#define _LTL_ucrt_module_type _LTL_ucrt_module_type_from_msvcrt
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_vccorlib_module_type
|
||||
#define _LTL_vccorlib_module_type _LTL_vccorlib_module_type_form_vccorlib140
|
||||
#endif
|
||||
|
||||
#include <..\include\vcruntime.h>
|
||||
@@ -0,0 +1,18 @@
|
||||
|
||||
#include "..\..\header\VC_LTL_Config.h"
|
||||
|
||||
#ifndef _LTL_vcruntime_module_type
|
||||
#define _LTL_vcruntime_module_type _LTL_vcruntime_module_type_from_msvcrt
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_ucrt_module_type
|
||||
#define _LTL_ucrt_module_type _LTL_ucrt_module_type_from_msvcrt
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _LTL_vccorlib_module_type
|
||||
#define _LTL_vccorlib_module_type _LTL_vccorlib_module_type_form_wincorlib
|
||||
#endif
|
||||
|
||||
#include <..\include\vcruntime.h>
|
||||
@@ -0,0 +1,57 @@
|
||||
#pragma once
|
||||
|
||||
#ifndef __LTL_Config_Include
|
||||
#define __LTL_Config_Include
|
||||
|
||||
#ifndef _LTL_Core_Version
|
||||
#define _LTL_Core_Version 5
|
||||
#endif
|
||||
|
||||
#ifndef _Build_By_LTL
|
||||
#define _Build_By_LTL 1
|
||||
#endif
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////
|
||||
// vcruntime.lib
|
||||
//
|
||||
//from vcruntime140.dll (ms default)
|
||||
#define _LTL_vcruntime_module_type_from_vcruntime140 0
|
||||
//from msvcrt.dll
|
||||
#define _LTL_vcruntime_module_type_from_msvcrt 1
|
||||
//from ucrtbase.dll
|
||||
#define _LTL_vcruntime_module_type_from_ucrtbase 2
|
||||
//
|
||||
//
|
||||
//////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////
|
||||
// urct.lib
|
||||
//
|
||||
//form ucrtbase.dll or crt api set (ms default)
|
||||
#define _LTL_ucrt_module_type_from_ucrtbase 0
|
||||
//form msvcrt.dll
|
||||
#define _LTL_ucrt_module_type_from_msvcrt 1
|
||||
//
|
||||
//
|
||||
//////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////
|
||||
// vccorlib.lib
|
||||
//
|
||||
//from vccorlib140.dll (ms default)
|
||||
#define _LTL_vccorlib_module_type_form_vccorlib140 0
|
||||
//form wincorlib.dll (support Windows 8.1 and leater)
|
||||
#define _LTL_vccorlib_module_type_form_wincorlib 1
|
||||
//
|
||||
//
|
||||
//////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,10 @@
|
||||
|
||||
#ifndef __LTL_Version_Include
|
||||
#define __LTL_Version_Include
|
||||
|
||||
#define LTLVersion1 5
|
||||
#define LTLVersion2 0
|
||||
#define LTLVersion3 1
|
||||
#define LTLVersion4 4
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,78 @@
|
||||
//
|
||||
// corecrt.h
|
||||
//
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
//
|
||||
// Declarations used throughout the CoreCRT library.
|
||||
//
|
||||
#pragma once
|
||||
|
||||
//rename __crt_locale_data_public to __crt_locale_data_public_ucrt
|
||||
#define __crt_locale_data_public __crt_locale_data_public_ucrt
|
||||
#include <..\ucrt\corecrt.h>
|
||||
#undef __crt_locale_data_public
|
||||
|
||||
|
||||
#ifndef _TAGLC_ID_DEFINED
|
||||
typedef struct tagLC_ID {
|
||||
unsigned short wLanguage;
|
||||
unsigned short wCountry;
|
||||
unsigned short wCodePage;
|
||||
} LC_ID, * LPLC_ID;
|
||||
#define _TAGLC_ID_DEFINED
|
||||
#endif /* _TAGLC_ID_DEFINED */
|
||||
|
||||
typedef struct __crt_locale_refcount
|
||||
{
|
||||
char* locale;
|
||||
wchar_t* wlocale;
|
||||
long* refcount;
|
||||
long* wrefcount;
|
||||
} __crt_locale_refcount;
|
||||
|
||||
|
||||
typedef struct __crt_locale_data_public_msvcrt
|
||||
{
|
||||
long refcount;
|
||||
|
||||
//unsigned int lc_codepage;
|
||||
unsigned int _locale_lc_codepage;
|
||||
|
||||
unsigned int lc_collate_cp;
|
||||
unsigned long lc_handle[6]; /* LCID */
|
||||
LC_ID lc_id[6];
|
||||
__crt_locale_refcount lc_category[6];
|
||||
int lc_clike;
|
||||
|
||||
//int mb_cur_max;
|
||||
_Field_range_(1, 2) int _locale_mb_cur_max;
|
||||
|
||||
long* lconv_intl_refcount;
|
||||
long* lconv_num_refcount;
|
||||
long* lconv_mon_refcount;
|
||||
struct lconv* lconv;
|
||||
long* ctype1_refcount;
|
||||
unsigned short* ctype1;
|
||||
//const unsigned short * pctype;
|
||||
unsigned short const* _locale_pctype;
|
||||
|
||||
unsigned char const* pclmap;
|
||||
unsigned char const* pcumap;
|
||||
|
||||
//struct __lc_time_data * lc_time_curr;
|
||||
struct __lc_time_data* lc_time_curr;
|
||||
} __crt_locale_data_public_msvcrt;
|
||||
|
||||
|
||||
#if defined(_LTL_ucrt_module_type) && _LTL_ucrt_module_type == 0
|
||||
typedef __crt_locale_data_public_ucrt __crt_locale_data_public;
|
||||
#elif _LTL_ucrt_module_type == 1
|
||||
typedef __crt_locale_data_public_msvcrt __crt_locale_data_public;
|
||||
#else
|
||||
#error _LTL_ucrt_module_type???
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -300,7 +300,7 @@ _futime64
|
||||
;_fwrite_nolock
|
||||
_gcvt
|
||||
_gcvt_s
|
||||
;_get_current_locale t
|
||||
_get_current_locale
|
||||
;_get_daylight t
|
||||
_get_doserrno
|
||||
;_get_dstbias t
|
||||
@@ -1191,7 +1191,7 @@ ldiv
|
||||
;llround x
|
||||
;llroundf x
|
||||
;llroundl x
|
||||
;localeconv x Win7开始才导出 _W_decimal_point等成员
|
||||
localeconv
|
||||
log
|
||||
log10
|
||||
;log1p x
|
||||
|
||||
@@ -263,7 +263,7 @@ _futime64
|
||||
_gcvt
|
||||
_gcvt_s
|
||||
;_get_FMA3_enable x
|
||||
;_get_current_locale x
|
||||
_get_current_locale
|
||||
;_get_daylight x
|
||||
_get_doserrno
|
||||
;_get_dstbias x
|
||||
@@ -1156,7 +1156,7 @@ ldiv
|
||||
;llround x
|
||||
;llroundf x
|
||||
;llroundl x
|
||||
;localeconv x Win7的结构体才完整
|
||||
localeconv
|
||||
log
|
||||
log10
|
||||
log10f
|
||||
|
||||
@@ -10,7 +10,6 @@ VC-LTL自动化加载配置,建议你将此文件单独复制到你的工程
|
||||
|
||||
使用方法:
|
||||
1. 在属性管理器选择所有Release配置,然后右键选择“添加现有属性表”。
|
||||
2. 务必保证所有依赖的静态库也均用VC-LTL重新编译。
|
||||
|
||||
|
||||
VC-LTL默认搜索顺序
|
||||
@@ -29,11 +28,8 @@ VC-LTL默认搜索顺序
|
||||
|
||||
<!--#####################################################################VC-LTL设置#####################################################################-->
|
||||
<PropertyGroup>
|
||||
<!--取消下方注释可以开启VC-LTL轻量模式,轻量模式更加注重体积控制,但是CRT规范将会维持在VS2008。如果你需要高度兼容微软UCRT,那么请不要打开此选项!!!-->
|
||||
<!--<DisableAdvancedSupport>true</DisableAdvancedSupport>-->
|
||||
|
||||
<!--取消下方注释可以开启强制XP兼容模式,默认情况下仅在选择WinXP工具集时才开启。-->
|
||||
<!--<SupportWinXP>true</SupportWinXP>-->
|
||||
<!--控制TargetPlatform版本,目前可用版本为 6.0.6000.0(默认) 6.2.9200.0 10.0.10240.0 10.0.19041.0-->
|
||||
<!--<WindowsTargetPlatformMinVersion>10.0.10240.0</WindowsTargetPlatformMinVersion>-->
|
||||
</PropertyGroup>
|
||||
<!--####################################################################################################################################################-->
|
||||
|
||||
|
||||
+40
-35
@@ -19,33 +19,33 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<VCLTLTargetUniversalCRTBuildVersion></VCLTLTargetUniversalCRTBuildVersion>
|
||||
<VCLTLTargetUniversalCRTBuildVersion Condition=" '$(WindowsTargetPlatformMinVersion)'!=''">$([System.Version]::Parse('$(WindowsTargetPlatformMinVersion)').Build)</VCLTLTargetUniversalCRTBuildVersion>
|
||||
<VCLTLTargetUniversalCRTBuildVersion Condition=" '$(VCLTLTargetUniversalCRTBuildVersion)'=='' and '$(SupportLTL)'=='ucrt'">10240</VCLTLTargetUniversalCRTBuildVersion>
|
||||
<VCLTLTargetUniversalCRTBuildVersion Condition=" '$(VCLTLTargetUniversalCRTBuildVersion)'==''">6000</VCLTLTargetUniversalCRTBuildVersion>
|
||||
<LTLWindowsTargetPlatformMinVersionBuild></LTLWindowsTargetPlatformMinVersionBuild>
|
||||
<LTLWindowsTargetPlatformMinVersionBuild Condition=" '$(WindowsTargetPlatformMinVersion)'!=''">$([System.Version]::Parse('$(WindowsTargetPlatformMinVersion)').Build)</LTLWindowsTargetPlatformMinVersionBuild>
|
||||
<LTLWindowsTargetPlatformMinVersionBuild Condition=" '$(LTLWindowsTargetPlatformMinVersionBuild)'=='' and '$(SupportLTL)'=='ucrt'">10240</LTLWindowsTargetPlatformMinVersionBuild>
|
||||
<LTLWindowsTargetPlatformMinVersionBuild Condition=" '$(LTLWindowsTargetPlatformMinVersionBuild)'==''">6000</LTLWindowsTargetPlatformMinVersionBuild>
|
||||
</PropertyGroup>
|
||||
|
||||
<!--搜索最适合的UCRT版本-->
|
||||
<Choose>
|
||||
<When Condition="'$(VCLTLTargetUniversalCRTBuildVersion)' >= '19041'">
|
||||
<When Condition="'$(LTLWindowsTargetPlatformMinVersionBuild)' >= '19041'">
|
||||
<PropertyGroup>
|
||||
<VCLTLTargetUniversalCRTVersion>10.0.19041.0</VCLTLTargetUniversalCRTVersion>
|
||||
<LTLWindowsTargetPlatformMinVersion>10.0.19041.0</LTLWindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
</When>
|
||||
<When Condition="'$(PlatformShortName)'=='arm64' or '$(VCLTLTargetUniversalCRTBuildVersion)' >= '10240'">
|
||||
<When Condition="'$(PlatformShortName)'=='arm64' or '$(LTLWindowsTargetPlatformMinVersionBuild)' >= '10240'">
|
||||
<PropertyGroup>
|
||||
<VCLTLTargetUniversalCRTVersion>10.0.10240.0</VCLTLTargetUniversalCRTVersion>
|
||||
<LTLWindowsTargetPlatformMinVersion>10.0.10240.0</LTLWindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
</When>
|
||||
<When Condition="'$(PlatformShortName)'=='arm' or '$(VCLTLTargetUniversalCRTBuildVersion)' >= '9200'">
|
||||
<When Condition="'$(PlatformShortName)'=='arm' or '$(LTLWindowsTargetPlatformMinVersionBuild)' >= '9200'">
|
||||
<PropertyGroup>
|
||||
<VCLTLTargetUniversalCRTVersion>6.2.9200.0</VCLTLTargetUniversalCRTVersion>
|
||||
<LTLWindowsTargetPlatformMinVersion>6.2.9200.0</LTLWindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
</When>
|
||||
<Otherwise>
|
||||
<!--其他情况,统一为6.0.6000.0-->
|
||||
<PropertyGroup>
|
||||
<VCLTLTargetUniversalCRTVersion>6.0.6000.0</VCLTLTargetUniversalCRTVersion>
|
||||
<LTLWindowsTargetPlatformMinVersion>6.0.6000.0</LTLWindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
</Otherwise>
|
||||
</Choose>
|
||||
@@ -74,7 +74,7 @@
|
||||
<VCLTLSupportPlatformToolset Condition="('$(VCLTLSupportPlatformToolsetWinXP)'=='true') Or ('$(VCLTLSupportPlatformToolsetNormal)'=='true')">true</VCLTLSupportPlatformToolset>
|
||||
|
||||
<!--VC-LTL仅支持x86、x64、arm、arm64-->
|
||||
<VCLTLSupportPlatform Condition="('$(PlatformShortName)'=='x86') Or ('$(PlatformShortName)'=='x64') Or ('$(PlatformShortName)'=='arm') Or ('$(PlatformShortName)'=='arm64')">true</VCLTLSupportPlatform>
|
||||
<VCLTLSupportPlatform Condition="('$(Platform)'=='Win32') Or ('$(Platform)'=='x64') Or ('$(Platform)'=='arm') Or ('$(Platform)'=='arm64')">true</VCLTLSupportPlatform>
|
||||
|
||||
<!--检测是否是Debug编译-->
|
||||
<VCLTLUseDebugLibraries Condition="('$(UseDebugLibraries)'=='true') Or ('$(Configuration)'=='Debug')">true</VCLTLUseDebugLibraries>
|
||||
@@ -88,28 +88,34 @@
|
||||
<LTL_Mode Condition=" '$(DisableAdvancedSupport)'!='true' ">Advanced</LTL_Mode>
|
||||
|
||||
<SupportLTL Condition="('$(SupportLTL)'!='false') And (('$(DriverTargetPlatform)'=='Universal') Or ('$(VCLTLSupportPlatformToolset)' != 'true') Or ('$(VCLTLUseDebugLibraries)'=='true'))">false</SupportLTL>
|
||||
<SupportLTL Condition="('$(SupportLTL)'=='') And ('$(VCLTLSupportPlatform)'=='true')">ucrt</SupportLTL>
|
||||
<SupportLTL Condition="('$(SupportLTL)'=='') And ('$(VCLTLSupportPlatform)'=='true')">true</SupportLTL>
|
||||
|
||||
<SupportWinXP Condition=" ('$(SupportWinXP)'=='') And ('$(VCLTLSupportPlatformToolsetWinXP)'=='true')">true</SupportWinXP>
|
||||
|
||||
<!--arm、arm64必定不用支持XP-->
|
||||
<SupportWinXP Condition=" ('$(PlatformShortName)'=='arm') Or ('$(PlatformShortName)'=='arm64')">false</SupportWinXP>
|
||||
<SupportWinXP Condition=" ('$(Platform)'=='arm') Or ('$(Platform)'=='arm64')">false</SupportWinXP>
|
||||
|
||||
<VCLTLPlatformName Condition=" '$(SupportWinXP)'=='true' ">WinXP</VCLTLPlatformName>
|
||||
<VCLTLPlatformName Condition=" '$(SupportWinXP)'!='true' ">Vista</VCLTLPlatformName>
|
||||
|
||||
<VC_LTL_Library>$(VC_LTL_Root)TargetPlatform\$(VCLTLTargetUniversalCRTVersion)\lib\$(Platform);$(IntDir)VC-LTL5.tmp\$(VCLTLTargetUniversalCRTVersion)\$(Platform)</VC_LTL_Library>
|
||||
<VC_LTL_Include>$(VC_LTL_Root)TargetPlatform\header;$(VC_LTL_Root)TargetPlatform\$(LTLWindowsTargetPlatformMinVersion)\header</VC_LTL_Include>
|
||||
<VC_LTL_Library>$(VC_LTL_Root)TargetPlatform\$(LTLWindowsTargetPlatformMinVersion)\lib\$(Platform);$(IntDir)VC-LTL5.tmp\$(LTLWindowsTargetPlatformMinVersion)\$(Platform)</VC_LTL_Library>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(SupportLTL)'=='true' or '$(SupportLTL)'=='ucrt'">
|
||||
<IncludePath>$(VC_LTL_Include);$(IncludePath)</IncludePath>
|
||||
<LibraryPath>$(VC_LTL_Library);$(LibraryPath)</LibraryPath>
|
||||
|
||||
<!--可选,仅仅是为了增强对某些奇葩工程的兼容性。-->
|
||||
<VC_IncludePath Condition=" '$(VC_IncludePath)'!='' ">$(VC_LTL_Include);$(VC_IncludePath)</VC_IncludePath>
|
||||
<!--VS2019 16.10新增,VS会优先使用此路径-->
|
||||
<ExternalIncludePath>$(VC_LTL_Include);$(ExternalIncludePath)</ExternalIncludePath>
|
||||
<VC_LibraryPath_x86 Condition=" '$(VC_LibraryPath_x86)'!='' ">$(VC_LTL_Library);$(VC_LibraryPath_x86)</VC_LibraryPath_x86>
|
||||
<VC_LibraryPath_x64 Condition=" '$(VC_LibraryPath_x64)'!='' ">$(VC_LTL_Library);$(VC_LibraryPath_x64)</VC_LibraryPath_x64>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition=" '$(SupportLTL)'=='ucrt' or '$(SupportLTL)'=='true'">
|
||||
<ClCompile>
|
||||
<!--其实这些宏都不是必须的 vcruntime.h 中会自动加入这些-->
|
||||
<PreprocessorDefinitions>_Build_By_LTL=1;_LTL_Core_Version=$(LTL_CoreVersion);%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(SupportWinXP)'=='true'">_ATL_XP_TARGETING=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<!--当兼容XP时,对于非 exe 的需要禁用线程安全初始化。避免XP中在DllMain中使用TLS而崩溃-->
|
||||
<AdditionalOptions Condition="'$(SupportWinXP)'=='true' and '$(ConfigurationType)'!='Application' ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
|
||||
@@ -123,8 +129,8 @@
|
||||
<src_vc_vccorlib_path Condition="'$(src_vc_vccorlib_path)' == '' and '$(VCToolsInstallDir)' != ''">$(VCToolsInstallDir)lib\$(PlatformShortName)\vccorlib.lib</src_vc_vccorlib_path>
|
||||
<src_vc_vccorlib_path Condition="'$(src_vc_vccorlib_path)' == '' and '$(VCInstallDir)' != '' and '$(Platform)' == 'Win32'">$(VCInstallDir)lib\vccorlib.lib</src_vc_vccorlib_path>
|
||||
<src_vc_vccorlib_path Condition="'$(src_vc_vccorlib_path)' == '' and '$(VCInstallDir)' != ''">$(VCInstallDir)lib\$(PlatformShortName)\vccorlib.lib</src_vc_vccorlib_path>
|
||||
<patch_vc_vccorlib_path>$(VC_LTL_Root)TargetPlatform\$(VCLTLTargetUniversalCRTVersion)\lib\$(Platform)\vccorlib140.pacth.lib</patch_vc_vccorlib_path>
|
||||
<dst_vc_vccorlib_path>$(IntDir)VC-LTL5.tmp\$(VCLTLTargetUniversalCRTVersion)\$(Platform)\vccorlib.lib</dst_vc_vccorlib_path>
|
||||
<patch_vc_vccorlib_path>$(VC_LTL_Root)TargetPlatform\$(LTLWindowsTargetPlatformMinVersion)\lib\$(Platform)\vccorlib140.pacth.lib</patch_vc_vccorlib_path>
|
||||
<dst_vc_vccorlib_path>$(IntDir)VC-LTL5.tmp\$(LTLWindowsTargetPlatformMinVersion)\$(Platform)\vccorlib.lib</dst_vc_vccorlib_path>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
@@ -137,21 +143,20 @@
|
||||
|
||||
<Target Name="VC_LTL_PlatformPrepareForBuild_Config" BeforeTargets="PrepareForBuild">
|
||||
<Message Text="
|
||||
***************************************************************************************************
|
||||
* *
|
||||
* * * * * * * * * * * * *
|
||||
* * * * * * * *
|
||||
* * * * * * * * * * * * *
|
||||
* * * * * * * *
|
||||
* * * * * * * * * * * * * *
|
||||
* *
|
||||
***************************************************************************************************
|
||||
###################################################################################################
|
||||
# #
|
||||
# * * * * * * * * * * * #
|
||||
# * * * * * * #
|
||||
# * * * * * * * * * * * #
|
||||
# * * * * * * #
|
||||
# * * * * * * * * * * * * #
|
||||
# #
|
||||
###################################################################################################
|
||||
|
||||
VC-LTL Path : $([MSBuild]::NormalizePath('$(MSBuildThisFileDirectory)..\'))
|
||||
VC Tools Version : $(VCLTLToolsVersion)
|
||||
Target CRT Version : $(VCLTLTargetUniversalCRTVersion)
|
||||
Platform : $(PlatformShortName)
|
||||
Using VC-LTL $(VCLTLPlatformName) $(LTL_Mode) Mode
|
||||
VC-LTL Path : $(VC_LTL_Root)
|
||||
VC Tools Version : $(VCToolsVersion)
|
||||
WindowsTargetPlatformMinVersion : $(LTLWindowsTargetPlatformMinVersion)
|
||||
Platform : $(Platform)
|
||||
" Importance="high" Condition="('$(SupportLTL)'=='true') Or ('$(SupportLTL)'=='ucrt')"/>
|
||||
<Warning Code="LTL2000" Text="$(ERROR_VC_LTL_NOT_SUPPORT_DEBUG)" Condition="'$(UseDebugLibraries)'=='true'" />
|
||||
<!--
|
||||
@@ -167,7 +172,7 @@
|
||||
<Warning Code="LTL3002" Text="$(ERROR_VC_LTL_NOT_SUPPORT_WINXP_IN_UCRT_MODE)" Condition=" ('$(SupportLTL)'=='ucrt') And ('$(SupportWinXP)'=='true')"/>
|
||||
<Warning Code="LTL3003" Text="$(ERROR_VC_LTL_NOT_SUPPORT_MITIGATION)" Condition=" ('$(SupportLTL)'=='true') And ('$(VCLTLLibDirMod)'!='$(VCLibDirMod)')"/>
|
||||
-->
|
||||
<Error Code="LTL4000" Text="$(ERROR_VC_LTL_FILE_MISSING)" Condition=" ('$(SupportLTL)'=='true' and '$(SupportLTL)'=='ucrt') And (!(Exists('$(VC_LTL_Root)ucrt\$(VCLTLTargetUniversalCRTVersion)\lib\$(Platform)')))"/>
|
||||
<Error Code="LTL4000" Text="$(ERROR_VC_LTL_FILE_MISSING)" Condition=" ('$(SupportLTL)'=='true' and '$(SupportLTL)'=='ucrt') And (!(Exists('$(VC_LTL_Root)TargetPlatform\$(LTLWindowsTargetPlatformMinVersion)\lib\$(Platform)')))"/>
|
||||
</Target>
|
||||
<Target Name="Build_vccorlib_lib" AfterTargets="BeforeLink" BeforeTargets="Link" Condition="('$(SupportLTL)'=='true' Or ('$(SupportLTL)'=='ucrt')) and '$(src_vc_vccorlib_path)'!= '' and Exists('$(src_vc_vccorlib_path)') and Exists('$(patch_vc_vccorlib_path)')"
|
||||
Inputs="$(src_vc_vccorlib_path);$(patch_vc_vccorlib_path)"
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#include <VC_LTL_Config.h>
|
||||
|
||||
int __LTL_ucrt_module_type = _LTL_ucrt_module_type_from_msvcrt;
|
||||
@@ -133,7 +133,7 @@
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>ucrt</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
@@ -142,14 +142,14 @@
|
||||
<TargetName>ucrt</TargetName>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>libucrt</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
@@ -158,14 +158,14 @@
|
||||
<TargetName>libucrt</TargetName>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>ucrt</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
@@ -173,7 +173,7 @@
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>libucrt</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
@@ -420,6 +420,9 @@
|
||||
<ClCompile Include="terminate.cpp" />
|
||||
<ClCompile Include="timeset.cpp" />
|
||||
<ClCompile Include="ucrt_IAT.cpp" />
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<ForcedIncludeFiles></ForcedIncludeFiles>
|
||||
</ClCompile>
|
||||
<ClCompile Include="wcsftime.cpp" />
|
||||
<ClCompile Include="_file.cpp" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -228,6 +228,9 @@
|
||||
<ClCompile Include="..\Sources\ucrt\misc\systime.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<Filter>源文件\ltl\objs</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="msvcrt_loadhelper.h">
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#include <VC_LTL_Config.h>
|
||||
|
||||
int __LTL_vccorlib_module_type = _LTL_vccorlib_module_type_form_wincorlib;
|
||||
@@ -98,13 +98,13 @@
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>vccorlib140.pacth</TargetName>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|ARM'">
|
||||
<TargetName>vccorlib140.pacth</TargetName>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
@@ -114,13 +114,13 @@
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>vccorlib140.pacth</TargetName>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|ARM64'">
|
||||
<TargetName>vccorlib140.pacth</TargetName>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(ProjectDir);$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
@@ -268,6 +268,10 @@
|
||||
<ClCompile Include="vccorlib.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Platform)'!='Win32'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<ForcedIncludeFiles></ForcedIncludeFiles>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
@@ -278,7 +282,6 @@
|
||||
<MakeDir Directories="$(IntDir)objs\weak" />
|
||||
<Exec Command="%22$(SolutionDir)Tools\LibMaker.exe%22 CreateWeaks /MACHINE:$(PlatformShortName) /def:%22$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vccorlib.wincorlib.weak.def%22 /out:%22$(IntDir)objs\weak%22" Condition="Exists('$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vccorlib.wincorlib.weak.def')" />
|
||||
<Exec Command="lib %22$(IntDir)vccorlib.wincorlib.lib%22 %22$(IntDir)objs\weak\*%22" Condition="Exists('$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vccorlib.wincorlib.weak.def')" />
|
||||
|
||||
<Copy Condition="'@(Obj)' ==''" SourceFiles="$(IntDir)vccorlib.wincorlib.lib" DestinationFiles="$(OutDir)$(TargetName)$(TargetExt)"/>
|
||||
<Copy Condition="'@(Obj)' ==''" SourceFiles="$(IntDir)vccorlib.wincorlib.lib" DestinationFiles="$(OutDir)$(TargetName)$(TargetExt)" />
|
||||
</Target>
|
||||
</Project>
|
||||
@@ -44,5 +44,8 @@
|
||||
<ClCompile Include="vccorlib.cpp">
|
||||
<Filter>源文件\x86</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,3 @@
|
||||
#include <VC_LTL_Config.h>
|
||||
|
||||
int __LTL_vcruntime_module_type = _LTL_vcruntime_module_type_from_msvcrt;
|
||||
@@ -133,14 +133,14 @@
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|ARM'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
@@ -149,14 +149,14 @@
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|ARM'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
@@ -165,7 +165,7 @@
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|x64'">
|
||||
@@ -173,7 +173,7 @@
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\msvcrt\include\$(WindowsTargetPlatformVersion)\ucrt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt;$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\ucrt;$(SolutionDir)Sources\ucrt\inc;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<AllProjectIncludesArePublic>true</AllProjectIncludesArePublic>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Static|Win32'">
|
||||
@@ -387,6 +387,9 @@
|
||||
<ExcludedFromBuild Condition="'$(Platform)' != 'Win32'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="vcruntime_IAT.cpp" />
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<ForcedIncludeFiles></ForcedIncludeFiles>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
@@ -408,7 +411,7 @@
|
||||
<Target Name="Build_vcruntime_msvcrt_base" AfterTargets="_ClCompile" Inputs="$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vcruntime.msvcrt.def;$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vcruntime.msvcrt.weak.def" Outputs="$(IntDir)vcruntime.msvcrt.lib">
|
||||
<Exec Command="lib /def:%22$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vcruntime.msvcrt.def%22 /out:%22$(IntDir)vcruntime.msvcrt.lib%22 /MACHINE:$(PlatformShortName)" />
|
||||
<!--复制lib属性,Win32下面 __seh_longjmp_unwind@4 这类接口需要标记导出类型-->
|
||||
<Exec Command="%22$(SolutionDir)Tools\LibMaker.exe%22 CopyLibType %22$(IntDir)vcruntime.msvcrt.lib%22 %22$(VCToolsInstallDir)lib\$(PlatformShortName)\vcruntime.lib%22"/>
|
||||
<Exec Command="%22$(SolutionDir)Tools\LibMaker.exe%22 CopyLibType %22$(IntDir)vcruntime.msvcrt.lib%22 %22$(VCToolsInstallDir)lib\$(PlatformShortName)\vcruntime.lib%22" />
|
||||
<RemoveDir Directories="$(IntDir)objs\weak" />
|
||||
<MakeDir Directories="$(IntDir)objs\weak" />
|
||||
<Exec Command="%22$(SolutionDir)Tools\LibMaker.exe%22 CreateWeaks /MACHINE:$(PlatformShortName) /def:%22$(SolutionDir)Tools\$(WindowsTargetPlatformMinVersion)\$(Platform)\vcruntime.msvcrt.weak.def%22 /out:%22$(IntDir)objs\weak%22" />
|
||||
|
||||
@@ -83,5 +83,8 @@
|
||||
<ClCompile Include="vcruntime_IAT.cpp">
|
||||
<Filter>源文件\ltl</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<Filter>源文件\ltl</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,4 @@
|
||||
#include <VC_LTL_Config.h>
|
||||
|
||||
|
||||
int __LTL_vcruntime_module_type = _LTL_vcruntime_module_type_from_ucrtbase;
|
||||
@@ -179,13 +179,13 @@
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|ARM'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|Win32'">
|
||||
@@ -193,13 +193,13 @@
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|ARM'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|x64'">
|
||||
@@ -207,28 +207,28 @@
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Static|ARM64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>libvcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Dynamic|ARM64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\lib\$(Platform)\</OutDir>
|
||||
<TargetName>vcruntime</TargetName>
|
||||
<IntDir>$(Platform)\$(Configuration)\$(WindowsTargetPlatformMinVersion)\</IntDir>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(IncludePath)</IncludePath>
|
||||
<IncludePath>$(SolutionDir)Sources\crt\vcruntime;$(SolutionDir)Sources\crt;$(SolutionDir)TargetPlatform\header;$(SolutionDir)TargetPlatform\$(WindowsTargetPlatformMinVersion)\header;$(IncludePath)</IncludePath>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Static|Win32'">
|
||||
<ClCompile>
|
||||
@@ -452,6 +452,9 @@
|
||||
<ClCompile Include="..\Sources\crt\vcruntime\winapi_thunks.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Platform)' != 'Win32'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<ForcedIncludeFiles></ForcedIncludeFiles>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
|
||||
@@ -56,5 +56,8 @@
|
||||
<ClCompile Include="..\Sources\crt\vcruntime\chandler_noexcept.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="VC_LTL_Config.c">
|
||||
<Filter>源文件\ltl</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
Reference in New Issue
Block a user