From c33efc3cba8cdf872fe446349a6eb1f1931785c5 Mon Sep 17 00:00:00 2001 From: Patrick Griffis Date: Sat, 24 Feb 2018 13:10:42 -0500 Subject: [PATCH] Build from git The Dolphin project is sadly one of those that never makes stable releases and as such it is multiple years behind what the current project actually is and users want. --- .gitmodules | 3 + ...250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch | 125 ------------------ appdata.xml | 2 +- org.DolphinEmu.dolphin-emu.json | 66 +++++---- shared-modules | 1 + use-gtk3.patch | 30 +++++ 6 files changed, 75 insertions(+), 152 deletions(-) create mode 100644 .gitmodules delete mode 100644 6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch create mode 160000 shared-modules create mode 100644 use-gtk3.patch diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..1e7a990 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "shared-modules"] + path = shared-modules + url = https://github.com/flathub/shared-modules.git diff --git a/6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch b/6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch deleted file mode 100644 index fd81e61..0000000 --- a/6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch +++ /dev/null @@ -1,125 +0,0 @@ -From 6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7 Mon Sep 17 00:00:00 2001 -From: Emmanuel Gil Peyrot -Date: Sat, 3 Dec 2016 18:36:34 +0000 -Subject: [PATCH] CMake: Add an option to disable each sound backend. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -They are already disabled when the libraries can’t be found, this only -helps people who want to build without them despite having them -installed, for example to provide a package to someone else. ---- - CMakeLists.txt | 80 ++++++++++++++++++++++++++++++++++++---------------------- - 1 file changed, 50 insertions(+), 30 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index cc608e7978b..f9a3abbe3b3 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -15,6 +15,10 @@ option(ENABLE_PCH "Use PCH to speed up compilation" ON) - option(ENABLE_LTO "Enables Link Time Optimization" OFF) - option(ENABLE_GENERIC "Enables generic build that should run on any little-endian host" OFF) - option(ENABLE_HEADLESS "Enables running Dolphin as a headless variant" OFF) -+option(ENABLE_ALSA "Enables ALSA sound backend" ON) -+option(ENABLE_AO "Enables libao sound backend" ON) -+option(ENABLE_PULSEAUDIO "Enables PulseAudio sound backend" ON) -+option(ENABLE_OPENAL "Enables OpenAL sound backend" ON) - - # Maintainers: if you consider blanket disabling this for your users, please - # consider the following points: -@@ -445,23 +449,31 @@ if (OPENGL_GL) - include_directories(${OPENGL_INCLUDE_DIR}) - endif() - --include(FindALSA OPTIONAL) --if(ALSA_FOUND) -- add_definitions(-DHAVE_ALSA=1) -- message("ALSA found, enabling ALSA sound backend") -+if(ENABLE_ALSA) -+ include(FindALSA OPTIONAL) -+ if(ALSA_FOUND) -+ add_definitions(-DHAVE_ALSA=1) -+ message("ALSA found, enabling ALSA sound backend") -+ else() -+ add_definitions(-DHAVE_ALSA=0) -+ message("ALSA NOT found, disabling ALSA sound backend") -+ endif() - else() -- add_definitions(-DHAVE_ALSA=0) -- message("ALSA NOT found, disabling ALSA sound backend") --endif(ALSA_FOUND) -- --check_lib(AO ao ao QUIET) --if(AO_FOUND) -- add_definitions(-DHAVE_AO=1) -- message("ao found, enabling ao sound backend") -+ message("ALSA explicitly disabled, disabling ALSA sound backend") -+endif() -+ -+if(ENABLE_AO) -+ check_lib(AO ao ao QUIET) -+ if(AO_FOUND) -+ add_definitions(-DHAVE_AO=1) -+ message("ao found, enabling ao sound backend") -+ else() -+ add_definitions(-DHAVE_AO=0) -+ message("ao NOT found, disabling ao sound backend") -+ endif() - else() -- add_definitions(-DHAVE_AO=0) -- message("ao NOT found, disabling ao sound backend") --endif(AO_FOUND) -+ message("ao explicitly disabled, disabling ao sound backend") -+endif() - - check_lib(BLUEZ bluez bluez QUIET) - if(BLUEZ_FOUND) -@@ -472,24 +484,32 @@ else() - message("bluez NOT found, disabling bluetooth support") - endif(BLUEZ_FOUND) - --check_lib(PULSEAUDIO libpulse pulse QUIET) --if(PULSEAUDIO_FOUND) -- add_definitions(-DHAVE_PULSEAUDIO=1) -- message("PulseAudio found, enabling PulseAudio sound backend") -+if(ENABLE_PULSEAUDIO) -+ check_lib(PULSEAUDIO libpulse pulse QUIET) -+ if(PULSEAUDIO_FOUND) -+ add_definitions(-DHAVE_PULSEAUDIO=1) -+ message("PulseAudio found, enabling PulseAudio sound backend") -+ else() -+ add_definitions(-DHAVE_PULSEAUDIO=0) -+ message("PulseAudio NOT found, disabling PulseAudio sound backend") -+ endif() - else() -- add_definitions(-DHAVE_PULSEAUDIO=0) -- message("PulseAudio NOT found, disabling PulseAudio sound backend") --endif(PULSEAUDIO_FOUND) -+ message("PulseAudio explicitly disabled, disabling PulseAudio sound backend") -+endif() - --include(FindOpenAL OPTIONAL) --if(OPENAL_FOUND) -- add_definitions(-DHAVE_OPENAL=1) -- include_directories(${OPENAL_INCLUDE_DIR}) -- message("OpenAL found, enabling OpenAL sound backend") -+if(ENABLE_OPENAL) -+ include(FindOpenAL OPTIONAL) -+ if(OPENAL_FOUND) -+ add_definitions(-DHAVE_OPENAL=1) -+ include_directories(${OPENAL_INCLUDE_DIR}) -+ message("OpenAL found, enabling OpenAL sound backend") -+ else() -+ add_definitions(-DHAVE_OPENAL=0) -+ message("OpenAL NOT found, disabling OpenAL sound backend") -+ endif() - else() -- add_definitions(-DHAVE_OPENAL=0) -- message("OpenAL NOT found, disabling OpenAL sound backend") --endif(OPENAL_FOUND) -+ message("OpenAL explicitly disabled, disabling OpenAL sound backend") -+endif() - - include(FindLLVM OPTIONAL) - if (LLVM_FOUND) diff --git a/appdata.xml b/appdata.xml index e7a46dc..3c104e5 100644 --- a/appdata.xml +++ b/appdata.xml @@ -23,7 +23,7 @@ https://raw.githubusercontent.com/flathub/org.DolphinEmu.dolphin-emu/master/screenshots/4.png - + b@bpiotrowski.pl diff --git a/org.DolphinEmu.dolphin-emu.json b/org.DolphinEmu.dolphin-emu.json index 3d52f3b..928221c 100644 --- a/org.DolphinEmu.dolphin-emu.json +++ b/org.DolphinEmu.dolphin-emu.json @@ -35,34 +35,49 @@ "--disable-ribbon", "--disable-html", "--disable-propgrid", - "--disable-xru", "--disable-richtext", "--with-expat=builtin", "--with-libiconv=/usr" ], "sources": [ - { - "type": "archive", - "url": "https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.3.1/wxWidgets-3.0.3.1.tar.bz2", - "sha256":"3164ad6bc5f61c48d2185b39065ddbe44283eb834a5f62beb13f1d0923e366e4" - }, - { - "type": "script", - "dest-filename": "autogen.sh", - "commands": [ - "cp -p /usr/share/automake-*/config.{sub,guess} .", - "autoconf -f -B build/autoconf_prepend-include" - ] - } + { + "type": "archive", + "url": "https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.1/wxWidgets-3.1.1.tar.bz2", + "sha256":"c925dfe17e8f8b09eb7ea9bfdcfcc13696a3e14e92750effd839f5e10726159e" + } + ] + }, + { + "name": "libusb", + "config-opts": [ + "--disable-static" + ], + "cleanup": [ + "/include", + "/lib/*.la", + "/lib/pkgconfig" + ], + "sources": [ + { + "type": "archive", + "url": "https://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.21/libusb-1.0.21.tar.gz", + "sha256": "1a5b08c05bc5e38c81c2d59c29954d5916646f4ff46f51381b3f624384e4ac01" + } + ], + "modules": [ + "shared-modules/udev/udev-175.json" ] }, { "name": "dolphin-emu", "buildsystem": "cmake-ninja", "config-opts": [ + "-DCMAKE_BUILD_TYPE=Release", "-DENABLE_ALSA=OFF", "-DENABLE_SDL=ON", "-DENABLE_EVDEV=OFF", + "-DENABLE_WX=ON", + "-DENABLE_QT2=OFF", "-DDISTRIBUTOR=Flathub" ], "build-options": { @@ -74,27 +89,26 @@ } } }, - "cleanup": [ "/bin/dolphin-emu-nogui" ], + "cleanup": [ + "/bin/dolphin-emu-nogui", + "/share/man" + ], "post-install": [ "install -Dm644 appdata.xml /app/share/appdata/dolphin-emu.appdata.xml" ], "sources": [ { - "type": "archive", - "url": "https://github.com/dolphin-emu/dolphin/archive/5.0.tar.gz", - "sha256": "62c4602055767ab314ff50a3b94ea57f792832aa1629e6b1117ebce10518dc0b" - }, - { - "type": "patch", - "path": "dolphin-emu-5.0-gtk3.patch" - }, - { - "type": "patch", - "path": "6033250bebe9f5dcec47c4e2ec8e5d3b102f73e7.patch" + "type": "git", + "url": "https://github.com/dolphin-emu/dolphin.git", + "commit": "e7ed4857b1ec3ac382e307806d22ba0c03dae37c" }, { "type": "file", "path": "appdata.xml" + }, + { + "type": "patch", + "path": "use-gtk3.patch" } ] } diff --git a/shared-modules b/shared-modules new file mode 160000 index 0000000..4958853 --- /dev/null +++ b/shared-modules @@ -0,0 +1 @@ +Subproject commit 4958853c65ff34986130d328681ab7f53e36e993 diff --git a/use-gtk3.patch b/use-gtk3.patch new file mode 100644 index 0000000..46eed76 --- /dev/null +++ b/use-gtk3.patch @@ -0,0 +1,30 @@ +From f289be92adff662d935d3653a0124b77b9496a7e Mon Sep 17 00:00:00 2001 +From: Patrick Griffis +Date: Sat, 24 Feb 2018 13:08:14 -0500 +Subject: [PATCH] Use Gtk3 + +--- + Source/Core/DolphinWX/CMakeLists.txt | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/Source/Core/DolphinWX/CMakeLists.txt b/Source/Core/DolphinWX/CMakeLists.txt +index 505d112..cffccc6 100644 +--- a/Source/Core/DolphinWX/CMakeLists.txt ++++ b/Source/Core/DolphinWX/CMakeLists.txt +@@ -110,9 +110,10 @@ add_executable(dolphin-emu ${SRCS}) + target_link_libraries(dolphin-emu PRIVATE ${LIBS}) + + if(USE_X11) +- find_package(GTK2 REQUIRED) +- target_link_libraries(dolphin-emu PRIVATE ${GTK2_LIBRARIES}) +- target_include_directories(dolphin-emu PRIVATE ${GTK2_INCLUDE_DIRS}) ++ find_package(PkgConfig) ++ pkg_check_modules(GTK3 REQUIRED gtk+-x11-3.0) ++ target_link_libraries(dolphin-emu PRIVATE ${GTK3_LIBRARIES}) ++ target_include_directories(dolphin-emu PRIVATE ${GTK3_INCLUDE_DIRS}) + endif() + + # Handle localization +-- +2.14.3 +