Commit Graph

107 Commits

Author SHA1 Message Date
robert seiver
3d3b567117 Add back in some missing UE changes to SDL code which were missed in the last SDL update.
#jira UE-177079
#preflight 63ebdd4d205b5ccbc7eae9d3
#rb James.Singer, Zack.Neyland

[CL 24224891 by robert seiver in ue5-main branch]
2023-02-14 20:23:31 -05:00
josh adams
1610c3bee3 UnrealArch/UnrealArchitectures changes
- Creates the UnrealArchitectures class, which wraps a list of UnrealArch objects
 - UnrealArch is a single architecture, expandable enum-like struct
 - There is no more concept of "no/default architecture", there is always a valid active architecture when building
 - Most uses of "string Architecture" are replaced with one of the two above, depending if multiple architectures are supported or not
 - UnrealArch has some platform-extensions for platform-specific naming (like Linux adds in LinuxName that turns, for instance, Arm64 -> aarch64-unknown-linux-gnueabi, which is used in folder names, etc)
 - UnrealArch has bIsX64 which can be used determine intel instruction set (as opposed to arm)
 - TargetRules class has an "Architecture" accessor that will return a single architecture if the active architectures is a single architecture, or throw an exception if multiple. This is useful in a majority of the cases where a paltform can only have a single architecture active in TargetRules (microsoft platforms, for instance, will create separate targets when compiling multiple architectures at once)
 - Added UnrealArchitectureConfig class, which contains all the architecture information for a platform (what architectures are supported, what ones are currently active for given project, etc)

#preflight 63c81fb5b065224750a1759e
#rb mike.fricker,roman.dzieciol,joe.kirchoff,dmytro.vovk,brandon.schaefer [various parts]
#p4v-preflight-copy 23562471

[CL 23829977 by josh adams in ue5-main branch]
2023-01-24 09:30:28 -05:00
joe kirchoff
e4b870ac3b Update external modules to add include paths to PublicSystemIncludePaths rather than PublicIncludePaths
#rnx
#rb trivial

[CL 22876134 by joe kirchoff in ue5-main branch]
2022-10-31 20:55:55 -04:00
Brandon Schaefer
f80f849ced Update Linux to SDL 2.24.0
#jira none
#rb none
#fyi Robert.Seiver, James.Singer
#preflight 63248cdb8c3def91aa92307f

[CL 22053328 by Brandon Schaefer in ue5-main branch]
2022-09-16 13:11:38 -04:00
michael sartain
1b0f94e252 Linux SDL 2.0.20 Update
[at]Brandon.Schaefer
[FYI] Robert.Seiver
#jira none
#preflight trivial

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 18626420 in //UE5/Release-5.0/... via CL 18626436 via CL 18626442
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)

[CL 18626448 by michael sartain in ue5-main branch]
2022-01-14 21:21:13 -05:00
michael sartain
8b549c779f Linux SDL 2.0.18 Update
Plus cherry-pick these commits from SDL main:

  f39e155 [release-2.0.18] Fixed undefined behavior in SDL_memset() (thanks andrewrk!)
  74ee7c0 Fixed potential buffer overflow in YUV conversion
  52e4e52 autotools, cmake: tighten Xfixes check && explicitly test BarrierEventID

Switch SDL_ConfineCursor calls to new SDL_SetWindowMouseRect SDL2 functionality**

** Hat tip Ethan Lee

[at]Brandon.Schaefer
#jira none
#preflight 61dc62c42e0e436c72901f1b

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 18561443 in //UE5/Release-5.0/... via CL 18561451
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18561471 by michael sartain in ue5-release-engine-test branch]
2022-01-10 12:21:30 -05:00
flibitijibibo
67e023466a Remove SDL_Vulkan_GetRequiredInstanceExtensions from Epic's SDL2
This is part of an effort to update Unreal Engine's SDL_dynapi function table to match upstream's, allowing for safe use of SDL_DYNAMIC_API. Currently UE breaks away from upstream in two places:

SDL_Vulkan_GetRequiredInstanceExtensions, which works similar to the upstream SDL_Vulkan_GetInstanceExtensions
SDL_ConfineCursor, a new API altogether
I'll be working to introduce an upstream version of SDL_ConfineCursor this week. As for SDL_Vulkan_GetRequiredInstanceExtensions, it turns out that there are some issues here:

1. SDL_Vulkan_GetInstanceExtensions depends on SDL_Vulkan_LoadLibrary, which UE does not use when checking for Vulkan functions
2. The UE base Vulkan functions aren't quite what you can get out of vkInstanceGetProcAddr, so we can't trivially replace dlsym for the base and then fudge the rest with a VkInstance
3. Because GetRequiredInstanceExtensions is effectively Epic-only, it only supports as many backends as UE itself does

The best solution, at least for now, is to just cut out the SDL part and implement the WSI extension query inside VulkanLinuxPlatform instead. It's basically the same thing but with less mallocs and doesn't break the dynapi table. It'd be cool to fix this "for real" one day, but it would require a bit of refactoring and affect a ton of platforms at once, so this seems like a safe compromise.

The patch is based on ue5-main, but can be applied to any UE branch that is still officially supported and uses the SDL extension. It was tested on X11, Wayland, and Xwayland.

#jira UE-132665
PR #8548: SDL2: Remove Vulkan_GetRequiredInstanceExtensions (Contributed by flibitijibibo)
[at]Brandon.Schaefer
#rb Brandon.Schaefer

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 17945563 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v885-17909292)

[CL 17945591 by flibitijibibo in ue5-release-engine-test branch]
2021-10-27 11:45:57 -04:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
halfdan ingvarsson
8d1d35502f Always use the PIC library of SDL2 even when building monolithic.
#rb Brandon.Schaefer

#ROBOMERGE-AUTHOR: halfdan.ingvarsson
#ROBOMERGE-SOURCE: CL 17467758 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17467760 by halfdan ingvarsson in ue5-release-engine-test branch]
2021-09-08 23:36:00 -04:00
michael sartain
5285bc13e4 Linux SDL 2.0.16 Update
Switch SDL_SetKeyboardGrab to SDL_SetWindowKeyboardGrab
  Add SDL_ConfineCursor to dynapi_overrides

Hat tip Ethan Lee

#jira none
#rb Brandon.Schaefer
[at]Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 17252629 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17252653 by michael sartain in ue5-release-engine-test branch]
2021-08-20 16:13:06 -04:00
michael sartain
7141fd5c7c Update Linux SDL2 library from 2.0.12 to 2.0.16
#jira none
[at]Brandon.Schaefer, [at]James.Singer
#rb Brandon.Schaefer, James.Singer

#ROBOMERGE-SOURCE: CL 17215198 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17217992 by michael sartain in ue5-release-engine-test branch]
2021-08-18 13:34:27 -04:00
robert seiver
113c3e421f Disabled warping the mouse upon windows gaining focus in SDL
#jira UE-78217
[at]Brandon.Schaefer
#rb Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 16787106 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16787112 by robert seiver in ue5-release-engine-test branch]
2021-06-25 15:07:07 -04:00
robert seiver
c82cb5b000 Updated the directory path to the libraries to Unix
#rb Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 16779953 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16779967 by robert seiver in ue5-release-engine-test branch]
2021-06-24 19:19:08 -04:00
nuno leiria
9981354bdf Rename Linux folders to Unix where needed
#jira UE-99748
#preflight 60d0e0b778c3b00001e7cdd1
#rb brandon.schaefer, michael.sartain, arciel.rekman

#ROBOMERGE-SOURCE: CL 16744169 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16744194 by nuno leiria in ue5-release-engine-test branch]
2021-06-22 12:05:43 -04:00
robert seiver
679d93e00f Separated mouse and touch screen double click radii to better accomodate mouse sensitivity
#jira UE-89534
[at]Brandon.Schaefer
#rb Brandon.Schaefer, Michael.Sartain

#ROBOMERGE-SOURCE: CL 16612232 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16612286 by robert seiver in ue5-release-engine-test branch]
2021-06-09 16:46:26 -04:00
Marc Audy
8f73cd7fa9 Merge UE5/Release-Engine-Staging @ 15630841 to UE5/Main
This represents UE4/Main @ 15601601

[CL 15631170 by Marc Audy in ue5-main branch]
2021-03-05 19:27:14 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
Ben Marsh
99be00dcdb Merging latest from Private-Starship.
[CL 13192225 by Ben Marsh in ue5-main branch]
2020-05-05 18:50:52 -04:00
brandon schaefer
1f9ca847a9 Fix crash in SDL offscreen rendering
#jira UE-86616
#rb Michael.Sartain
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 11087858 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v637-11041722)

[CL 11087865 by brandon schaefer in Main branch]
2020-01-22 17:05:34 -05:00
brandon schaefer
47cffa50c9 Rebuild SDL2 with libudev as a depends
#jira UE-86316
#rb Michael.Sartain
[FYI] Michael.Sartain
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 10890353 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v626-10872990)

[CL 10892191 by brandon schaefer in Main branch]
2020-01-07 11:03:50 -05:00
ryan durand
5954c1f85b Updating remaining copyrights in Engine.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869250 via CL 10869537 via CL 10869906
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870965 by ryan durand in Main branch]
2019-12-26 23:08:00 -05:00
Nick Shin
3526d16d5e merge/copyup to parent stream - HTML5 platform extension
#jira UEMOB-482  HTML5 platform as a plug in
#rb josh.adams
#rn

[CL 9306021 by Nick Shin in Dev-Build branch]
2019-09-30 15:13:56 -04:00
ben marsh
6a936ba1b9 Copying //UE4/Dev-RenderPlat-Staging[at]8684824 to Dev-Main (//UE4/Dev-Main)
#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marcus.wassmer
#ROBOMERGE-SOURCE: CL 8684840 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v422-8689730)

[CL 8752957 by ben marsh in Dev-Build branch]
2019-09-17 11:58:25 -04:00
michael sartain
d0ef087f53 Linux SDL2: Rebuild sdl2 with alsa-lib-devel package installed (enable ALSA)
Cherry Pick 8433316 from Dev-Rendering

#jira UE-51823
#rb Brandon.Schaefer
[FYI] Arciel.Rekman
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 8498898 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v406-8472469)

[CL 8498901 by michael sartain in Main branch]
2019-09-04 16:46:52 -04:00