2.4.2
This commit is contained in:
parent
379da809cd
commit
c11c7203ef
@ -8,3 +8,24 @@ function(install_symlink target link)
|
|||||||
file(CREATE_LINK "${target}" "${CMAKE_BINARY_DIR}/symlink/${link}" SYMBOLIC)
|
file(CREATE_LINK "${target}" "${CMAKE_BINARY_DIR}/symlink/${link}" SYMBOLIC)
|
||||||
install(FILES "${CMAKE_BINARY_DIR}/symlink/${link}" DESTINATION "${parent}")
|
install(FILES "${CMAKE_BINARY_DIR}/symlink/${link}" DESTINATION "${parent}")
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
# Embed Resources
|
||||||
|
function(embed_resource target file)
|
||||||
|
# Read Hex Data
|
||||||
|
file(READ "${file}" data HEX)
|
||||||
|
# Convert Hex Data For C Compatibility
|
||||||
|
string(REGEX REPLACE "([0-9a-f][0-9a-f])" "0x\\1," data "${data}")
|
||||||
|
# Get C Name
|
||||||
|
get_filename_component(name "${file}" NAME)
|
||||||
|
string(MAKE_C_IDENTIFIER "${name}" name)
|
||||||
|
# Write Data
|
||||||
|
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" "#include <stddef.h>\nconst unsigned char ${name}[] = {${data}};\nconst size_t ${name}_len = sizeof (${name});\n")
|
||||||
|
# Add To Target
|
||||||
|
target_sources("${target}" PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/${name}.c")
|
||||||
|
# Mark Dependency
|
||||||
|
set_property(
|
||||||
|
DIRECTORY
|
||||||
|
APPEND
|
||||||
|
PROPERTY CMAKE_CONFIGURE_DEPENDS "${file}"
|
||||||
|
)
|
||||||
|
endfunction()
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
**2.4.2**
|
||||||
|
* Fix Picking Up Lava
|
||||||
|
* Fix Wayland App ID
|
||||||
|
|
||||||
**2.4.1**
|
**2.4.1**
|
||||||
* Allow More Characters In Usernames And Chat
|
* Allow More Characters In Usernames And Chat
|
||||||
* Fix Running On ARMHF Debian Buster
|
* Fix Running On ARMHF Debian Buster
|
||||||
|
BIN
images/start.png
BIN
images/start.png
Binary file not shown.
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 155 KiB |
@ -8,14 +8,8 @@ add_executable(launcher src/bootstrap.c src/patchelf.c src/crash-report.c)
|
|||||||
if(MCPI_SERVER_MODE)
|
if(MCPI_SERVER_MODE)
|
||||||
target_sources(launcher PRIVATE src/server/launcher.c)
|
target_sources(launcher PRIVATE src/server/launcher.c)
|
||||||
else()
|
else()
|
||||||
add_custom_command(
|
embed_resource(launcher src/client/available-feature-flags)
|
||||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/available-feature-flags.c"
|
target_sources(launcher PRIVATE src/client/launcher.cpp)
|
||||||
COMMAND xxd -i available-feature-flags "${CMAKE_CURRENT_BINARY_DIR}/available-feature-flags.c"
|
|
||||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/client/available-feature-flags"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src/client"
|
|
||||||
VERBATIM
|
|
||||||
)
|
|
||||||
target_sources(launcher PRIVATE src/client/launcher.cpp "${CMAKE_CURRENT_BINARY_DIR}/available-feature-flags.c")
|
|
||||||
endif()
|
endif()
|
||||||
target_link_libraries(launcher reborn-util)
|
target_link_libraries(launcher reborn-util)
|
||||||
# RPath
|
# RPath
|
||||||
@ -44,7 +38,7 @@ else()
|
|||||||
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/launcher.desktop"
|
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/launcher.desktop"
|
||||||
"Terminal=false\n"
|
"Terminal=false\n"
|
||||||
"StartupNotify=false\n"
|
"StartupNotify=false\n"
|
||||||
"StartupWMClass=${MCPI_APP_TITLE}\n"
|
"StartupWMClass=${MCPI_APP_ID}\n"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
install(
|
install(
|
||||||
|
@ -37,7 +37,7 @@ static std::string strip_feature_flag_default(std::string flag, bool *default_re
|
|||||||
|
|
||||||
// Load Available Feature Flags
|
// Load Available Feature Flags
|
||||||
extern unsigned char available_feature_flags[];
|
extern unsigned char available_feature_flags[];
|
||||||
extern unsigned int available_feature_flags_len;
|
extern size_t available_feature_flags_len;
|
||||||
static void load_available_feature_flags(std::function<void(std::string)> callback) {
|
static void load_available_feature_flags(std::function<void(std::string)> callback) {
|
||||||
// Get Path
|
// Get Path
|
||||||
char *binary_directory = get_binary_directory();
|
char *binary_directory = get_binary_directory();
|
||||||
@ -112,7 +112,7 @@ static void run_zenity_and_set_env(const char *env_name, std::vector<std::string
|
|||||||
full_command.push_back("--title");
|
full_command.push_back("--title");
|
||||||
full_command.push_back(DIALOG_TITLE);
|
full_command.push_back(DIALOG_TITLE);
|
||||||
full_command.push_back("--name");
|
full_command.push_back("--name");
|
||||||
full_command.push_back(MCPI_APP_TITLE);
|
full_command.push_back(MCPI_APP_ID);
|
||||||
full_command.insert(full_command.end(), command.begin(), command.end());
|
full_command.insert(full_command.end(), command.begin(), command.end());
|
||||||
// Convert To C Array
|
// Convert To C Array
|
||||||
const char *full_command_array[full_command.size() + 1];
|
const char *full_command_array[full_command.size() + 1];
|
||||||
|
@ -22,7 +22,7 @@ static void show_report(const char *log_filename) {
|
|||||||
const char *command[] = {
|
const char *command[] = {
|
||||||
"zenity",
|
"zenity",
|
||||||
"--title", DIALOG_TITLE,
|
"--title", DIALOG_TITLE,
|
||||||
"--name", MCPI_APP_TITLE,
|
"--name", MCPI_APP_ID,
|
||||||
"--width", CRASH_REPORT_DIALOG_WIDTH,
|
"--width", CRASH_REPORT_DIALOG_WIDTH,
|
||||||
"--height", CRASH_REPORT_DIALOG_HEIGHT,
|
"--height", CRASH_REPORT_DIALOG_HEIGHT,
|
||||||
"--text-info",
|
"--text-info",
|
||||||
|
@ -6,5 +6,6 @@
|
|||||||
#cmakedefine MCPI_USE_PREBUILT_ARMHF_TOOLCHAIN
|
#cmakedefine MCPI_USE_PREBUILT_ARMHF_TOOLCHAIN
|
||||||
#cmakedefine MCPI_USE_GLES1_COMPATIBILITY_LAYER
|
#cmakedefine MCPI_USE_GLES1_COMPATIBILITY_LAYER
|
||||||
#cmakedefine MCPI_APP_TITLE "@MCPI_APP_TITLE@"
|
#cmakedefine MCPI_APP_TITLE "@MCPI_APP_TITLE@"
|
||||||
|
#cmakedefine MCPI_APP_ID "@MCPI_APP_ID@"
|
||||||
#cmakedefine MCPI_VERSION "@MCPI_VERSION@"
|
#cmakedefine MCPI_VERSION "@MCPI_VERSION@"
|
||||||
#cmakedefine MCPI_SDK_DIR "@MCPI_SDK_DIR@"
|
#cmakedefine MCPI_SDK_DIR "@MCPI_SDK_DIR@"
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit c50d53160fa9b579dda0d0a4f9a7c2512940df8e
|
Subproject commit c18851f52ec9704eb06464058a600845ec1eada1
|
@ -14,6 +14,11 @@ endif()
|
|||||||
add_library(GLESv1_CM SHARED ${GLES_SRC})
|
add_library(GLESv1_CM SHARED ${GLES_SRC})
|
||||||
if(NOT MCPI_HEADLESS_MODE)
|
if(NOT MCPI_HEADLESS_MODE)
|
||||||
target_link_libraries(GLESv1_CM PRIVATE glfw PUBLIC reborn-util PRIVATE dl PRIVATE m)
|
target_link_libraries(GLESv1_CM PRIVATE glfw PUBLIC reborn-util PRIVATE dl PRIVATE m)
|
||||||
|
# Shaders
|
||||||
|
if(MCPI_USE_GLES1_COMPATIBILITY_LAYER)
|
||||||
|
embed_resource(GLESv1_CM src/compatibility-layer/shaders/main.vert)
|
||||||
|
embed_resource(GLESv1_CM src/compatibility-layer/shaders/main.frag)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Common
|
# Common
|
||||||
|
@ -54,16 +54,16 @@ static void log_shader(GLuint shader, const char *name) {
|
|||||||
ERR("Failed To Compile %s Shader", name);
|
ERR("Failed To Compile %s Shader", name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
static GLuint compile_shader(const char *vertex_shader_text, const char *fragment_shader_text) {
|
static GLuint compile_shader(const char *vertex_shader_text, const int vertex_shader_length, const char *fragment_shader_text, const int fragment_shader_length) {
|
||||||
// Vertex Shader
|
// Vertex Shader
|
||||||
const GLuint vertex_shader = real_glCreateShader()(REAL_GL_VERTEX_SHADER);
|
const GLuint vertex_shader = real_glCreateShader()(REAL_GL_VERTEX_SHADER);
|
||||||
real_glShaderSource()(vertex_shader, 1, &vertex_shader_text, NULL);
|
real_glShaderSource()(vertex_shader, 1, &vertex_shader_text, &vertex_shader_length);
|
||||||
real_glCompileShader()(vertex_shader);
|
real_glCompileShader()(vertex_shader);
|
||||||
log_shader(vertex_shader, "Vertex");
|
log_shader(vertex_shader, "Vertex");
|
||||||
|
|
||||||
// Fragment Shader
|
// Fragment Shader
|
||||||
const GLuint fragment_shader = real_glCreateShader()(REAL_GL_FRAGMENT_SHADER);
|
const GLuint fragment_shader = real_glCreateShader()(REAL_GL_FRAGMENT_SHADER);
|
||||||
real_glShaderSource()(fragment_shader, 1, &fragment_shader_text, NULL);
|
real_glShaderSource()(fragment_shader, 1, &fragment_shader_text, &fragment_shader_length);
|
||||||
real_glCompileShader()(fragment_shader);
|
real_glCompileShader()(fragment_shader);
|
||||||
log_shader(fragment_shader, "Fragment");
|
log_shader(fragment_shader, "Fragment");
|
||||||
|
|
||||||
@ -78,70 +78,14 @@ static GLuint compile_shader(const char *vertex_shader_text, const char *fragmen
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Shader
|
// Shader
|
||||||
|
extern unsigned char main_vert[];
|
||||||
|
extern size_t main_vert_len;
|
||||||
|
extern unsigned char main_frag[];
|
||||||
|
extern size_t main_frag_len;
|
||||||
static GLuint get_shader() {
|
static GLuint get_shader() {
|
||||||
static GLuint program = 0;
|
static GLuint program = 0;
|
||||||
if (program == 0) {
|
if (program == 0) {
|
||||||
static const char *vertex_shader_text =
|
program = compile_shader((const char *) main_vert, main_vert_len, (const char *) main_frag, main_frag_len);
|
||||||
"#version 100\n"
|
|
||||||
"precision mediump float;\n"
|
|
||||||
// Matrices
|
|
||||||
"uniform mat4 u_projection;\n"
|
|
||||||
"uniform mat4 u_model_view;\n"
|
|
||||||
"uniform mat4 u_texture;\n"
|
|
||||||
// Texture
|
|
||||||
"attribute vec3 a_vertex_coords;\n"
|
|
||||||
"attribute vec2 a_texture_coords;\n"
|
|
||||||
"varying vec4 v_texture_pos;\n"
|
|
||||||
// Color
|
|
||||||
"attribute vec4 a_color;\n"
|
|
||||||
"varying vec4 v_color;\n"
|
|
||||||
// Fog
|
|
||||||
"varying vec4 v_fog_eye_position;\n"
|
|
||||||
// Main
|
|
||||||
"void main() {\n"
|
|
||||||
" v_texture_pos = u_texture * vec4(a_texture_coords.xy, 0.0, 1.0);\n"
|
|
||||||
" gl_Position = u_projection * u_model_view * vec4(a_vertex_coords.xyz, 1.0);\n"
|
|
||||||
" v_color = a_color;\n"
|
|
||||||
" v_fog_eye_position = u_model_view * vec4(a_vertex_coords.xyz, 1.0);\n"
|
|
||||||
"}";
|
|
||||||
static const char *fragment_shader_text =
|
|
||||||
"#version 100\n"
|
|
||||||
"precision mediump float;\n"
|
|
||||||
// Texture
|
|
||||||
"uniform bool u_has_texture;"
|
|
||||||
"uniform sampler2D u_texture_unit;\n"
|
|
||||||
// Color
|
|
||||||
"varying vec4 v_color;\n"
|
|
||||||
"varying vec4 v_texture_pos;\n"
|
|
||||||
// Alpha Test
|
|
||||||
"uniform bool u_alpha_test;\n"
|
|
||||||
// Fog
|
|
||||||
"uniform bool u_fog;\n"
|
|
||||||
"uniform vec4 u_fog_color;\n"
|
|
||||||
"uniform bool u_fog_is_linear;\n"
|
|
||||||
"uniform float u_fog_start;\n"
|
|
||||||
"uniform float u_fog_end;\n"
|
|
||||||
"varying vec4 v_fog_eye_position;\n"
|
|
||||||
// Main
|
|
||||||
"void main(void) {\n"
|
|
||||||
" gl_FragColor = v_color;\n"
|
|
||||||
" if (u_has_texture) {\n"
|
|
||||||
" gl_FragColor *= texture2D(u_texture_unit, v_texture_pos.xy);\n"
|
|
||||||
" }\n"
|
|
||||||
" if (u_alpha_test && gl_FragColor.a <= 0.1) {\n"
|
|
||||||
" discard;\n"
|
|
||||||
" }\n"
|
|
||||||
" if (u_fog) {\n"
|
|
||||||
" float fog_factor;\n"
|
|
||||||
" if (u_fog_is_linear) {\n"
|
|
||||||
" fog_factor = (u_fog_end - length(v_fog_eye_position)) / (u_fog_end - u_fog_start);\n"
|
|
||||||
" } else {\n"
|
|
||||||
" fog_factor = exp(-u_fog_start * length(v_fog_eye_position));\n"
|
|
||||||
" }\n"
|
|
||||||
" gl_FragColor = mix(gl_FragColor, u_fog_color, 1.0 - clamp(fog_factor, 0.0, 1.0));\n"
|
|
||||||
" }\n"
|
|
||||||
"}";
|
|
||||||
program = compile_shader(vertex_shader_text, fragment_shader_text);
|
|
||||||
}
|
}
|
||||||
return program;
|
return program;
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,39 @@
|
|||||||
|
#version 100
|
||||||
|
precision mediump float;
|
||||||
|
// Texture
|
||||||
|
uniform bool u_has_texture;
|
||||||
|
uniform sampler2D u_texture_unit;
|
||||||
|
// Color
|
||||||
|
varying vec4 v_color;
|
||||||
|
varying vec4 v_texture_pos;
|
||||||
|
// Alpha Test
|
||||||
|
uniform bool u_alpha_test;
|
||||||
|
// Fog
|
||||||
|
uniform bool u_fog;
|
||||||
|
uniform vec4 u_fog_color;
|
||||||
|
uniform bool u_fog_is_linear;
|
||||||
|
uniform float u_fog_start;
|
||||||
|
uniform float u_fog_end;
|
||||||
|
varying vec4 v_fog_eye_position;
|
||||||
|
// Main
|
||||||
|
void main(void) {
|
||||||
|
gl_FragColor = v_color;
|
||||||
|
// Texture
|
||||||
|
if (u_has_texture) {
|
||||||
|
gl_FragColor *= texture2D(u_texture_unit, v_texture_pos.xy);
|
||||||
|
}
|
||||||
|
// Alpha Test
|
||||||
|
if (u_alpha_test && gl_FragColor.a <= 0.1) {
|
||||||
|
discard;
|
||||||
|
}
|
||||||
|
// Fog
|
||||||
|
if (u_fog) {
|
||||||
|
float fog_factor;
|
||||||
|
if (u_fog_is_linear) {
|
||||||
|
fog_factor = (u_fog_end - length(v_fog_eye_position)) / (u_fog_end - u_fog_start);
|
||||||
|
} else {
|
||||||
|
fog_factor = exp(-u_fog_start * length(v_fog_eye_position));
|
||||||
|
}
|
||||||
|
gl_FragColor = mix(gl_FragColor, u_fog_color, 1.0 - clamp(fog_factor, 0.0, 1.0));
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
#version 100
|
||||||
|
precision mediump float;
|
||||||
|
// Matrices
|
||||||
|
uniform mat4 u_projection;
|
||||||
|
uniform mat4 u_model_view;
|
||||||
|
uniform mat4 u_texture;
|
||||||
|
// Texture
|
||||||
|
attribute vec3 a_vertex_coords;
|
||||||
|
attribute vec2 a_texture_coords;
|
||||||
|
varying vec4 v_texture_pos;
|
||||||
|
// Color
|
||||||
|
attribute vec4 a_color;
|
||||||
|
varying vec4 v_color;
|
||||||
|
// Fog
|
||||||
|
varying vec4 v_fog_eye_position;
|
||||||
|
// Main
|
||||||
|
void main(void) {
|
||||||
|
v_texture_pos = u_texture * vec4(a_texture_coords.xy, 0.0, 1.0);
|
||||||
|
gl_Position = u_projection * u_model_view * vec4(a_vertex_coords.xyz, 1.0);
|
||||||
|
v_color = a_color;
|
||||||
|
v_fog_eye_position = u_model_view * vec4(a_vertex_coords.xyz, 1.0);
|
||||||
|
}
|
@ -308,6 +308,9 @@ void SDL_WM_SetCaption(const char *title, __attribute__((unused)) const char *ic
|
|||||||
// Extra Settings
|
// Extra Settings
|
||||||
glfwWindowHint(GLFW_AUTO_ICONIFY, GLFW_FALSE);
|
glfwWindowHint(GLFW_AUTO_ICONIFY, GLFW_FALSE);
|
||||||
glfwWindowHint(GLFW_ALPHA_BITS, 0); // Fix Transparent Window On Wayland
|
glfwWindowHint(GLFW_ALPHA_BITS, 0); // Fix Transparent Window On Wayland
|
||||||
|
// App ID
|
||||||
|
glfwWindowHintString(GLFW_X11_CLASS_NAME, MCPI_APP_ID);
|
||||||
|
glfwWindowHintString(GLFW_WAYLAND_APP_ID, MCPI_APP_ID);
|
||||||
|
|
||||||
// Create Window
|
// Create Window
|
||||||
glfw_window = glfwCreateWindow(DEFAULT_WIDTH, DEFAULT_HEIGHT, title, NULL, NULL);
|
glfw_window = glfwCreateWindow(DEFAULT_WIDTH, DEFAULT_HEIGHT, title, NULL, NULL);
|
||||||
|
@ -40,7 +40,7 @@ static int32_t BucketItem_useOn(__attribute__((unused)) unsigned char *item, Ite
|
|||||||
if (tile == *(int32_t *) (*Tile_calmWater + Tile_id_property_offset)) {
|
if (tile == *(int32_t *) (*Tile_calmWater + Tile_id_property_offset)) {
|
||||||
new_auxiliary = *(int32_t *) (*Tile_water + Tile_id_property_offset);
|
new_auxiliary = *(int32_t *) (*Tile_water + Tile_id_property_offset);
|
||||||
} else if (tile == *(int32_t *) (*Tile_calmLava + Tile_id_property_offset)) {
|
} else if (tile == *(int32_t *) (*Tile_calmLava + Tile_id_property_offset)) {
|
||||||
new_auxiliary = *(int32_t *) (*Tile_water + Tile_id_property_offset);
|
new_auxiliary = *(int32_t *) (*Tile_lava + Tile_id_property_offset);
|
||||||
}
|
}
|
||||||
if (new_auxiliary != 0) {
|
if (new_auxiliary != 0) {
|
||||||
// Valid
|
// Valid
|
||||||
@ -108,6 +108,9 @@ static int32_t BucketItem_useOn(__attribute__((unused)) unsigned char *item, Ite
|
|||||||
Material_isSolid_t Material_isSolid = *(Material_isSolid_t *) (material_vtable + Material_isSolid_vtable_offset);
|
Material_isSolid_t Material_isSolid = *(Material_isSolid_t *) (material_vtable + Material_isSolid_vtable_offset);
|
||||||
valid = !(*Material_isSolid)(material);
|
valid = !(*Material_isSolid)(material);
|
||||||
}
|
}
|
||||||
|
if (item_instance->auxiliary != *(int32_t *) (*Tile_water + Tile_id_property_offset) && item_instance->auxiliary != *(int32_t *) (*Tile_lava + Tile_id_property_offset)) {
|
||||||
|
valid = false;
|
||||||
|
}
|
||||||
if (valid) {
|
if (valid) {
|
||||||
(*Level_setTileAndData)(level, x, y, z, item_instance->auxiliary, 0);
|
(*Level_setTileAndData)(level, x, y, z, item_instance->auxiliary, 0);
|
||||||
item_instance->auxiliary = 0;
|
item_instance->auxiliary = 0;
|
||||||
|
@ -29,7 +29,7 @@ static void *chat_thread(__attribute__((unused)) void *nop) {
|
|||||||
const char *command[] = {
|
const char *command[] = {
|
||||||
"zenity",
|
"zenity",
|
||||||
"--title", DIALOG_TITLE,
|
"--title", DIALOG_TITLE,
|
||||||
"--name", MCPI_APP_TITLE,
|
"--name", MCPI_APP_ID,
|
||||||
"--entry",
|
"--entry",
|
||||||
"--text", "Enter Chat Message:",
|
"--text", "Enter Chat Message:",
|
||||||
NULL
|
NULL
|
||||||
|
@ -88,7 +88,7 @@ static void *create_world_thread(__attribute__((unused)) void *nop) {
|
|||||||
const char *command[] = {
|
const char *command[] = {
|
||||||
"zenity",
|
"zenity",
|
||||||
"--title", DIALOG_TITLE,
|
"--title", DIALOG_TITLE,
|
||||||
"--name", MCPI_APP_TITLE,
|
"--name", MCPI_APP_ID,
|
||||||
"--entry",
|
"--entry",
|
||||||
"--text", "Enter World Name:",
|
"--text", "Enter World Name:",
|
||||||
"--entry-text", DEFAULT_WORLD_NAME,
|
"--entry-text", DEFAULT_WORLD_NAME,
|
||||||
@ -115,7 +115,7 @@ static void *create_world_thread(__attribute__((unused)) void *nop) {
|
|||||||
const char *command[] = {
|
const char *command[] = {
|
||||||
"zenity",
|
"zenity",
|
||||||
"--title", DIALOG_TITLE,
|
"--title", DIALOG_TITLE,
|
||||||
"--name", MCPI_APP_TITLE,
|
"--name", MCPI_APP_ID,
|
||||||
"--list",
|
"--list",
|
||||||
"--radiolist",
|
"--radiolist",
|
||||||
"--width", GAME_MODE_DIALOG_SIZE,
|
"--width", GAME_MODE_DIALOG_SIZE,
|
||||||
@ -148,7 +148,7 @@ static void *create_world_thread(__attribute__((unused)) void *nop) {
|
|||||||
const char *command[] = {
|
const char *command[] = {
|
||||||
"zenity",
|
"zenity",
|
||||||
"--title", DIALOG_TITLE,
|
"--title", DIALOG_TITLE,
|
||||||
"--name", MCPI_APP_TITLE,
|
"--name", MCPI_APP_ID,
|
||||||
"--entry",
|
"--entry",
|
||||||
"--only-numerical",
|
"--only-numerical",
|
||||||
"--text", "Enter Seed (Leave Blank For Random):",
|
"--text", "Enter Seed (Leave Blank For Random):",
|
||||||
|
@ -11,20 +11,22 @@ build() {
|
|||||||
cd "build/${MODE}-${ARCH}"
|
cd "build/${MODE}-${ARCH}"
|
||||||
|
|
||||||
# Create Prefix
|
# Create Prefix
|
||||||
local prefix="$(cd ../../; pwd)/out/${MODE}-${ARCH}"
|
if [ -z "${DESTDIR+x}" ]; then
|
||||||
rm -rf "${prefix}"
|
export DESTDIR="$(cd ../../; pwd)/out/${MODE}-${ARCH}"
|
||||||
mkdir -p "${prefix}"
|
rm -rf "${DESTDIR}"
|
||||||
|
mkdir -p "${DESTDIR}"
|
||||||
|
fi
|
||||||
|
|
||||||
# Build ARM Components
|
# Build ARM Components
|
||||||
cd arm
|
cd arm
|
||||||
cmake --build .
|
cmake --build .
|
||||||
DESTDIR="${prefix}" cmake --install .
|
cmake --install .
|
||||||
cd ../
|
cd ../
|
||||||
|
|
||||||
# Build Native Components
|
# Build Native Components
|
||||||
cd native
|
cd native
|
||||||
cmake --build .
|
cmake --build .
|
||||||
DESTDIR="${prefix}" cmake --install .
|
cmake --install .
|
||||||
cd ../
|
cd ../
|
||||||
|
|
||||||
# Exit
|
# Exit
|
||||||
|
@ -30,8 +30,7 @@ run() {
|
|||||||
|
|
||||||
# Host Dependencies Needed For Compile
|
# Host Dependencies Needed For Compile
|
||||||
queue_pkg \
|
queue_pkg \
|
||||||
libwayland-bin \
|
libwayland-bin
|
||||||
xxd
|
|
||||||
|
|
||||||
# Host Dependencies Needed For Running
|
# Host Dependencies Needed For Running
|
||||||
queue_pkg \
|
queue_pkg \
|
||||||
|
Loading…
Reference in New Issue
Block a user