mirror of
https://forgejo.xatacraft.ru/Sunshine/mkxp-sunshine.git
synced 2026-08-19 21:39:57 +00:00
Removed useless bullshit
This commit is contained in:
parent
4a62b9551b
commit
454e85e2ec
9 changed files with 6 additions and 253 deletions
|
|
@ -163,16 +163,12 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||||
include_directories(${LINUXPKGS_INCLUDE_DIRS})
|
include_directories(${LINUXPKGS_INCLUDE_DIRS})
|
||||||
add_compile_options(${LINUXPKGS_CFLAGS_OTHER})
|
add_compile_options(${LINUXPKGS_CFLAGS_OTHER})
|
||||||
list(APPEND PLATFORM_LIBRARIES ${LINUXPKGS_LDFLAGS})
|
list(APPEND PLATFORM_LIBRARIES ${LINUXPKGS_LDFLAGS})
|
||||||
list(APPEND MAIN_SOURCE src/xdg-user-dir-lookup.c)
|
|
||||||
list(APPEND MAIN_HEADERS src/xdg-user-dir-lookup.h)
|
|
||||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
||||||
find_package(PkgConfig REQUIRED)
|
find_package(PkgConfig REQUIRED)
|
||||||
pkg_check_modules(LINUXPKGS REQUIRED gtk+-3.0 libxfconf-0)
|
pkg_check_modules(LINUXPKGS REQUIRED gtk+-3.0 libxfconf-0)
|
||||||
include_directories(${LINUXPKGS_INCLUDE_DIRS})
|
include_directories(${LINUXPKGS_INCLUDE_DIRS})
|
||||||
add_compile_options(${LINUXPKGS_CFLAGS_OTHER})
|
add_compile_options(${LINUXPKGS_CFLAGS_OTHER})
|
||||||
list(APPEND PLATFORM_LIBRARIES ${LINUXPKGS_LDFLAGS})
|
list(APPEND PLATFORM_LIBRARIES ${LINUXPKGS_LDFLAGS})
|
||||||
list(APPEND MAIN_SOURCE src/xdg-user-dir-lookup.c)
|
|
||||||
list(APPEND MAIN_HEADERS src/xdg-user-dir-lookup.h)
|
|
||||||
set(STEAM OFF)
|
set(STEAM OFF)
|
||||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
|
elseif(CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
|
||||||
set(STEAM OFF)
|
set(STEAM OFF)
|
||||||
|
|
@ -297,7 +293,8 @@ set(BINDING_SOURCE
|
||||||
|
|
||||||
source_group("Binding Source" FILES ${BINDING_SOURCE} ${BINDING_HEADERS})
|
source_group("Binding Source" FILES ${BINDING_SOURCE} ${BINDING_HEADERS})
|
||||||
if(NATIVE)
|
if(NATIVE)
|
||||||
add_compile_options("-march=native -mtune=native")
|
add_compile_options(-march=native
|
||||||
|
-mtune=native)
|
||||||
endif()
|
endif()
|
||||||
if(SANITIZERS)
|
if(SANITIZERS)
|
||||||
# ASan + Ruby = SEGFAULT
|
# ASan + Ruby = SEGFAULT
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ Target of sunshine mod - improve original game.
|
||||||
* OpenAL
|
* OpenAL
|
||||||
* PhysFS
|
* PhysFS
|
||||||
* sigc++-2.0
|
* sigc++-2.0
|
||||||
* OpenSSL
|
* vorbisfile
|
||||||
* GTK3(*NIX only!)
|
* GTK3(*NIX only!)
|
||||||
* libxfconf(*NIX only!)
|
* libxfconf(*NIX only!)
|
||||||
|
|
||||||
|
|
@ -30,6 +30,8 @@ Target of sunshine mod - improve original game.
|
||||||
|
|
||||||
2. build
|
2. build
|
||||||
* In project dir create build dir
|
* In project dir create build dir
|
||||||
* cmake -S . -B build
|
* cmake . -B build -DDEBUG=(ON/OFF) -DCMAKE_TOOLCHAIN_FILE=toolchain/arch/(x86/arm64/ia-64).cmake
|
||||||
* cd build
|
* cd build
|
||||||
* make -jn (n - count of threads for compilation)
|
* make -jn (n - count of threads for compilation)
|
||||||
|
|
||||||
|
also you can use build scripts like make-oneshot-linux.sh
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,6 @@
|
||||||
#include "sunshine.h"
|
#include "sunshine.h"
|
||||||
#ifdef unix_like
|
#ifdef unix_like
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include "xdg-user-dir-lookup.h"
|
|
||||||
#elif android
|
#elif android
|
||||||
#include <android/trace.h>
|
#include <android/trace.h>
|
||||||
#include <android/api-level.h>
|
#include <android/api-level.h>
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,6 @@
|
||||||
#include <dlfcn.h>
|
#include <dlfcn.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <gdk/gdk.h>
|
#include <gdk/gdk.h>
|
||||||
#include "xdg-user-dir-lookup.h"
|
|
||||||
#else
|
#else
|
||||||
#error "Operating system not detected or unsupported."
|
#error "Operating system not detected or unsupported."
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -1,205 +0,0 @@
|
||||||
/*
|
|
||||||
This file is not licenced under the GPL like the rest of the code.
|
|
||||||
Its is under the MIT license, to encourage reuse by cut-and-paste.
|
|
||||||
|
|
||||||
Copyright (c) 2007 Red Hat, Inc.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person
|
|
||||||
obtaining a copy of this software and associated documentation files
|
|
||||||
(the "Software"), to deal in the Software without restriction,
|
|
||||||
including without limitation the rights to use, copy, modify, merge,
|
|
||||||
publish, distribute, sublicense, and/or sell copies of the Software,
|
|
||||||
and to permit persons to whom the Software is furnished to do so,
|
|
||||||
subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be
|
|
||||||
included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
|
||||||
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
|
||||||
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
||||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "xdg-user-dir-lookup.h"
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <SDL3/SDL_stdinc.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
/**
|
|
||||||
* xdg_user_dir_lookup_with_fallback:
|
|
||||||
* @type: a string specifying the type of directory
|
|
||||||
* @fallback: value to use if the directory isn't specified by the user
|
|
||||||
* @returns: a newly allocated absolute pathname
|
|
||||||
*
|
|
||||||
* Looks up a XDG user directory of the specified type.
|
|
||||||
* Example of types are "DESKTOP" and "DOWNLOAD".
|
|
||||||
*
|
|
||||||
* In case the user hasn't specified any directory for the specified
|
|
||||||
* type the value returned is @fallback.
|
|
||||||
*
|
|
||||||
* The return value is newly allocated and must be freed with
|
|
||||||
* SDL_free(). The return value is never NULL if @fallback != NULL, unless
|
|
||||||
* out of memory.
|
|
||||||
**/
|
|
||||||
char * xdg_user_dir_lookup_with_fallback (const char *type, const char *fallback) {
|
|
||||||
FILE *file;
|
|
||||||
char *home_dir, *config_home, *config_file;
|
|
||||||
char buffer[512];
|
|
||||||
char *user_dir;
|
|
||||||
char *p, *d;
|
|
||||||
int len;
|
|
||||||
int relative;
|
|
||||||
|
|
||||||
home_dir = SDL_getenv("HOME");
|
|
||||||
|
|
||||||
if (home_dir == NULL)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
config_home = SDL_getenv("XDG_CONFIG_HOME");
|
|
||||||
if (config_home == NULL || config_home[0] == 0){
|
|
||||||
config_file = (char*)SDL_malloc(SDL_strlen(home_dir) + 23);
|
|
||||||
if (config_file == NULL)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
SDL_strlcpy(config_file, home_dir, sizeof(config_file));
|
|
||||||
SDL_strlcat(config_file, "/.config/user-dirs.dirs", sizeof(config_file) + 22);
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
config_file = (char*)SDL_malloc(SDL_strlen(config_home) + SDL_strlen("/user-dirs.dirs") + 1);
|
|
||||||
if (config_file == NULL)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
SDL_strlcpy(config_file, config_home, sizeof(config_file));
|
|
||||||
SDL_strlcat(config_file, "/user-dirs.dirs", sizeof(config_file) + 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
file = fopen(config_file, "r");
|
|
||||||
SDL_free(config_file);
|
|
||||||
if (file == NULL)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
user_dir = NULL;
|
|
||||||
while(fgets (buffer, sizeof (buffer), file)){
|
|
||||||
/* Remove newline at end */
|
|
||||||
len = SDL_strlen(buffer);
|
|
||||||
if (len > 0 && buffer[len-1] == '\n')
|
|
||||||
buffer[len-1] = 0;
|
|
||||||
|
|
||||||
p = buffer;
|
|
||||||
while (*p == ' ' || *p == '\t')
|
|
||||||
p++;
|
|
||||||
|
|
||||||
if(SDL_strncmp(p, "XDG_", 4) != 0)
|
|
||||||
continue;
|
|
||||||
p += 4;
|
|
||||||
if(SDL_strncmp (p, type, SDL_strlen(type)) != 0)
|
|
||||||
continue;
|
|
||||||
p += SDL_strlen(type);
|
|
||||||
if(SDL_strncmp(p, "_DIR", 4) != 0)
|
|
||||||
continue;
|
|
||||||
p += 4;
|
|
||||||
|
|
||||||
while (*p == ' ' || *p == '\t')
|
|
||||||
p++;
|
|
||||||
|
|
||||||
if (*p != '=')
|
|
||||||
continue;
|
|
||||||
p++;
|
|
||||||
|
|
||||||
while (*p == ' ' || *p == '\t')
|
|
||||||
p++;
|
|
||||||
|
|
||||||
if (*p != '"')
|
|
||||||
continue;
|
|
||||||
p++;
|
|
||||||
|
|
||||||
relative = 0;
|
|
||||||
if(SDL_strncmp(p, "$HOME/", 6) == 0){
|
|
||||||
p += 6;
|
|
||||||
relative = 1;
|
|
||||||
}
|
|
||||||
else if (*p != '/')
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (relative){
|
|
||||||
user_dir = (char*)SDL_malloc(SDL_strlen(home_dir) + 1 + SDL_strlen(p) + 1);
|
|
||||||
if (user_dir == NULL)
|
|
||||||
goto error2;
|
|
||||||
|
|
||||||
SDL_strlcpy(user_dir, home_dir, sizeof(user_dir));
|
|
||||||
SDL_strlcat(user_dir, "/", sizeof(user_dir) + 2);
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
user_dir = (char*)SDL_malloc(SDL_strlen(p) + 1);
|
|
||||||
if (user_dir == NULL)
|
|
||||||
goto error2;
|
|
||||||
|
|
||||||
*user_dir = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
d = user_dir + SDL_strlen(user_dir);
|
|
||||||
while (*p && *p != '"'){
|
|
||||||
if ((*p == '\\') && (*(p+1) != 0))
|
|
||||||
p++;
|
|
||||||
*d++ = *p++;
|
|
||||||
}
|
|
||||||
*d = 0;
|
|
||||||
}
|
|
||||||
error2:
|
|
||||||
fclose(file);
|
|
||||||
|
|
||||||
if (user_dir)
|
|
||||||
return user_dir;
|
|
||||||
|
|
||||||
error:
|
|
||||||
if (fallback)
|
|
||||||
return SDL_strdup(fallback);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* xdg_user_dir_lookup:
|
|
||||||
* @type: a string specifying the type of directory
|
|
||||||
* @returns: a newly allocated absolute pathname
|
|
||||||
*
|
|
||||||
* Looks up a XDG user directory of the specified type.
|
|
||||||
* Example of types are "DESKTOP" and "DOWNLOAD".
|
|
||||||
*
|
|
||||||
* The return value is always != NULL (unless out of memory),
|
|
||||||
* and if a directory
|
|
||||||
* for the type is not specified by the user the default
|
|
||||||
* is the home directory. Except for DESKTOP which defaults
|
|
||||||
* to ~/Desktop.
|
|
||||||
*
|
|
||||||
* The return value is newly allocated and must be freed with
|
|
||||||
* SDL_free().
|
|
||||||
**/
|
|
||||||
char *xdg_user_dir_lookup (const char *type){
|
|
||||||
char *dir, *home_dir, *user_dir;
|
|
||||||
|
|
||||||
dir = xdg_user_dir_lookup_with_fallback(type, NULL);
|
|
||||||
if (dir != NULL)
|
|
||||||
return dir;
|
|
||||||
|
|
||||||
home_dir = SDL_getenv("HOME");
|
|
||||||
|
|
||||||
if (home_dir == NULL)
|
|
||||||
return SDL_strdup("/tmp");
|
|
||||||
|
|
||||||
/* Special case desktop for historical compatibility */
|
|
||||||
if (SDL_strcmp(type, "DESKTOP") == 0){
|
|
||||||
user_dir = (char*)SDL_malloc(SDL_strlen(home_dir) + SDL_strlen("/Desktop") + 1);
|
|
||||||
if (user_dir == NULL)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
SDL_strlcpy(user_dir, home_dir, sizeof(user_dir));
|
|
||||||
SDL_strlcat(user_dir, "/Desktop", sizeof(user_dir) + 9);
|
|
||||||
return user_dir;
|
|
||||||
}
|
|
||||||
return SDL_strdup(home_dir);
|
|
||||||
}
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
#ifndef XDG_USER_DIR_LOOKUP_H
|
|
||||||
#define XDG_USER_DIR_LOOKUP_H
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
char *xdg_user_dir_lookup_with_fallback(const char *type, const char *fallback);
|
|
||||||
char *xdg_user_dir_lookup(const char *type);
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // XDG_USER_DIR_LOOKUP_H
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
set(CUSTOM_FLAGS
|
|
||||||
-mprefer-short-insn-regs
|
|
||||||
-mcmove
|
|
||||||
)
|
|
||||||
|
|
||||||
string(JOIN " " CUSTOM_FLAGS_STR ${CUSTOM_FLAGS})
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
set(CUSTOM_FLAGS
|
|
||||||
-mcase-vector-pcrel
|
|
||||||
-mcompact-casesi
|
|
||||||
)
|
|
||||||
|
|
||||||
string(JOIN " " CUSTOM_FLAGS_STR ${CUSTOM_FLAGS})
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
set(CUSTOM_FLAGS
|
|
||||||
-mdsp
|
|
||||||
-medsp
|
|
||||||
-mvdsp
|
|
||||||
-msmart
|
|
||||||
)
|
|
||||||
|
|
||||||
string(JOIN " " CUSTOM_FLAGS_STR ${CUSTOM_FLAGS})
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CUSTOM_FLAGS_STR}")
|
|
||||||
Loading…
Reference in a new issue