From 2c0fd84c72d6c9bfad11f2ae26fdbfdfbee26a90 Mon Sep 17 00:00:00 2001 From: Dominic Date: Sun, 12 Oct 2025 18:24:09 -0500 Subject: [PATCH] commit deez --- CMakeLists.txt | 6 +--- cmake/modules/Findlibzip.cmake | 61 ++++++++++++++++++++++++++++++++++ src/rpg/entity/player.c | 1 - tools/assetstool/args.py | 1 + 4 files changed, 63 insertions(+), 6 deletions(-) create mode 100644 cmake/modules/Findlibzip.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 53562f0..1a82005 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,11 +14,6 @@ if(NOT DEFINED DUSK_TARGET_SYSTEM) # set(DUSK_TARGET_SYSTEM "psp") endif() -if(NOT DEFINED DUSK_TARGET_GAME) - set(DUSK_TARGET_GAME "minesweeper") - # set(DUSK_TARGET_GAME "rpg") -endif() - # Prep cache set(DUSK_CACHE_TARGET "dusk-target") @@ -100,6 +95,7 @@ target_include_directories(${DUSK_TARGET_NAME} PUBLIC ) # Build assets +# message(FATAL_ERROR "Building assets for game: ${DUSK_ASSETS}") add_custom_target(DUSK_ASSETS_BUILT ALL COMMAND ${Python3_EXECUTABLE} ${DUSK_TOOLS_DIR}/assetstool/main.py diff --git a/cmake/modules/Findlibzip.cmake b/cmake/modules/Findlibzip.cmake new file mode 100644 index 0000000..bf43e18 --- /dev/null +++ b/cmake/modules/Findlibzip.cmake @@ -0,0 +1,61 @@ +find_package(ZLIB REQUIRED) + +find_path(LIBZIP_INCLUDE_DIR NAMES zip.h) +mark_as_advanced(LIBZIP_INCLUDE_DIR) + +find_library(LIBZIP_LIBRARY NAMES zip) +mark_as_advanced(LIBZIP_LIBRARY) + +get_filename_component(_libzip_libdir ${LIBZIP_LIBRARY} DIRECTORY) +find_file(_libzip_pkgcfg libzip.pc + HINTS ${_libzip_libdir} ${LIBZIP_INCLUDE_DIR}/.. + PATH_SUFFIXES pkgconfig lib/pkgconfig libdata/pkgconfig + NO_DEFAULT_PATH +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args( + LIBZIP + REQUIRED_VARS + LIBZIP_LIBRARY + LIBZIP_INCLUDE_DIR + _libzip_pkgcfg +) + +if (LIBZIP_FOUND) + if (NOT TARGET libzip::zip) + add_library(libzip::zip UNKNOWN IMPORTED) + set_target_properties(libzip::zip + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES ${LIBZIP_INCLUDE_DIR} + INTERFACE_LINK_LIBRARIES ZLIB::ZLIB + IMPORTED_LOCATION ${LIBZIP_LIBRARY} + ) + # (Ab)use the (always) installed pkgconfig file to check if BZip2 is required + file(STRINGS ${_libzip_pkgcfg} _have_extra_libs REGEX Libs) + if(_have_extra_libs MATCHES "-lbz2") + find_package(BZip2 REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES BZip2::BZip2) + endif() + if(_have_extra_libs MATCHES "-lcrypto") + find_package(OpenSSL REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES OpenSSL::Crypto) + endif() + if(_have_extra_libs MATCHES "-lgnutls") + find_package(GnuTLS REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES GnuTLS::GnuTLS) + endif() + if(_have_extra_libs MATCHES "-lnettle") + find_package(Nettle REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES Nettle::Nettle) + endif() + if(_have_extra_libs MATCHES "-llzma") + find_package(LibLZMA REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES LibLZMA::LibLZMA) + endif() + if(_have_extra_libs MATCHES "-lz") + find_package(ZLIB REQUIRED) + set_property(TARGET libzip::zip APPEND PROPERTY INTERFACE_LINK_LIBRARIES ZLIB::ZLIB) + endif() + endif() +endif() diff --git a/src/rpg/entity/player.c b/src/rpg/entity/player.c index a297ef0..121513c 100644 --- a/src/rpg/entity/player.c +++ b/src/rpg/entity/player.c @@ -8,7 +8,6 @@ #include "entity.h" #include "assert/assert.h" #include "input/input.h" -#include "display/tileset/tileset_entities.h" #include "rpg/rpgcamera.h" #include "util/memory.h" #include "time/time.h" diff --git a/tools/assetstool/args.py b/tools/assetstool/args.py index 92de51c..65cce94 100644 --- a/tools/assetstool/args.py +++ b/tools/assetstool/args.py @@ -21,6 +21,7 @@ for inputArg in args.input: continue pieces = file.split('#') + print(f"Input arg: {pieces}") if len(pieces) < 2: print(f"Error: Invalid input asset format '{file}'. Expected format: type#path[#option1%option2...]")