GLInterface: Drop Haiku support
This commit is contained in:
parent
6119212d68
commit
74b82bab3b
|
@ -87,13 +87,8 @@ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||||
|
|
||||||
# Set up paths
|
# Set up paths
|
||||||
set(bindir ${CMAKE_INSTALL_PREFIX}/bin CACHE PATH "bindir")
|
set(bindir ${CMAKE_INSTALL_PREFIX}/bin CACHE PATH "bindir")
|
||||||
if(HAIKU)
|
set(datadir ${CMAKE_INSTALL_PREFIX}/share/dolphin-emu CACHE PATH "datadir")
|
||||||
set(datadir ${CMAKE_INSTALL_PREFIX}/data/dolphin-emu CACHE PATH "datadir")
|
set(mandir ${CMAKE_INSTALL_PREFIX}/share/man CACHE PATH "mandir")
|
||||||
set(mandir ${CMAKE_INSTALL_PREFIX}/documentation/man CACHE PATH "mandir")
|
|
||||||
else()
|
|
||||||
set(datadir ${CMAKE_INSTALL_PREFIX}/share/dolphin-emu CACHE PATH "datadir")
|
|
||||||
set(mandir ${CMAKE_INSTALL_PREFIX}/share/man CACHE PATH "mandir")
|
|
||||||
endif()
|
|
||||||
add_definitions(-DDATA_DIR="${datadir}/")
|
add_definitions(-DDATA_DIR="${datadir}/")
|
||||||
|
|
||||||
if(CMAKE_SYSROOT)
|
if(CMAKE_SYSROOT)
|
||||||
|
@ -381,10 +376,6 @@ if(ANDROID)
|
||||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
||||||
elseif(HAIKU)
|
|
||||||
set(USE_X11 0)
|
|
||||||
set(USE_UPNP 0)
|
|
||||||
set(USE_EGL 0)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_HEADLESS)
|
if(ENABLE_HEADLESS)
|
||||||
|
@ -427,7 +418,7 @@ endif()
|
||||||
|
|
||||||
set(USE_X11 0)
|
set(USE_X11 0)
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT ANDROID AND NOT HAIKU AND NOT ENABLE_HEADLESS)
|
if(UNIX AND NOT APPLE AND NOT ANDROID AND NOT ENABLE_HEADLESS)
|
||||||
find_package(X11)
|
find_package(X11)
|
||||||
if(TRY_X11 AND X11_FOUND)
|
if(TRY_X11 AND X11_FOUND)
|
||||||
set(USE_X11 1)
|
set(USE_X11 1)
|
||||||
|
|
|
@ -130,9 +130,6 @@ if(WIN32)
|
||||||
)
|
)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
target_sources(common PRIVATE GL/GLInterface/AGL.mm)
|
target_sources(common PRIVATE GL/GLInterface/AGL.mm)
|
||||||
elseif(HAIKU)
|
|
||||||
target_sources(common PRIVATE GL/GLInterface/BGL.cpp)
|
|
||||||
target_link_libraries(common PUBLIC be GL)
|
|
||||||
elseif(USE_X11)
|
elseif(USE_X11)
|
||||||
if (NOT USE_EGL)
|
if (NOT USE_EGL)
|
||||||
target_sources(common PRIVATE GL/GLInterface/GLX.cpp)
|
target_sources(common PRIVATE GL/GLInterface/GLX.cpp)
|
||||||
|
@ -163,9 +160,6 @@ if(UNIX)
|
||||||
if(SYSTEMD_FOUND)
|
if(SYSTEMD_FOUND)
|
||||||
target_link_libraries(traversal_server PRIVATE ${SYSTEMD_LIBRARIES})
|
target_link_libraries(traversal_server PRIVATE ${SYSTEMD_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
if(HAIKU)
|
|
||||||
target_link_libraries(traversal_server PRIVATE network)
|
|
||||||
endif()
|
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
target_link_libraries(common PRIVATE "-INCLUDE:enableCompatPatches")
|
target_link_libraries(common PRIVATE "-INCLUDE:enableCompatPatches")
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -1,70 +0,0 @@
|
||||||
// Copyright 2017 Dolphin Emulator Project
|
|
||||||
// Licensed under GPLv2+
|
|
||||||
// Refer to the license.txt file included.
|
|
||||||
|
|
||||||
#include "Common/GL/GLInterface/BGL.h"
|
|
||||||
|
|
||||||
#include <GLView.h>
|
|
||||||
#include <Size.h>
|
|
||||||
#include <Window.h>
|
|
||||||
|
|
||||||
void cInterfaceBGL::Swap()
|
|
||||||
{
|
|
||||||
m_gl->SwapBuffers();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool cInterfaceBGL::Create(void* window_handle, bool stereo, bool core)
|
|
||||||
{
|
|
||||||
m_window = static_cast<BWindow*>(window_handle);
|
|
||||||
|
|
||||||
m_gl = new BGLView(m_window->Bounds(), "cInterfaceBGL", B_FOLLOW_ALL_SIDES, 0,
|
|
||||||
BGL_RGB | BGL_DOUBLE | BGL_ALPHA);
|
|
||||||
m_window->AddChild(m_gl);
|
|
||||||
|
|
||||||
s_opengl_mode = GLInterfaceMode::MODE_OPENGL;
|
|
||||||
|
|
||||||
// Control m_window size and picture scaling
|
|
||||||
BRect size = m_gl->Frame();
|
|
||||||
s_backbuffer_width = size.IntegerWidth();
|
|
||||||
s_backbuffer_height = size.IntegerHeight();
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool cInterfaceBGL::MakeCurrent()
|
|
||||||
{
|
|
||||||
m_gl->LockGL();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool cInterfaceBGL::ClearCurrent()
|
|
||||||
{
|
|
||||||
m_gl->UnlockGL();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void cInterfaceBGL::Shutdown()
|
|
||||||
{
|
|
||||||
// We don't need to delete m_gl, it's owned by the BWindow.
|
|
||||||
m_gl = nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
void cInterfaceBGL::Update()
|
|
||||||
{
|
|
||||||
BRect size = m_gl->Frame();
|
|
||||||
|
|
||||||
if (s_backbuffer_width == size.IntegerWidth() && s_backbuffer_height == size.IntegerHeight())
|
|
||||||
return;
|
|
||||||
|
|
||||||
s_backbuffer_width = size.IntegerWidth();
|
|
||||||
s_backbuffer_height = size.IntegerHeight();
|
|
||||||
}
|
|
||||||
|
|
||||||
void cInterfaceBGL::SwapInterval(int interval)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void* cInterfaceBGL::GetFuncAddress(const std::string& name)
|
|
||||||
{
|
|
||||||
return m_gl->GetGLProcAddress(name.c_str());
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
// Copyright 2017 Dolphin Emulator Project
|
|
||||||
// Licensed under GPLv2+
|
|
||||||
// Refer to the license.txt file included.
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Common/GL/GLInterfaceBase.h"
|
|
||||||
|
|
||||||
class BWindow;
|
|
||||||
class BGLView;
|
|
||||||
|
|
||||||
class cInterfaceBGL final : public cInterfaceBase
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
void Swap() override;
|
|
||||||
void* GetFuncAddress(const std::string& name) override;
|
|
||||||
bool Create(void* window_handle, bool stereo, bool core) override;
|
|
||||||
bool MakeCurrent() override;
|
|
||||||
bool ClearCurrent() override;
|
|
||||||
void Shutdown() override;
|
|
||||||
void Update() override;
|
|
||||||
void SwapInterval(int interval) override;
|
|
||||||
|
|
||||||
private:
|
|
||||||
BWindow* m_window;
|
|
||||||
BGLView* m_gl;
|
|
||||||
};
|
|
|
@ -1,30 +0,0 @@
|
||||||
// Copyright 2017 Dolphin Emulator Project
|
|
||||||
// Licensed under GPLv2+
|
|
||||||
// Refer to the license.txt file included.
|
|
||||||
|
|
||||||
#include "Common/GL/GLInterface/EGLHaiku.h"
|
|
||||||
|
|
||||||
#include <Window.h>
|
|
||||||
|
|
||||||
EGLDisplay cInterfaceEGLHaiku::OpenDisplay()
|
|
||||||
{
|
|
||||||
return eglGetDisplay(EGL_DEFAULT_DISPLAY);
|
|
||||||
}
|
|
||||||
|
|
||||||
EGLNativeWindowType cInterfaceEGLHaiku::InitializePlatform(EGLNativeWindowType host_window,
|
|
||||||
EGLConfig config)
|
|
||||||
{
|
|
||||||
EGLint format;
|
|
||||||
eglGetConfigAttrib(egl_dpy, config, EGL_NATIVE_VISUAL_ID, &format);
|
|
||||||
|
|
||||||
BWindow* window = reinterpret_cast<BWindow*>(host_window);
|
|
||||||
const int width = window->Size().width;
|
|
||||||
const int height = window->Size().height;
|
|
||||||
GLInterface->SetBackBufferDimensions(width, height);
|
|
||||||
|
|
||||||
return host_window;
|
|
||||||
}
|
|
||||||
|
|
||||||
void cInterfaceEGLHaiku::ShutdownPlatform()
|
|
||||||
{
|
|
||||||
}
|
|
|
@ -1,16 +0,0 @@
|
||||||
// Copyright 2017 Dolphin Emulator Project
|
|
||||||
// Licensed under GPLv2+
|
|
||||||
// Refer to the license.txt file included.
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Common/GL/GLInterface/EGL.h"
|
|
||||||
|
|
||||||
class cInterfaceEGLHaiku final : public cInterfaceEGL
|
|
||||||
{
|
|
||||||
protected:
|
|
||||||
EGLDisplay OpenDisplay() override;
|
|
||||||
EGLNativeWindowType InitializePlatform(EGLNativeWindowType host_window,
|
|
||||||
EGLConfig config) override;
|
|
||||||
void ShutdownPlatform() override;
|
|
||||||
};
|
|
|
@ -20,9 +20,6 @@
|
||||||
#include "Common/GL/GLInterface/EGL.h"
|
#include "Common/GL/GLInterface/EGL.h"
|
||||||
#elif ANDROID
|
#elif ANDROID
|
||||||
#include "Common/GL/GLInterface/EGLAndroid.h"
|
#include "Common/GL/GLInterface/EGLAndroid.h"
|
||||||
#elif defined(__HAIKU__)
|
|
||||||
#include "Common/GL/GLInterface/BGL.h"
|
|
||||||
#else
|
|
||||||
#error Platform doesnt have a GLInterface
|
#error Platform doesnt have a GLInterface
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -42,8 +39,6 @@ std::unique_ptr<cInterfaceBase> HostGL_CreateGLInterface()
|
||||||
#endif
|
#endif
|
||||||
#elif ANDROID
|
#elif ANDROID
|
||||||
return std::make_unique<cInterfaceEGLAndroid>();
|
return std::make_unique<cInterfaceEGLAndroid>();
|
||||||
#elif defined(__HAIKU__)
|
|
||||||
return std::make_unique<cInterfaceBGL>();
|
|
||||||
#else
|
#else
|
||||||
return nullptr;
|
return nullptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -35,8 +35,6 @@ const u32 m_os = OS_ALL | OS_LINUX;
|
||||||
const u32 m_os = OS_ALL | OS_FREEBSD;
|
const u32 m_os = OS_ALL | OS_FREEBSD;
|
||||||
#elif __OpenBSD__
|
#elif __OpenBSD__
|
||||||
const u32 m_os = OS_ALL | OS_OPENBSD;
|
const u32 m_os = OS_ALL | OS_OPENBSD;
|
||||||
#elif __HAIKU__
|
|
||||||
const u32 m_os = OS_ALL | OS_HAIKU;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static API m_api = API_OPENGL;
|
static API m_api = API_OPENGL;
|
||||||
|
|
|
@ -27,7 +27,6 @@ enum OS
|
||||||
OS_ANDROID = (1 << 4),
|
OS_ANDROID = (1 << 4),
|
||||||
OS_FREEBSD = (1 << 5),
|
OS_FREEBSD = (1 << 5),
|
||||||
OS_OPENBSD = (1 << 6),
|
OS_OPENBSD = (1 << 6),
|
||||||
OS_HAIKU = (1 << 7),
|
|
||||||
};
|
};
|
||||||
// Enum of known vendors
|
// Enum of known vendors
|
||||||
// Tegra and Nvidia are separated out due to such substantial differences
|
// Tegra and Nvidia are separated out due to such substantial differences
|
||||||
|
|
Loading…
Reference in New Issue