mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-05-09 14:04:57 +00:00
Make compilation process compatible to linux on gcc
This commit is contained in:
parent
1cd06668e0
commit
b4d8e9c17b
@ -55,6 +55,15 @@ TargetDirectoryBin = "%{wks.location}/bin/%{cfg.buildcfg}_%{cfg.platform}"
|
||||
TargetDirectoryLib = "%{wks.location}/lib/%{cfg.buildcfg}_%{cfg.platform}"
|
||||
TargetDirectoryTest = "%{wks.location}/lib/%{cfg.buildcfg}_%{cfg.platform}/tests"
|
||||
|
||||
-- Platform functions
|
||||
function ExecutableByOs(name)
|
||||
if os.host() == "windows" then
|
||||
return name .. ".exe"
|
||||
else
|
||||
return name
|
||||
end
|
||||
end
|
||||
|
||||
-- ==================
|
||||
-- Workspace
|
||||
-- ==================
|
||||
|
145
src/ObjCommon/Image/DxgiFormat.h
Normal file
145
src/ObjCommon/Image/DxgiFormat.h
Normal file
@ -0,0 +1,145 @@
|
||||
/*
|
||||
* Copyright 2016 Józef Kucia for CodeWeavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
const unsigned int DXGI_FORMAT_DEFINED = 1;
|
||||
|
||||
typedef enum DXGI_FORMAT
|
||||
{
|
||||
DXGI_FORMAT_UNKNOWN = 0x00,
|
||||
DXGI_FORMAT_R32G32B32A32_TYPELESS = 0x01,
|
||||
DXGI_FORMAT_R32G32B32A32_FLOAT = 0x02,
|
||||
DXGI_FORMAT_R32G32B32A32_UINT = 0x03,
|
||||
DXGI_FORMAT_R32G32B32A32_SINT = 0x04,
|
||||
DXGI_FORMAT_R32G32B32_TYPELESS = 0x05,
|
||||
DXGI_FORMAT_R32G32B32_FLOAT = 0x06,
|
||||
DXGI_FORMAT_R32G32B32_UINT = 0x07,
|
||||
DXGI_FORMAT_R32G32B32_SINT = 0x08,
|
||||
DXGI_FORMAT_R16G16B16A16_TYPELESS = 0x09,
|
||||
DXGI_FORMAT_R16G16B16A16_FLOAT = 0x0a,
|
||||
DXGI_FORMAT_R16G16B16A16_UNORM = 0x0b,
|
||||
DXGI_FORMAT_R16G16B16A16_UINT = 0x0c,
|
||||
DXGI_FORMAT_R16G16B16A16_SNORM = 0x0d,
|
||||
DXGI_FORMAT_R16G16B16A16_SINT = 0x0e,
|
||||
DXGI_FORMAT_R32G32_TYPELESS = 0x0f,
|
||||
DXGI_FORMAT_R32G32_FLOAT = 0x10,
|
||||
DXGI_FORMAT_R32G32_UINT = 0x11,
|
||||
DXGI_FORMAT_R32G32_SINT = 0x12,
|
||||
DXGI_FORMAT_R32G8X24_TYPELESS = 0x13,
|
||||
DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 0x14,
|
||||
DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 0x15,
|
||||
DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 0x16,
|
||||
DXGI_FORMAT_R10G10B10A2_TYPELESS = 0x17,
|
||||
DXGI_FORMAT_R10G10B10A2_UNORM = 0x18,
|
||||
DXGI_FORMAT_R10G10B10A2_UINT = 0x19,
|
||||
DXGI_FORMAT_R11G11B10_FLOAT = 0x1a,
|
||||
DXGI_FORMAT_R8G8B8A8_TYPELESS = 0x1b,
|
||||
DXGI_FORMAT_R8G8B8A8_UNORM = 0x1c,
|
||||
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 0x1d,
|
||||
DXGI_FORMAT_R8G8B8A8_UINT = 0x1e,
|
||||
DXGI_FORMAT_R8G8B8A8_SNORM = 0x1f,
|
||||
DXGI_FORMAT_R8G8B8A8_SINT = 0x20,
|
||||
DXGI_FORMAT_R16G16_TYPELESS = 0x21,
|
||||
DXGI_FORMAT_R16G16_FLOAT = 0x22,
|
||||
DXGI_FORMAT_R16G16_UNORM = 0x23,
|
||||
DXGI_FORMAT_R16G16_UINT = 0x24,
|
||||
DXGI_FORMAT_R16G16_SNORM = 0x25,
|
||||
DXGI_FORMAT_R16G16_SINT = 0x26,
|
||||
DXGI_FORMAT_R32_TYPELESS = 0x27,
|
||||
DXGI_FORMAT_D32_FLOAT = 0x28,
|
||||
DXGI_FORMAT_R32_FLOAT = 0x29,
|
||||
DXGI_FORMAT_R32_UINT = 0x2a,
|
||||
DXGI_FORMAT_R32_SINT = 0x2b,
|
||||
DXGI_FORMAT_R24G8_TYPELESS = 0x2c,
|
||||
DXGI_FORMAT_D24_UNORM_S8_UINT = 0x2d,
|
||||
DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 0x2e,
|
||||
DXGI_FORMAT_X24_TYPELESS_G8_UINT = 0x2f,
|
||||
DXGI_FORMAT_R8G8_TYPELESS = 0x30,
|
||||
DXGI_FORMAT_R8G8_UNORM = 0x31,
|
||||
DXGI_FORMAT_R8G8_UINT = 0x32,
|
||||
DXGI_FORMAT_R8G8_SNORM = 0x33,
|
||||
DXGI_FORMAT_R8G8_SINT = 0x34,
|
||||
DXGI_FORMAT_R16_TYPELESS = 0x35,
|
||||
DXGI_FORMAT_R16_FLOAT = 0x36,
|
||||
DXGI_FORMAT_D16_UNORM = 0x37,
|
||||
DXGI_FORMAT_R16_UNORM = 0x38,
|
||||
DXGI_FORMAT_R16_UINT = 0x39,
|
||||
DXGI_FORMAT_R16_SNORM = 0x3a,
|
||||
DXGI_FORMAT_R16_SINT = 0x3b,
|
||||
DXGI_FORMAT_R8_TYPELESS = 0x3c,
|
||||
DXGI_FORMAT_R8_UNORM = 0x3d,
|
||||
DXGI_FORMAT_R8_UINT = 0x3e,
|
||||
DXGI_FORMAT_R8_SNORM = 0x3f,
|
||||
DXGI_FORMAT_R8_SINT = 0x40,
|
||||
DXGI_FORMAT_A8_UNORM = 0x41,
|
||||
DXGI_FORMAT_R1_UNORM = 0x42,
|
||||
DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 0x43,
|
||||
DXGI_FORMAT_R8G8_B8G8_UNORM = 0x44,
|
||||
DXGI_FORMAT_G8R8_G8B8_UNORM = 0x45,
|
||||
DXGI_FORMAT_BC1_TYPELESS = 0x46,
|
||||
DXGI_FORMAT_BC1_UNORM = 0x47,
|
||||
DXGI_FORMAT_BC1_UNORM_SRGB = 0x48,
|
||||
DXGI_FORMAT_BC2_TYPELESS = 0x49,
|
||||
DXGI_FORMAT_BC2_UNORM = 0x4a,
|
||||
DXGI_FORMAT_BC2_UNORM_SRGB = 0x4b,
|
||||
DXGI_FORMAT_BC3_TYPELESS = 0x4c,
|
||||
DXGI_FORMAT_BC3_UNORM = 0x4d,
|
||||
DXGI_FORMAT_BC3_UNORM_SRGB = 0x4e,
|
||||
DXGI_FORMAT_BC4_TYPELESS = 0x4f,
|
||||
DXGI_FORMAT_BC4_UNORM = 0x50,
|
||||
DXGI_FORMAT_BC4_SNORM = 0x51,
|
||||
DXGI_FORMAT_BC5_TYPELESS = 0x52,
|
||||
DXGI_FORMAT_BC5_UNORM = 0x53,
|
||||
DXGI_FORMAT_BC5_SNORM = 0x54,
|
||||
DXGI_FORMAT_B5G6R5_UNORM = 0x55,
|
||||
DXGI_FORMAT_B5G5R5A1_UNORM = 0x56,
|
||||
DXGI_FORMAT_B8G8R8A8_UNORM = 0x57,
|
||||
DXGI_FORMAT_B8G8R8X8_UNORM = 0x58,
|
||||
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 0x59,
|
||||
DXGI_FORMAT_B8G8R8A8_TYPELESS = 0x5a,
|
||||
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 0x5b,
|
||||
DXGI_FORMAT_B8G8R8X8_TYPELESS = 0x5c,
|
||||
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 0x5d,
|
||||
DXGI_FORMAT_BC6H_TYPELESS = 0x5e,
|
||||
DXGI_FORMAT_BC6H_UF16 = 0x5f,
|
||||
DXGI_FORMAT_BC6H_SF16 = 0x60,
|
||||
DXGI_FORMAT_BC7_TYPELESS = 0x61,
|
||||
DXGI_FORMAT_BC7_UNORM = 0x62,
|
||||
DXGI_FORMAT_BC7_UNORM_SRGB = 0x63,
|
||||
DXGI_FORMAT_AYUV = 0x64,
|
||||
DXGI_FORMAT_Y410 = 0x65,
|
||||
DXGI_FORMAT_Y416 = 0x66,
|
||||
DXGI_FORMAT_NV12 = 0x67,
|
||||
DXGI_FORMAT_P010 = 0x68,
|
||||
DXGI_FORMAT_P016 = 0x69,
|
||||
DXGI_FORMAT_420_OPAQUE = 0x6a,
|
||||
DXGI_FORMAT_YUY2 = 0x6b,
|
||||
DXGI_FORMAT_Y210 = 0x6c,
|
||||
DXGI_FORMAT_Y216 = 0x6d,
|
||||
DXGI_FORMAT_NV11 = 0x6e,
|
||||
DXGI_FORMAT_AI44 = 0x6f,
|
||||
DXGI_FORMAT_IA44 = 0x70,
|
||||
DXGI_FORMAT_P8 = 0x71,
|
||||
DXGI_FORMAT_A8P8 = 0x72,
|
||||
DXGI_FORMAT_B4G4R4A4_UNORM = 0x73,
|
||||
|
||||
DXGI_FORMAT_P208 = 0x82,
|
||||
DXGI_FORMAT_V208 = 0x83,
|
||||
DXGI_FORMAT_V408 = 0x84,
|
||||
|
||||
DXGI_FORMAT_FORCE_UINT = 0xffffffff,
|
||||
} DXGI_FORMAT;
|
@ -1,7 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
#include <dxgiformat.h>
|
||||
#include "DxgiFormat.h"
|
||||
|
||||
enum class ImageFormatId
|
||||
{
|
||||
|
@ -1,7 +1,7 @@
|
||||
Utils = {}
|
||||
|
||||
function Utils:include()
|
||||
if References:include("Utils") then
|
||||
if References:include(self:name()) then
|
||||
includedirs {
|
||||
path.join(ProjectFolder(), "Utils")
|
||||
}
|
||||
@ -9,8 +9,8 @@ function Utils:include()
|
||||
end
|
||||
|
||||
function Utils:link()
|
||||
if References:link("Utils") then
|
||||
links "Utils"
|
||||
if References:link(self:name()) then
|
||||
links(self:name())
|
||||
end
|
||||
end
|
||||
|
||||
@ -18,12 +18,16 @@ function Utils:use()
|
||||
|
||||
end
|
||||
|
||||
function Utils:name()
|
||||
return "Utils"
|
||||
end
|
||||
|
||||
function Utils:project()
|
||||
References:reset()
|
||||
local folder = ProjectFolder();
|
||||
|
||||
project "Utils"
|
||||
targetdir(TargetDirectoryLib)
|
||||
project(self:name())
|
||||
targetdir(TargetDirectoryLib)
|
||||
location "%{wks.location}/src/%{prj.name}"
|
||||
kind "StaticLib"
|
||||
language "C++"
|
||||
|
@ -1,5 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <utility>
|
||||
|
||||
#define STR(x) #x
|
||||
|
||||
#if defined(_MSVC_LANG)
|
||||
|
@ -1,5 +1,8 @@
|
||||
#include "MemoryManager.h"
|
||||
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
|
||||
MemoryManager::AllocationInfo::AllocationInfo(IDestructible* data, void* dataPtr)
|
||||
{
|
||||
m_data = data;
|
||||
@ -34,7 +37,7 @@ void* MemoryManager::Alloc(const size_t size)
|
||||
|
||||
char* MemoryManager::Dup(const char* str)
|
||||
{
|
||||
char* result = _strdup(str);
|
||||
char* result = strdup(str);
|
||||
m_allocations.push_back(result);
|
||||
|
||||
return result;
|
||||
@ -51,4 +54,4 @@ void MemoryManager::Delete(void* data)
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -188,19 +188,19 @@ function ZoneCode:project()
|
||||
filter "files:**.gen"
|
||||
buildmessage "Generating ZoneCode for game %{file.basename}"
|
||||
buildcommands {
|
||||
'"' .. TargetDirectoryBin .. '/ZoneCodeGenerator.exe"'
|
||||
'"' .. TargetDirectoryBin .. '/' .. ExecutableByOs('ZoneCodeGenerator') .. '"'
|
||||
.. ' -h "' .. path.join(path.getabsolute(ProjectFolder()), 'ZoneCode/Game/%{file.basename}/%{file.basename}.h') .. '"'
|
||||
.. ' -c "' .. path.join(path.getabsolute(ProjectFolder()), 'ZoneCode/Game/%{file.basename}/%{file.basename}_Commands.txt') .. '"'
|
||||
.. ' -o "%{wks.location}/src/ZoneCode/Game/%{file.basename}/XAssets"'
|
||||
.. ' -g * ZoneLoad'
|
||||
.. ' -g * ZoneWrite'
|
||||
.. ' -g * AssetStructTests'
|
||||
.. ' -g "*" ZoneLoad'
|
||||
.. ' -g "*" ZoneWrite'
|
||||
.. ' -g "*" AssetStructTests'
|
||||
}
|
||||
buildinputs {
|
||||
path.join(ProjectFolder(), "ZoneCode/Game/%{file.basename}/%{file.basename}.h"),
|
||||
path.join(ProjectFolder(), "ZoneCode/Game/%{file.basename}/%{file.basename}_Commands.txt"),
|
||||
path.join(ProjectFolder(), "ZoneCommon/Game/%{file.basename}/%{file.basename}_Assets.h"),
|
||||
TargetDirectoryBin .. "/ZoneCodeGenerator.exe"
|
||||
TargetDirectoryBin .. "/" .. ExecutableByOs('ZoneCodeGenerator')
|
||||
}
|
||||
filter {}
|
||||
|
||||
|
@ -46,6 +46,6 @@ function ZoneCodeGenerator:project()
|
||||
self:include()
|
||||
ZoneCodeGeneratorLib:include()
|
||||
|
||||
Utils:link()
|
||||
ZoneCodeGeneratorLib:link()
|
||||
Utils:link()
|
||||
end
|
||||
|
@ -40,4 +40,6 @@ function ZoneCodeGeneratorLib:project()
|
||||
}
|
||||
|
||||
self:include()
|
||||
|
||||
Utils:link()
|
||||
end
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "BaseTypeDefinition.h"
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
BaseTypeDefinition::BaseTypeDefinition(std::string name, const unsigned size)
|
||||
: DataDefinition("", std::move(name)),
|
||||
m_size(size)
|
||||
@ -57,4 +59,4 @@ const BaseTypeDefinition* const BaseTypeDefinition::ALL_BASE_TYPES[]
|
||||
UNSIGNED_LONG_LONG,
|
||||
VOID
|
||||
};
|
||||
const size_t BaseTypeDefinition::ALL_BASE_TYPES_COUNT = _countof(ALL_BASE_TYPES);
|
||||
const size_t BaseTypeDefinition::ALL_BASE_TYPES_COUNT = std::extent<decltype(ALL_BASE_TYPES)>::value;
|
@ -3,6 +3,7 @@
|
||||
#include <list>
|
||||
#include <sstream>
|
||||
#include <vector>
|
||||
#include <type_traits>
|
||||
|
||||
#include "CommandsMatcherFactory.h"
|
||||
#include "Domain/Evaluation/OperandDynamic.h"
|
||||
@ -19,7 +20,7 @@ std::unique_ptr<CommandsCommonMatchers::matcher_t> CommandsCommonMatchers::Typen
|
||||
"int",
|
||||
"long"
|
||||
};
|
||||
static_assert(_countof(BUILT_IN_TYPE_NAMES) == static_cast<int>(CommandsParserValueType::BUILT_IN_LAST) - static_cast<int>(CommandsParserValueType::BUILT_IN_FIRST) + 1);
|
||||
static_assert(std::extent<decltype(BUILT_IN_TYPE_NAMES)>::value == static_cast<int>(CommandsParserValueType::BUILT_IN_LAST) - static_cast<int>(CommandsParserValueType::BUILT_IN_FIRST) + 1);
|
||||
|
||||
const CommandsMatcherFactory create(labelSupplier);
|
||||
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "SequenceReorder.h"
|
||||
|
||||
#include <list>
|
||||
|
||||
#include "Parsing/Commands/Matcher/CommandsMatcherFactory.h"
|
||||
#include "Parsing/Commands/Matcher/CommandsCommonMatchers.h"
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "HeaderCommonMatchers.h"
|
||||
|
||||
#include <sstream>
|
||||
#include <type_traits>
|
||||
|
||||
#include "HeaderMatcherFactory.h"
|
||||
|
||||
@ -52,7 +53,7 @@ std::unique_ptr<HeaderCommonMatchers::matcher_t> HeaderCommonMatchers::Typename(
|
||||
"int",
|
||||
"long"
|
||||
};
|
||||
static_assert(_countof(BUILT_IN_TYPE_NAMES) == static_cast<int>(HeaderParserValueType::BUILT_IN_LAST) - static_cast<int>(HeaderParserValueType::BUILT_IN_FIRST) + 1);
|
||||
static_assert(std::extent<decltype(BUILT_IN_TYPE_NAMES)>::value == static_cast<int>(HeaderParserValueType::BUILT_IN_LAST) - static_cast<int>(HeaderParserValueType::BUILT_IN_FIRST) + 1);
|
||||
|
||||
const HeaderMatcherFactory create(labelSupplier);
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <functional>
|
||||
|
||||
#include "Utils/ClassUtils.h"
|
||||
|
||||
|
@ -26,7 +26,7 @@ std::string ParsingException::FullMessage() const
|
||||
return m_full_message;
|
||||
}
|
||||
|
||||
char const* ParsingException::what() const
|
||||
char const* ParsingException::what() const noexcept
|
||||
{
|
||||
return m_full_message.c_str();
|
||||
}
|
||||
|
@ -18,5 +18,5 @@ public:
|
||||
_NODISCARD TokenPos Position() const;
|
||||
_NODISCARD const std::string& Message() const;
|
||||
_NODISCARD std::string FullMessage() const;
|
||||
_NODISCARD char const* what() const override;
|
||||
_NODISCARD char const* what() const noexcept override;
|
||||
};
|
||||
|
@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <functional>
|
||||
|
||||
class TokenPos
|
||||
{
|
||||
|
@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Utils/ClassUtils.h"
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "ZoneCodeGeneratorArguments.h"
|
||||
|
||||
#include <iostream>
|
||||
#include <type_traits>
|
||||
|
||||
#include "Utils/Arguments/CommandLineOption.h"
|
||||
#include "Utils/Arguments/UsageInformation.h"
|
||||
@ -103,7 +104,7 @@ ZoneCodeGeneratorArguments::GenerationTask::GenerationTask(std::string assetName
|
||||
}
|
||||
|
||||
ZoneCodeGeneratorArguments::ZoneCodeGeneratorArguments()
|
||||
: m_argument_parser(COMMAND_LINE_OPTIONS, _countof(COMMAND_LINE_OPTIONS)),
|
||||
: m_argument_parser(COMMAND_LINE_OPTIONS, std::extent<decltype(COMMAND_LINE_OPTIONS)>::value),
|
||||
m_task_flags(0)
|
||||
{
|
||||
m_verbose = false;
|
||||
|
@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include <d3d11.h>
|
||||
//#include <d3d11.h>
|
||||
#include "Image/Texture.h"
|
||||
|
||||
#include "IW4_Assets.h"
|
||||
|
@ -3,6 +3,18 @@
|
||||
#ifndef __IW4_ASSETS_H
|
||||
#define __IW4_ASSETS_H
|
||||
|
||||
#ifndef __align
|
||||
#ifdef __zonecodegenerator
|
||||
#define __align alignas
|
||||
#else
|
||||
#if defined(_MSVC_LANG)
|
||||
#define __align(x) __declspec(align(x))
|
||||
#else
|
||||
#define __align(x) alignas(x)
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef __zonecodegenerator
|
||||
namespace IW4
|
||||
{
|
||||
|
@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include <d3d11.h>
|
||||
//#include <d3d11.h>
|
||||
#include "Image/Texture.h"
|
||||
|
||||
#include "T6_Assets.h"
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <map>
|
||||
|
||||
#include "XAssetInfo.h"
|
||||
#include "zone/Zone.h"
|
||||
#include "Zone/Zone.h"
|
||||
|
||||
class Zone;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user