|
|
- // Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
-
- using UnrealBuildTool;
- using System.IO;
-
- public class ZipUtility : ModuleRules
- {
- private string ThirdPartyPath
- {
- get { return Path.GetFullPath(Path.Combine(ModuleDirectory, "../../ThirdParty/")); }
- }
- private string SevenZppPath
- {
- get { return Path.GetFullPath(Path.Combine(ThirdPartyPath, "7zpp")); }
- }
-
- private string ATLPath
- {
- get { return "C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.13.26128/atlmfc"; }
- }
-
- public ZipUtility(ReadOnlyTargetRules Target) : base(Target)
- {
- bEnableExceptions = true;
- PublicIncludePaths.AddRange(
- new string[] {
- "ZipUtility/Public"
- // ... add public include paths required here ...
- }
- );
-
- PrivateIncludePaths.AddRange(
- new string[] {
- "ZipUtility/Private",
- Path.Combine(SevenZppPath, "Include"),
- Path.Combine(ATLPath, "include"),
- // ... add other private include paths required here ...
- }
- );
-
-
- PublicDependencyModuleNames.AddRange(
- new string[]
- {
- "Core",
- "WindowsFileUtility"
- // ... add other public dependencies that you statically link with here ...
- }
- );
-
-
- PrivateDependencyModuleNames.AddRange(
- new string[]
- {
- "CoreUObject",
- "Engine",
- "Slate",
- "SlateCore",
- "Projects"
- // ... add private dependencies that you statically link with here ...
- }
- );
-
-
- DynamicallyLoadedModuleNames.AddRange(
- new string[]
- {
- // ... add any modules that your module loads dynamically here ...
- }
- );
-
- LoadLib(Target);
- }
- public bool LoadLib(ReadOnlyTargetRules Target)
- {
- bool isLibrarySupported = false;
-
- if ((Target.Platform == UnrealTargetPlatform.Win64) || (Target.Platform == UnrealTargetPlatform.Win32))
- {
- isLibrarySupported = true;
-
- string PlatformSubPath = (Target.Platform == UnrealTargetPlatform.Win64) ? "Win64" : "Win32";
- string LibrariesPath = Path.Combine(SevenZppPath, "Lib");
- string DLLPath = Path.Combine(SevenZppPath, "dll");
-
- PublicAdditionalLibraries.Add(Path.Combine(LibrariesPath, PlatformSubPath, "atls.lib"));
- PublicAdditionalLibraries.Add(Path.Combine(LibrariesPath, PlatformSubPath, "7zpp_u.lib"));
- PublicLibraryPaths.Add(Path.Combine(LibrariesPath, PlatformSubPath));
-
- PublicDelayLoadDLLs.Add("7z.dll");
- RuntimeDependencies.Add(new RuntimeDependency(Path.Combine(DLLPath, PlatformSubPath, "7z.dll")));
- }
-
- if (isLibrarySupported)
- {
- // Include path
- //PublicIncludePaths.Add(Path.Combine(SevenZppPath, "Include"));
- }
-
- return isLibrarySupported;
- }
- }
|