diff --git a/src/util/util_win32_compat.h b/src/util/util_win32_compat.h new file mode 100644 index 000000000..41eaf9c61 --- /dev/null +++ b/src/util/util_win32_compat.h @@ -0,0 +1,59 @@ +#pragma once + +#if defined(__linux__) + +#include +#include + +#include "log/log.h" + +inline HMODULE LoadLibraryA(LPCSTR lpLibFileName) { + return dlopen(lpLibFileName, RTLD_NOW); +} + +inline void CloseLibrary(HMODULE module) { + dlclose(module); +} + +inline void* GetProcAddress(HMODULE module, LPCSTR lpProcName) { + return dlsym(module, lpProcName); +} + +inline HANDLE CreateSemaphoreA( + SECURITY_ATTRIBUTES* lpSemaphoreAttributes, + LONG lInitialCount, + LONG lMaximumCount, + LPCSTR lpName) { + dxvk::Logger::warn("CreateSemaphoreA not implemented."); + return nullptr; +} +#define CreateSemaphore CreateSemaphoreA + +inline BOOL ReleaseSemaphore( + HANDLE hSemaphore, + LONG lReleaseCount, + LONG* lpPreviousCount) { + dxvk::Logger::warn("ReleaseSemaphore not implemented."); + return FALSE; +} + +inline BOOL SetEvent(HANDLE hEvent) { + dxvk::Logger::warn("SetEvent not implemented."); + return FALSE; +} + +inline BOOL CloseHandle(HANDLE hObject) { + dxvk::Logger::warn("CloseHandle not implemented."); + return FALSE; +} + +inline HDC CreateCompatibleDC(HDC hdc) { + dxvk::Logger::warn("CreateCompatibleDC not implemented."); + return nullptr; +} + +inline BOOL DeleteDC(HDC hdc) { + return FALSE; +} + +#endif