- Inside an album, SELECT cycles newest / oldest / file name A-Z / Z-A (natural, case-insensitive; name orders drop the month headers and L/R jump by initial letter). Asset originalFileName is now parsed. - Full-screen viewer: Triangle or the "Save to Vita" button downloads the original (falling back to Immich's full-size / preview JPEG) and exports it to the Photos app via ScePhotoExport (new src/export.c). The video downloader is now a generic download_to_file(). - R / L turn the whole viewer 90 degrees clockwise / counter-clockwise so the Vita can be held upright (new src/viewrot.c): it renders into a portrait render target drawn rotated, and maps d-pad, sticks and touch into the turned screen. Zoom moves to the right stick only. SCREEN_W/H are now variables for that logical screen. - Server & Backup page: album cover shape setting (vertical 3:4, square, panoramic 16:9), saved as covershape= in config.txt. - Test builds: "rup" holds the right stick up in test_input.txt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
70 lines
1.9 KiB
CMake
70 lines
1.9 KiB
CMake
cmake_minimum_required(VERSION 3.10)
|
|
|
|
if(NOT DEFINED CMAKE_TOOLCHAIN_FILE)
|
|
if(DEFINED ENV{VITASDK})
|
|
set(CMAKE_TOOLCHAIN_FILE "$ENV{VITASDK}/share/vita.toolchain.cmake" CACHE PATH "toolchain file")
|
|
else()
|
|
message(FATAL_ERROR "Please define VITASDK to point to your SDK path!")
|
|
endif()
|
|
endif()
|
|
|
|
project(vitaImmich C)
|
|
include("${VITASDK}/share/vita.cmake" REQUIRED)
|
|
|
|
set(VITA_APP_NAME "Immich")
|
|
set(VITA_TITLEID "VIMM00001")
|
|
set(VITA_VERSION "01.00")
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O2")
|
|
|
|
add_executable(${PROJECT_NAME}
|
|
src/main.c
|
|
)
|
|
|
|
target_link_libraries(${PROJECT_NAME}
|
|
vita2d
|
|
curl
|
|
ssl
|
|
crypto
|
|
zstd
|
|
freetype
|
|
png
|
|
jpeg
|
|
z
|
|
m
|
|
# OpenSSL 1.0.2's libcrypto.a has a threads_pthread.o that references
|
|
# pthread_getspecific/pthread_self/pthread_equal; the Vita newlib stubs that
|
|
# live in libpthread.a.
|
|
pthread
|
|
SceDisplay_stub
|
|
SceGxm_stub
|
|
SceSysmodule_stub
|
|
SceCtrl_stub
|
|
SceTouch_stub
|
|
SceCommonDialog_stub
|
|
SceIme_stub
|
|
ScePgf_stub
|
|
SceAppMgr_stub
|
|
SceNet_stub
|
|
SceNetCtl_stub
|
|
SceAvPlayer_stub
|
|
SceAudio_stub
|
|
ScePhotoExport_stub
|
|
)
|
|
|
|
# UNSAFE: reading the camera folders (ux0:picture, ux0:video) is outside
|
|
# the safe-homebrew sandbox
|
|
vita_create_self(${PROJECT_NAME}.self ${PROJECT_NAME} UNSAFE)
|
|
vita_create_vpk(${PROJECT_NAME}.vpk ${VITA_TITLEID} ${PROJECT_NAME}.self
|
|
VERSION ${VITA_VERSION}
|
|
NAME ${VITA_APP_NAME}
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/sce_sys/icon0.png sce_sys/icon0.png
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/Overpass-SemiBold.ttf font.ttf
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/OFL-Overpass.txt OFL-Overpass.txt
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/immich_logo.png logo.png
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/cloud_server.png cloud_server.png
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/cloud_device.png cloud_device.png
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/cloud_both.png cloud_both.png
|
|
FILE ${CMAKE_SOURCE_DIR}/assets/maptiles.pak maptiles.pak
|
|
)
|