diff options
-rw-r--r-- | etc/taskcluster/decision_task.py | 45 | ||||
-rw-r--r-- | python/servo/build_commands.py | 78 | ||||
-rw-r--r-- | python/servo/command_base.py | 48 | ||||
-rw-r--r-- | python/servo/package_commands.py | 48 | ||||
-rw-r--r-- | support/hololens/ServoApp.sln | 16 | ||||
-rw-r--r-- | support/hololens/ServoApp/ServoApp.vcxproj | 33 | ||||
-rw-r--r-- | support/hololens/package.msbuild | 14 |
7 files changed, 157 insertions, 125 deletions
diff --git a/etc/taskcluster/decision_task.py b/etc/taskcluster/decision_task.py index 507dd95eb0a..4c9129e12eb 100644 --- a/etc/taskcluster/decision_task.py +++ b/etc/taskcluster/decision_task.py @@ -92,6 +92,7 @@ def main(task_for): macos_nightly() update_wpt() magicleap_nightly() + uwp_nightly() # These are disabled in a "real" decision task, @@ -373,11 +374,29 @@ def android_x86_wpt(): ) +def appx_artifact(debug, platforms): + return '/'.join([ + 'repo', + 'support', + 'hololens', + 'AppPackages', + 'ServoApp', + 'ServoApp_1.0.0.0_%sTest' % 'Debug_' if debug else '', + 'ServoApp_1.0.0.0_%s%s.appxbundle' % ( + '_'.join(platforms), '_Debug' if debug else '' + ), + ]) + + def windows_arm64(): return ( windows_build_task("UWP dev build", arch="arm64", package=False) .with_treeherder("Windows arm64") - .with_script("python mach build --dev --uwp --win-arm64") + .with_script( + "python mach build --dev --uwp --win-arm64", + "python mach package --dev --target aarch64-pc-windows-msvc --uwp=arm64", + ) + .with_artifacts(appx_artifact(debug=True, platforms=['arm64'])) .find_or_create("build.windows_uwp_arm64_dev." + CONFIG.task_id()) ) @@ -386,11 +405,33 @@ def windows_uwp_x64(): return ( windows_build_task("UWP dev build", package=False) .with_treeherder("Windows x64") - .with_script("mach build --dev --uwp") + .with_script( + "mach build --dev --uwp", + "mach package --dev --uwp=x64", + ) + .with_artifacts(appx_artifact(debug=True, platforms=['x64'])) .find_or_create("build.windows_uwp_x64_dev." + CONFIG.task_id()) ) +def uwp_nightly(): + return ( + windows_build_task("Nightly UWP build and upload", package=False) + .with_treeherder("Windows x64", "UWP Nightly") + .with_features("taskclusterProxy") + .with_scopes("secrets:get:project/servo/s3-upload-credentials") + .with_script( + "mach build --release --uwp", + "python mach build --release --uwp --win-arm64", + "mach package --release --uwp=x64 --uwp=arm64", + "mach upload-nightly uwp --secret-from-taskcluster", + ) + .with_artifacts(appx_artifact(debug=False, platforms=['x64', 'arm64'])) + .with_max_run_time_minutes(3 * 60) + .find_or_create("build.windows_uwp_nightlies." + CONFIG.task_id()) + ) + + def windows_unit(): return ( windows_build_task("Dev build + unit tests") diff --git a/python/servo/build_commands.py b/python/servo/build_commands.py index 5c5cacdc48f..941a1b6fd97 100644 --- a/python/servo/build_commands.py +++ b/python/servo/build_commands.py @@ -249,15 +249,7 @@ class MachCommands(CommandBase): env["CXXFLAGS"] += "-mmacosx-version-min=10.10" if 'windows' in host: - vsinstalldir = os.environ.get('VSINSTALLDIR') - vcinstalldir = None - vs_version = os.environ.get('VisualStudioVersion') - if vsinstalldir and vs_version: - msbuild_version = get_msbuild_version(vs_version) - else: - (vsinstalldir, vs_version, msbuild_version) = find_highest_msvc_version() - msbuildinstalldir = os.path.join(vsinstalldir, "MSBuild", - msbuild_version, "Bin") + vs_dirs = self.vs_dirs() if host != target_triple and 'windows' in target_triple: if os.environ.get('VisualStudioVersion'): @@ -265,9 +257,9 @@ class MachCommands(CommandBase): "Please run `python mach build [arguments]` to bypass automatic " "Visual Studio shell.") sys.exit(1) - vcinstalldir = os.environ.get("VCINSTALLDIR", "") or os.path.join(vsinstalldir, "VC") + vcinstalldir = vs_dirs['vcdir'] if not os.path.exists(vcinstalldir): - print("Can't find Visual C++ %s installation at %s." % (vs_version, vcinstalldir)) + print("Can't find Visual C++ %s installation at %s." % (vs_dirs['vs_version'], vcinstalldir)) sys.exit(1) env['PKG_CONFIG_ALLOW_CROSS'] = "1" @@ -695,13 +687,9 @@ class MachCommands(CommandBase): # UWP app packaging already bundles all required DLLs for us. print("Packaging MSVC DLLs") - if not package_msvc_dlls(servo_exe_dir, target_triple, vcinstalldir, vs_version): + if not package_msvc_dlls(servo_exe_dir, target_triple, vs_dirs['vcdir'], vs_dirs['vs_version']): status = 1 - # UWP build hololens - if uwp and status == 0: - build_uwp_hololens(target_triple, dev, msbuildinstalldir) - elif sys.platform == "darwin": # On the Mac, set a lovely icon. This makes it easier to pick out the Servo binary in tools # like Instruments.app. @@ -907,33 +895,6 @@ def package_gstreamer_dlls(env, servo_exe_dir, target, uwp): return not missing -def build_uwp_hololens(target, dev, msbuild_dir): - # determine Visual studio Build Configuration (Debug/Release) and - # Build Platform (x64 vs arm64) - vs_platforms = { - "x86_64": "x64", - "i686": "x86", - "aarch64": "arm64", - } - target_arch = target.split('-')[0] - vs_platform = vs_platforms[target_arch] - - if dev: - Configuration = "Debug" - else: - Configuration = "Release" - - # execute msbuild - # Note: /m implies to use as many CPU cores as possible while building. - # msbuild /m /p:project=ServoApp .\support\hololens\servoapp.sln /p:SolutionDir=.\support\hololens - # /p:Configuration="Debug" /p:Platform="x64" /property:AppxBundle=Always;AppxBundlePlatforms="x64" - check_call([msbuild_dir + "\msbuild.exe", "/m", "/p:project=ServoApp", ".\support\hololens\ServoApp.sln", - "/p:SolutionDir=.\support\hololens", - "/p:Configuration=" + Configuration, - "/p:Platform=" + vs_platform, - "/p:AppxBundle=Always;AppxBundlePlatforms=" + vs_platform]) - - def package_msvc_dlls(servo_exe_dir, target, vcinstalldir, vs_version): # copy some MSVC DLLs to servo.exe dir msvc_redist_dir = None @@ -1002,34 +963,3 @@ def package_msvc_dlls(servo_exe_dir, target, vcinstalldir, vs_version): for msvc_dll in missing: print("DLL file `{}` not found!".format(msvc_dll)) return not missing - - -def get_msbuild_version(vs_version): - if vs_version in ("15.0", "14.0"): - msbuild_version = vs_version - else: - msbuild_version = "Current" - return msbuild_version - - -def find_highest_msvc_version(): - editions = ["Enterprise", "Professional", "Community", "BuildTools"] - prog_files = os.environ.get("ProgramFiles(x86)") - base_vs_path = os.path.join(prog_files, "Microsoft Visual Studio") - - vs_versions = ["2019", "2017"] - versions = { - ("2019", "vs"): "16.0", - ("2017", "vs"): "15.0", - } - - for version in vs_versions: - for edition in editions: - vs_version = versions[version, "vs"] - msbuild_version = get_msbuild_version(vs_version) - - vsinstalldir = os.path.join(base_vs_path, version, edition) - if os.path.exists(vsinstalldir): - return (vsinstalldir, vs_version, msbuild_version) - print("Can't find MSBuild.exe installation under %s." % base_vs_path) - sys.exit(1) diff --git a/python/servo/command_base.py b/python/servo/command_base.py index 2a370d757da..ee12594ee83 100644 --- a/python/servo/command_base.py +++ b/python/servo/command_base.py @@ -597,6 +597,23 @@ install them, let us know by filing a bug!") def msvc_package_dir(self, package): return path.join(self.context.sharedir, "msvc-dependencies", package, msvc_deps[package]) + def vs_dirs(self): + assert 'windows' in host_triple() + vsinstalldir = os.environ.get('VSINSTALLDIR') + vs_version = os.environ.get('VisualStudioVersion') + if vsinstalldir and vs_version: + msbuild_version = get_msbuild_version(vs_version) + else: + (vsinstalldir, vs_version, msbuild_version) = find_highest_msvc_version() + msbuildinstalldir = os.path.join(vsinstalldir, "MSBuild", msbuild_version, "Bin") + vcinstalldir = os.environ.get("VCINSTALLDIR", "") or os.path.join(vsinstalldir, "VC") + return { + 'msbuild': msbuildinstalldir, + 'vsdir': vsinstalldir, + 'vs_version': vs_version, + 'vcdir': vcinstalldir, + } + def build_env(self, hosts_file_path=None, target=None, is_build=False, test_unit=False): """Return an extended environment dictionary.""" env = os.environ.copy() @@ -978,3 +995,34 @@ install them, let us know by filing a bug!") sys.exit(error) else: print("Clobber not needed.") + + +def find_highest_msvc_version(): + editions = ["Enterprise", "Professional", "Community", "BuildTools"] + prog_files = os.environ.get("ProgramFiles(x86)") + base_vs_path = os.path.join(prog_files, "Microsoft Visual Studio") + + vs_versions = ["2019", "2017"] + versions = { + ("2019", "vs"): "16.0", + ("2017", "vs"): "15.0", + } + + for version in vs_versions: + for edition in editions: + vs_version = versions[version, "vs"] + msbuild_version = get_msbuild_version(vs_version) + + vsinstalldir = os.path.join(base_vs_path, version, edition) + if os.path.exists(vsinstalldir): + return (vsinstalldir, vs_version, msbuild_version) + print("Can't find MSBuild.exe installation under %s." % base_vs_path) + sys.exit(1) + + +def get_msbuild_version(vs_version): + if vs_version in ("15.0", "14.0"): + msbuild_version = vs_version + else: + msbuild_version = "Current" + return msbuild_version diff --git a/python/servo/package_commands.py b/python/servo/package_commands.py index 3e14876e29a..d8dbc49b117 100644 --- a/python/servo/package_commands.py +++ b/python/servo/package_commands.py @@ -67,6 +67,9 @@ PACKAGES = { r'target\release\msi\Servo.exe', r'target\release\msi\Servo.zip', ], + 'uwp': [ + r'support\hololens\AppPackages\ServoApp\ServoApp_1.0.0.0_Test\ServoApp_1.0.0.0_x64_arm64.appxbundle', + ], } @@ -202,8 +205,12 @@ class PackageCommands(CommandBase): default=None, action='store_true', help='Create a local Maven repository') + @CommandArgument('--uwp', + default=None, + action='append', + help='Create an APPX package') def package(self, release=False, dev=False, android=None, magicleap=None, debug=False, - debugger=None, target=None, flavor=None, maven=False): + debugger=None, target=None, flavor=None, maven=False, uwp=None): if android is None: android = self.config["build"]["android"] if target and android: @@ -219,10 +226,16 @@ class PackageCommands(CommandBase): if magicleap: target = "aarch64-linux-android" env = self.build_env(target=target) - binary_path = self.get_binary_path(release, dev, target=target, android=android, magicleap=magicleap) + binary_path = self.get_binary_path( + release, dev, target=target, android=android, magicleap=magicleap, + simpleservo=uwp is not None + ) dir_to_root = self.get_top_dir() target_dir = path.dirname(binary_path) - if magicleap: + if uwp: + vs_info = self.vs_dirs() + build_uwp(uwp, dev, vs_info['msbuild']) + elif magicleap: if platform.system() not in ["Darwin"]: raise Exception("Magic Leap builds are only supported on macOS.") if not env.get("MAGICLEAP_SDK"): @@ -724,3 +737,32 @@ class PackageCommands(CommandBase): update_brew(packages[0], timestamp) return 0 + + +def build_uwp(platforms, dev, msbuild_dir): + if any(map(lambda p: p not in ['x64', 'x86', 'arm64'], platforms)): + raise Exception("Unsupported appx platforms: " + str(platforms)) + if dev and len(platforms) > 1: + raise Exception("Debug package with multiple architectures is unsupported") + + if dev: + Configuration = "Debug" + else: + Configuration = "Release" + + msbuild = path.join(msbuild_dir, "msbuild.exe") + build_file_template = path.join('support', 'hololens', 'package.msbuild') + with open(build_file_template) as f: + template_contents = f.read() + build_file = tempfile.NamedTemporaryFile(delete=False) + build_file.write( + template_contents + .replace("%%BUILD_PLATFORMS%%", ';'.join(platforms)) + .replace("%%PACKAGE_PLATFORMS%%", '|'.join(platforms)) + .replace("%%CONFIGURATION%%", Configuration) + .replace("%%SOLUTION%%", path.join(os.getcwd(), 'support', 'hololens', 'ServoApp.sln')) + ) + build_file.close() + # Generate an appxbundle. + subprocess.check_call([msbuild, "/m", build_file.name]) + os.unlink(build_file.name) diff --git a/support/hololens/ServoApp.sln b/support/hololens/ServoApp.sln index 8a585d5bb7d..0706a4d316d 100644 --- a/support/hololens/ServoApp.sln +++ b/support/hololens/ServoApp.sln @@ -7,40 +7,24 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ServoApp", "ServoApp\ServoA EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|ARM = Debug|ARM Debug|ARM64 = Debug|ARM64 Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|ARM = Release|ARM Release|ARM64 = Release|ARM64 Release|x64 = Release|x64 - Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM.ActiveCfg = Debug|ARM - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM.Build.0 = Debug|ARM - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM.Deploy.0 = Debug|ARM {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM64.ActiveCfg = Debug|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM64.Build.0 = Debug|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|ARM64.Deploy.0 = Debug|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x64.ActiveCfg = Debug|x64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x64.Build.0 = Debug|x64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x64.Deploy.0 = Debug|x64 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x86.ActiveCfg = Debug|Win32 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x86.Build.0 = Debug|Win32 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Debug|x86.Deploy.0 = Debug|Win32 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM.ActiveCfg = Release|ARM - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM.Build.0 = Release|ARM - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM.Deploy.0 = Release|ARM {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM64.ActiveCfg = Release|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM64.Build.0 = Release|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|ARM64.Deploy.0 = Release|ARM64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x64.ActiveCfg = Release|x64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x64.Build.0 = Release|x64 {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x64.Deploy.0 = Release|x64 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x86.ActiveCfg = Release|Win32 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x86.Build.0 = Release|Win32 - {0EAB7D8B-97FD-4C92-8BB2-D5691B3D5ABD}.Release|x86.Deploy.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/support/hololens/ServoApp/ServoApp.vcxproj b/support/hololens/ServoApp/ServoApp.vcxproj index b72e48c08ef..6b1ebf0e614 100644 --- a/support/hololens/ServoApp/ServoApp.vcxproj +++ b/support/hololens/ServoApp/ServoApp.vcxproj @@ -18,34 +18,18 @@ </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|ARM"> - <Configuration>Debug</Configuration> - <Platform>ARM</Platform> - </ProjectConfiguration> <ProjectConfiguration Include="Debug|ARM64"> <Configuration>Debug</Configuration> <Platform>ARM64</Platform> </ProjectConfiguration> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> <ProjectConfiguration Include="Debug|x64"> <Configuration>Debug</Configuration> <Platform>x64</Platform> </ProjectConfiguration> - <ProjectConfiguration Include="Release|ARM"> - <Configuration>Release</Configuration> - <Platform>ARM</Platform> - </ProjectConfiguration> <ProjectConfiguration Include="Release|ARM64"> <Configuration>Release</Configuration> <Platform>ARM64</Platform> </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> <ProjectConfiguration Include="Release|x64"> <Configuration>Release</Configuration> <Platform>x64</Platform> @@ -103,19 +87,14 @@ <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'"> <ClCompile> <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\debug\</AdditionalIncludeDirectories> <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\aarch64-pc-windows-msvc\debug\</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\debug\</AdditionalIncludeDirectories> <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\debug\</AdditionalIncludeDirectories> </ClCompile> <Link> - <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir)\..\..\..\target\aarch64-pc-windows-msvc\debug\</AdditionalLibraryDirectories> </Link> - <Link> - <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> - </Link> + <Link /> <Link> <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)\..\..\..\target\debug\</AdditionalLibraryDirectories> @@ -124,19 +103,14 @@ <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'"> <ClCompile> <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\release</AdditionalIncludeDirectories> <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\aarch64-pc-windows-msvc\release</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\release</AdditionalIncludeDirectories> <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories);$(ProjectDir)\..\..\..\target\release</AdditionalIncludeDirectories> </ClCompile> <Link> - <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir)\..\..\..\target\aarch64-pc-windows-msvc\release\</AdditionalLibraryDirectories> </Link> - <Link> - <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> - </Link> + <Link /> <Link> <AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WindowsApp.lib;%(AdditionalDependencies);simpleservo.dll.lib</AdditionalDependencies> <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\..\..\..\target\release\</AdditionalLibraryDirectories> @@ -317,7 +291,6 @@ <None Include="..\..\..\target\aarch64-pc-windows-msvc\debug\intl-8.dll"> <DeploymentContent Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</DeploymentContent> </None> - <None Include="..\..\..\target\aarch64-pc-windows-msvc\debug\libcrypto.dll"> <DeploymentContent Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</DeploymentContent> </None> @@ -976,4 +949,4 @@ <Error Condition="!Exists('..\packages\OpenXR.Loader.1.0.2\build\native\OpenXR.Loader.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\OpenXR.Loader.1.0.2\build\native\OpenXR.Loader.props'))" /> <Error Condition="!Exists('..\packages\OpenXR.Loader.1.0.2\build\native\OpenXR.Loader.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\OpenXR.Loader.1.0.2\build\native\OpenXR.Loader.targets'))" /> </Target> -</Project> +</Project>
\ No newline at end of file diff --git a/support/hololens/package.msbuild b/support/hololens/package.msbuild new file mode 100644 index 00000000000..19691af98a5 --- /dev/null +++ b/support/hololens/package.msbuild @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="FullRebuild"> + <Target Name="FullRebuild"> + <ItemGroup> + <Configurations Include="%%CONFIGURATION%%"/> + <Platforms Include="%%BUILD_PLATFORMS%%"/> + <ConfigAndPlatform Include="@(Configurations)"> + <Platform>%(Platforms.Identity)</Platform> + </ConfigAndPlatform> + </ItemGroup> + <MSBuild Projects="%%SOLUTION%%" Targets="Build" + Properties="Configuration=%(ConfigAndPlatform.Identity);Platform=%(ConfigAndPlatform.Platform);AppxBundle=Always;AppxBundlePlatforms=%%PACKAGE_PLATFORMS%%;UseSubFolderForOutputDirDuringMultiPlatformBuild=false"/> + </Target> +</Project>
\ No newline at end of file |