about summary refs log tree commit diff
path: root/pkgs/misc/emulators/retroarch/0002-Use-fixed-paths-on-libretro_info_path.patch
blob: 9aa8db6ab048bc6e2a70291f81bc8af3769de928 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
From 6788718299e1aba3ff8b31cd6ef012e8d3643bd3 Mon Sep 17 00:00:00 2001
From: Thiago Kenji Okada <thiagokokada@gmail.com>
Date: Sat, 20 Nov 2021 15:59:23 -0300
Subject: [PATCH 2/2] Use fixed paths on "libretro_info_path"

This patch sets "libretro_info_path" to `handle = false`, so instead of
using the values from `retroarch.cfg`, it will always use the default.

Also, it patches the default "libretro_info_path" to the
`@libretro_info_path` string, so we can substitute it with the full path
to it during build.
---
 configuration.c                    | 2 +-
 frontend/drivers/platform_darwin.m | 9 ++-------
 frontend/drivers/platform_unix.c   | 8 ++++----
 3 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/configuration.c b/configuration.c
index e6a3841324..afb1d6e2ce 100644
--- a/configuration.c
+++ b/configuration.c
@@ -1456,7 +1456,7 @@ static struct config_path_setting *populate_settings_path(
    SETTING_PATH("core_options_path",
          settings->paths.path_core_options, false, NULL, true);
    SETTING_PATH("libretro_info_path",
-         settings->paths.path_libretro_info, false, NULL, true);
+         settings->paths.path_libretro_info, false, NULL, false);
    SETTING_PATH("content_database_path",
          settings->paths.path_content_database, false, NULL, true);
    SETTING_PATH("cheat_database_path",
diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m
index f922e50c55..52732f65ae 100644
--- a/frontend/drivers/platform_darwin.m
+++ b/frontend/drivers/platform_darwin.m
@@ -383,14 +383,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[],
          home_dir_buf, "shaders_glsl",
          sizeof(g_defaults.dirs[DEFAULT_DIR_SHADER]));
 #endif
-#ifdef HAVE_UPDATE_CORES
     fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
-		    home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-#else
-    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
-		    bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-#endif
-   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+		    "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY]));
 #ifdef HAVE_VIDEO_LAYOUT
    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT]));
diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
index 722e1c595c..d87e01cf12 100644
--- a/frontend/drivers/platform_unix.c
+++ b/frontend/drivers/platform_unix.c
@@ -1815,8 +1815,8 @@ static void frontend_unix_get_env(int *argc,
       strcpy_literal(base_path, "retroarch");
 #endif
 
-   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path,
-         "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@",
+         "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
 #if defined(DINGUX)
    /* On platforms that require manual core installation/
     * removal, placing core info files in the same directory
@@ -1825,8 +1825,8 @@ static void frontend_unix_get_env(int *argc,
    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
          "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
 #else
-   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
-         "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+   fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
+         "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
 #endif
    fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
          "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));
-- 
2.31.1