Rename Vanilla-Pi to Vanilla (#209)

* Rename vanilla-pi to vanilla-gui

* revert weirdly-changed menu.h

* Change icon to rounded

* Rename vanilla-gui to vanilla, name libvanilla

* Fix broken .desktop file

* Rename `vanilla-gui` to `vanilla`
This commit is contained in:
VoxelTek
2025-07-25 00:32:16 -07:00
committed by GitHub
parent ab052847cc
commit 67f7f6f5ac
81 changed files with 164 additions and 52 deletions
+3 -7
View File
@@ -19,8 +19,7 @@ else()
set(vendored_default FALSE)
endif()
OPTION(VANILLA_BUILD_DESKTOP "Build Qt app for Linux desktop" OFF)
OPTION(VANILLA_BUILD_RPI "Build SDL2 app for Raspberry Pi" ON)
OPTION(VANILLA_BUILD_GUI "Build SDL2 GUI app" ON)
OPTION(VANILLA_BUILD_TESTS "Build unit tests for Vanilla" OFF)
OPTION(VANILLA_BUILD_PIPE "Build vanilla-pipe for connecting to Wii U (Linux only)" ${LINUX})
OPTION(VANILLA_BUILD_VENDORED "Build Vanilla with \"vendored\" third-party libraries" ${vendored_default})
@@ -29,9 +28,6 @@ add_subdirectory(lib)
if (VANILLA_BUILD_PIPE)
add_subdirectory(pipe)
endif()
if (VANILLA_BUILD_DESKTOP)
add_subdirectory(app)
endif()
if (VANILLA_BUILD_RPI)
add_subdirectory(rpi)
if (VANILLA_BUILD_GUI)
add_subdirectory(gui)
endif()
@@ -12,7 +12,7 @@ public class VanillaActivity extends SDLActivity {
// "SDL2_net",
"SDL2_ttf",
"xml2",
"vanilla-pi"
"vanilla"
};
}
}
+30 -29
View File
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.22)
set(_sdl_lib SDL2::SDL2)
set(_vanilla_pi_libs "")
set(_vanilla_gui_libs "")
set(_ffmpeg_components avformat avcodec avutil swscale)
function(compile_ffmpeg _target_name _system_name _system_processor)
@@ -150,7 +150,7 @@ if (VANILLA_BUILD_VENDORED)
# Link zlib for PNG
if (UNIX)
list(APPEND _vanilla_pi_libs "z")
list(APPEND _vanilla_gui_libs "z")
endif()
include(FetchContent)
@@ -230,7 +230,7 @@ if (VANILLA_BUILD_VENDORED)
endif()
endif()
list(APPEND VANILLA_PI_SRC
list(APPEND VANILLA_GUI_SRC
config.c
def.c
# drm.c
@@ -262,19 +262,19 @@ list(APPEND VANILLA_PI_SRC
# Declare executable
if (ANDROID)
add_library(vanilla-pi SHARED ${VANILLA_PI_SRC})
add_library(vanilla SHARED ${VANILLA_GUI_SRC})
else()
add_executable(vanilla-pi MACOSX_BUNDLE ${VANILLA_PI_SRC})
add_executable(vanilla MACOSX_BUNDLE ${VANILLA_GUI_SRC})
endif()
if (APPLE)
# Set bundle name to be more user-friendly
set_target_properties(vanilla-pi PROPERTIES
set_target_properties(vanilla PROPERTIES
OUTPUT_NAME Vanilla
)
else()
# Ensure executable is installed
install(TARGETS vanilla-pi)
install(TARGETS vanilla)
endif()
# Find packages (unless using vendored build)
@@ -284,17 +284,17 @@ if (NOT VANILLA_BUILD_VENDORED)
find_package(SDL2_image REQUIRED)
endif()
target_link_libraries(vanilla-pi PRIVATE
target_link_libraries(vanilla PRIVATE
${_sdl_lib}
SDL2::SDL2main
SDL2_ttf
SDL2_image
vanilla
libvanilla
m
)
if (ANDROID)
target_link_libraries(vanilla-pi PRIVATE
target_link_libraries(vanilla PRIVATE
SDL2main
log
)
@@ -305,48 +305,48 @@ if (NOT VANILLA_BUILD_VENDORED)
find_package(FFmpeg REQUIRED COMPONENTS avformat avcodec avutil swscale)
endif()
target_link_libraries(vanilla-pi PRIVATE
target_link_libraries(vanilla PRIVATE
FFmpeg::avformat
FFmpeg::avcodec
FFmpeg::avutil
FFmpeg::swscale
${_vanilla_pi_libs}
${_vanilla_gui_libs}
)
if (APPLE)
target_link_libraries(vanilla-pi PRIVATE "-framework VideoToolbox" "-framework CoreMedia" iconv)
target_link_libraries(vanilla PRIVATE "-framework VideoToolbox" "-framework CoreMedia" iconv)
endif()
if (LINUX)
# Assume this platform is capable of running vanilla-pipe
target_compile_definitions(vanilla-pi PRIVATE VANILLA_PIPE_AVAILABLE)
target_compile_definitions(vanilla PRIVATE VANILLA_PIPE_AVAILABLE)
# Link with DRM if available
find_package(DRM)
if (DRM_FOUND)
target_link_libraries(vanilla-pi PRIVATE ${DRM_LIBRARIES})
target_include_directories(vanilla-pi PRIVATE ${DRM_INCLUDE_DIRS})
target_link_libraries(vanilla PRIVATE ${DRM_LIBRARIES})
target_include_directories(vanilla PRIVATE ${DRM_INCLUDE_DIRS})
endif()
endif()
# Find libxml2 (used for storing/parsing user config)
if (VANILLA_BUILD_VENDORED)
target_link_libraries(vanilla-pi PRIVATE LibXml2::LibXml2)
target_link_libraries(vanilla PRIVATE LibXml2::LibXml2)
else()
find_package(LibXML2 REQUIRED)
target_link_libraries(vanilla-pi PRIVATE ${LibXML2_LIBRARIES})
target_include_directories(vanilla-pi PRIVATE ${LibXML2_INCLUDE_DIR})
target_link_libraries(vanilla PRIVATE ${LibXML2_LIBRARIES})
target_include_directories(vanilla PRIVATE ${LibXML2_INCLUDE_DIR})
endif()
# Link with winsock2 on Windows
if (WIN32)
set_target_properties(vanilla-pi PROPERTIES WIN32_EXECUTABLE true)
target_link_libraries(vanilla-pi PRIVATE wsock32 ws2_32)
set_target_properties(vanilla PROPERTIES WIN32_EXECUTABLE true)
target_link_libraries(vanilla PRIVATE wsock32 ws2_32)
endif()
# Set up include directories around the repository
target_include_directories(vanilla-pi PRIVATE
target_include_directories(vanilla PRIVATE
"${CMAKE_CURRENT_SOURCE_DIR}/../lib"
"${CMAKE_CURRENT_SOURCE_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/.."
@@ -356,31 +356,32 @@ target_include_directories(vanilla-pi PRIVATE
if(ANDROID)
# Put assets in correct place relative to build
add_custom_command(
TARGET vanilla-pi POST_BUILD
TARGET vanilla POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/assets" "${CMAKE_CURRENT_SOURCE_DIR}/../android/app/src/main/assets"
)
elseif(APPLE)
# Put assets in correct place relative to build
add_custom_command(
TARGET vanilla-pi POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different "${CMAKE_CURRENT_SOURCE_DIR}/assets" "$<TARGET_FILE_DIR:vanilla-pi>/../Resources/assets"
TARGET vanilla POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different "${CMAKE_CURRENT_SOURCE_DIR}/assets" "$<TARGET_FILE_DIR:vanilla>/../Resources/assets"
)
else()
# Put assets in correct place relative to build
add_custom_command(
TARGET vanilla-pi POST_BUILD
TARGET vanilla POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different "${CMAKE_CURRENT_SOURCE_DIR}/assets" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/../share/vanilla/assets"
)
if(WIN32)
set(_vanilla_pi_asset_destination "bin")
set(_vanilla_gui_asset_destination "bin")
else()
set(_vanilla_pi_asset_destination "share/vanilla")
set(_vanilla_gui_asset_destination "share/vanilla")
endif()
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/assets" DESTINATION "${_vanilla_pi_asset_destination}")
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/assets" DESTINATION "${_vanilla_gui_asset_destination}")
if (LINUX)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/res/com.mattkc.vanilla.desktop" DESTINATION share/applications)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/res/com.mattkc.vanilla.svg" DESTINATION share/pixmaps)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/res/com.mattkc.vanilla_rounded.svg" DESTINATION share/pixmaps)
endif()
endif()

Before

Width:  |  Height:  |  Size: 924 B

After

Width:  |  Height:  |  Size: 924 B

Before

Width:  |  Height:  |  Size: 939 B

After

Width:  |  Height:  |  Size: 939 B

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before

Width:  |  Height:  |  Size: 995 B

After

Width:  |  Height:  |  Size: 995 B

Before

Width:  |  Height:  |  Size: 995 B

After

Width:  |  Height:  |  Size: 995 B

Before

Width:  |  Height:  |  Size: 995 B

After

Width:  |  Height:  |  Size: 995 B

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 684 B

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 684 B

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 684 B

Before

Width:  |  Height:  |  Size: 315 B

After

Width:  |  Height:  |  Size: 315 B

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 134 KiB

Before

Width:  |  Height:  |  Size: 726 B

After

Width:  |  Height:  |  Size: 726 B

Before

Width:  |  Height:  |  Size: 726 B

After

Width:  |  Height:  |  Size: 726 B

Before

Width:  |  Height:  |  Size: 726 B

After

Width:  |  Height:  |  Size: 726 B

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before

Width:  |  Height:  |  Size: 324 KiB

After

Width:  |  Height:  |  Size: 324 KiB

Before

Width:  |  Height:  |  Size: 821 B

After

Width:  |  Height:  |  Size: 821 B

Before

Width:  |  Height:  |  Size: 821 B

After

Width:  |  Height:  |  Size: 821 B

Before

Width:  |  Height:  |  Size: 821 B

After

Width:  |  Height:  |  Size: 821 B

View File
+1 -1
View File
@@ -30,4 +30,4 @@ void vpi_config_rename_console(uint8_t index, const char *name);
void vpi_config_remove_console(uint8_t index);
void vpi_config_save();
#endif // VANILLA_PI_CONFIG_H
#endif // VANILLA_PI_CONFIG_H
View File
+1 -1
View File
@@ -3,4 +3,4 @@
#define VANILLA_PI_ERR_DECODER -1001
#endif // VANILLA_PI_DEF_H
#endif // VANILLA_PI_DEF_H
View File
+1 -1
View File
@@ -23,4 +23,4 @@ int initialize_drm(vanilla_drm_ctx_t *ctx);
int free_drm(vanilla_drm_ctx_t *ctx);
int display_drm(vanilla_drm_ctx_t *ctx, AVFrame *frame);
#endif // VANILLA_PI_DRM_H
#endif // VANILLA_PI_DRM_H
@@ -550,4 +550,4 @@ exit:
}
return 0;
}
}
+1 -1
View File
@@ -50,4 +50,4 @@ static const char *lang_str[__VPI_LANG_T_COUNT] = {
const char *lang(vpi_lang_t id)
{
return lang_str[id];
}
}
+1 -1
View File
@@ -51,4 +51,4 @@ typedef enum {
const char *lang(vpi_lang_t id);
#endif // VANILLA_PI_LANG_H
#endif // VANILLA_PI_LANG_H
View File
View File
View File
View File
View File
View File
View File
View File
@@ -1,9 +1,9 @@
[Desktop Entry]
Version=1.0
Name=Vanilla U
Name=Vanilla
Comment=Open Source Wii U Gamepad Implementation
Exec=vanilla-gui
Icon=com.mattkc.vanilla
Exec=vanilla
Icon=com.mattkc.vanilla_rounded
Terminal=false
Type=Application
Categories=Game

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

+114
View File
@@ -0,0 +1,114 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg:svg
width="120mm"
height="120mm"
viewBox="-60 -60 120 120"
sodipodi:docname="com.mattkc.vanilla_rounded.svg"
version="1.1"
id="svg3"
inkscape:version="1.4.2 (ebf0e94, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<svg:defs
id="defs3">
<svg:linearGradient
id="linearGradient2"
inkscape:collect="always">
<svg:stop
style="stop-color:#0097c9;stop-opacity:1;"
offset="0"
id="stop2" />
<svg:stop
style="stop-color:#23caff;stop-opacity:1;"
offset="0.84329319"
id="stop3" />
</svg:linearGradient>
<svg:radialGradient
inkscape:collect="always"
xlink:href="#linearGradient2"
id="radialGradient3"
cx="0"
cy="0"
fx="0"
fy="0"
r="60"
gradientUnits="userSpaceOnUse" />
</svg:defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.3244432"
inkscape:cx="181.96326"
inkscape:cy="195.93139"
inkscape:document-units="mm"
inkscape:current-layer="Template"
showgrid="true"
units="mm"
showguides="true"
inkscape:guide-bbox="true"
inkscape:snap-global="true"
inkscape:snap-bbox="true"
inkscape:snap-bbox-midpoints="true"
inkscape:window-width="1920"
inkscape:window-height="1008"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-grids="true"
id="namedview1"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1" />
<svg:metadata
id="metadata2822">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</svg:metadata>
<svg:g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="Template">
<svg:rect
style="fill:url(#radialGradient3);fill-opacity:1;stroke-width:5.85001"
id="rect1"
width="120"
height="120"
x="-60"
y="-60"
rx="20"
ry="20" />
<svg:g
id="g1">
<svg:path
id="rect4"
d="m -30,-30 c -5.183453,0 -10,4.822056 -10,10 v 40 c 0,5.177938 4.816547,10 10,10 h 60 c 5.183453,0 10,-4.822062 10,-10 v -40 c 0,-5.177944 -4.816547,-10 -10,-10 H 24 L 7,15 H -7 l -17,-45 z"
sodipodi:nodetypes="ssssssssccccs"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.02791" />
<svg:path
d="M -10,-30 -6e-6,0 10,-30 Z"
id="path1"
style="fill:#ffffff;fill-opacity:1;stroke-width:1.02791"
sodipodi:nodetypes="cccc" />
</svg:g>
</svg:g>
<script />
</svg:svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File
View File
View File
View File
+7 -6
View File
@@ -1,4 +1,4 @@
add_library(vanilla STATIC
add_library(libvanilla STATIC
gamepad/audio.c
gamepad/command.c
gamepad/gamepad.c
@@ -8,19 +8,20 @@ add_library(vanilla STATIC
vanilla.c
)
target_include_directories(vanilla PRIVATE
target_include_directories(libvanilla PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
)
set_target_properties(vanilla PROPERTIES PUBLIC_HEADER "vanilla.h")
set_target_properties(libvanilla PROPERTIES PREFIX "")
set_target_properties(libvanilla PROPERTIES PUBLIC_HEADER "vanilla.h")
if (NOT ANDROID)
target_link_libraries(vanilla PRIVATE
target_link_libraries(libvanilla PRIVATE
pthread
)
endif()
install(TARGETS vanilla)
install(TARGETS libvanilla)
if (VANILLA_BUILD_TESTS)
function(add_test TEST_NAME TEST_FILES)
@@ -28,7 +29,7 @@ if (VANILLA_BUILD_TESTS)
${TEST_FILES}
)
target_link_libraries(${TEST_NAME} PRIVATE vanilla m)
target_link_libraries(${TEST_NAME} PRIVATE libvanilla m)
target_include_directories(${TEST_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
endfunction()