From 0fbcd630bc57885d6b94fd3c4b3546493e09059e Mon Sep 17 00:00:00 2001
From: Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com>
Date: Thu, 15 Dec 2022 12:07:31 -0500
Subject: Replace `DllImport` usage with `LibraryImport` (#4084)

* Replace usage of `DllImport` with `LibraryImport`

* Mark methods as `partial`

* Marshalling

* More `partial` & marshalling

* More `partial` and marshalling

* More partial and marshalling

* Update GdiPlusHelper to LibraryImport

* Unicorn

* More Partial

* Marshal

* Specify EntryPoint

* Specify EntryPoint

* Change GlobalMemoryStatusEx to LibraryImport

* Change RegisterClassEx to LibraryImport

* Define EntryPoints

* Update Ryujinx.Ava/Ui/Controls/Win32NativeInterop.cs

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>

* Update Ryujinx.Graphics.Nvdec.FFmpeg/Native/FFmpegApi.cs

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>

* Move return mashal

* Remove calling convention specification

* Remove calling conventions

* Update Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>

* Update Ryujinx/Modules/Updater/Updater.cs

Co-authored-by: Mary-nyan <thog@protonmail.com>

* Update Ryujinx.Ava/Modules/Updater/Updater.cs

Co-authored-by: Mary-nyan <thog@protonmail.com>

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
Co-authored-by: Mary-nyan <thog@protonmail.com>
---
 Ryujinx.Memory/MemoryManagerUnixHelper.cs | 46 +++++++++++++++----------------
 1 file changed, 23 insertions(+), 23 deletions(-)

(limited to 'Ryujinx.Memory/MemoryManagerUnixHelper.cs')

diff --git a/Ryujinx.Memory/MemoryManagerUnixHelper.cs b/Ryujinx.Memory/MemoryManagerUnixHelper.cs
index dd31c328..87a81a79 100644
--- a/Ryujinx.Memory/MemoryManagerUnixHelper.cs
+++ b/Ryujinx.Memory/MemoryManagerUnixHelper.cs
@@ -3,7 +3,7 @@ using System.Runtime.InteropServices;
 
 namespace Ryujinx.Memory
 {
-    public static class MemoryManagerUnixHelper
+    public static partial class MemoryManagerUnixHelper
     {
         [Flags]
         public enum MmapProts : uint
@@ -51,38 +51,38 @@ namespace Ryujinx.Memory
         public const int MADV_DONTNEED = 4;
         public const int MADV_REMOVE = 9;
 
-        [DllImport("libc", EntryPoint = "mmap", SetLastError = true)]
-        private static extern IntPtr Internal_mmap(IntPtr address, ulong length, MmapProts prot, int flags, int fd, long offset);
+        [LibraryImport("libc", EntryPoint = "mmap", SetLastError = true)]
+        private static partial IntPtr Internal_mmap(IntPtr address, ulong length, MmapProts prot, int flags, int fd, long offset);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int mprotect(IntPtr address, ulong length, MmapProts prot);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int mprotect(IntPtr address, ulong length, MmapProts prot);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int munmap(IntPtr address, ulong length);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int munmap(IntPtr address, ulong length);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern IntPtr mremap(IntPtr old_address, ulong old_size, ulong new_size, int flags, IntPtr new_address);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial IntPtr mremap(IntPtr old_address, ulong old_size, ulong new_size, int flags, IntPtr new_address);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int madvise(IntPtr address, ulong size, int advice);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int madvise(IntPtr address, ulong size, int advice);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int mkstemp(IntPtr template);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int mkstemp(IntPtr template);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int unlink(IntPtr pathname);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int unlink(IntPtr pathname);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int ftruncate(int fildes, IntPtr length);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int ftruncate(int fildes, IntPtr length);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int close(int fd);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int close(int fd);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int shm_open(IntPtr name, int oflag, uint mode);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int shm_open(IntPtr name, int oflag, uint mode);
 
-        [DllImport("libc", SetLastError = true)]
-        public static extern int shm_unlink(IntPtr name);
+        [LibraryImport("libc", SetLastError = true)]
+        public static partial int shm_unlink(IntPtr name);
 
         private static int MmapFlagsToSystemFlags(MmapFlags flags)
         {
-- 
cgit v1.2.3-70-g09d2