Prepare the initial stubs

This commit is contained in:
TennesseeTrash 2025-05-25 00:42:58 +02:00
parent 969e0390fd
commit aea51d9e77
11 changed files with 104 additions and 0 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
build/
.cache/

11
CMake/ctre.cmake Normal file
View file

@ -0,0 +1,11 @@
include(FetchContent)
FetchContent_Declare(
ctre
GIT_REPOSITORY https://code.3011.io/Mirrors/compile-time-regular-expressions
GIT_TAG v3.10.0
)
FetchContent_MakeAvailable(
ctre
)

11
CMake/pugixml.cmake Normal file
View file

@ -0,0 +1,11 @@
include(FetchContent)
FetchContent_Declare(
pugixml
GIT_REPOSITORY https://code.3011.io/Mirrors/pugixml
GIT_TAG v1.15
)
FetchContent_MakeAvailable(
pugixml
)

11
CMakeLists.txt Normal file
View file

@ -0,0 +1,11 @@
cmake_minimum_required(VERSION 3.25)
project(kanjivg-tools
LANGUAGES CXX
)
add_subdirectory(Libraries)
if(PROJECT_IS_TOP_LEVEL)
add_subdirectory(Tools)
endif()

1
Libraries/CMakeLists.txt Normal file
View file

@ -0,0 +1 @@
add_subdirectory(Kanimaji)

View file

@ -0,0 +1,25 @@
include(${PROJECT_SOURCE_DIR}/CMake/ctre.cmake)
include(${PROJECT_SOURCE_DIR}/CMake/pugixml.cmake)
add_library(Kanimaji STATIC)
target_compile_features(Kanimaji
PUBLIC
cxx_std_23
)
target_link_libraries(Kanimaji
PRIVATE
ctre
pugixml
)
target_include_directories(Kanimaji
PUBLIC
"Include"
)
target_sources(Kanimaji
PRIVATE
"Source/Kanimaji.cpp"
)

View file

@ -0,0 +1,11 @@
#ifndef KANIMAJI_KANIMAJI_HPP
#define KANIMAJI_KANIMAJI_HPP
#include <string>
namespace Kanimaji
{
bool Animate(const std::string& source, const std::string& destination);
}
#endif // KANIMAJI_KANIMAJI_HPP

View file

@ -0,0 +1,9 @@
#include "Kanimaji/Kanimaji.hpp"
namespace Kanimaji
{
bool Animate(const std::string& source, const std::string& destination)
{
return false;
}
}

1
Tools/CMakeLists.txt Normal file
View file

@ -0,0 +1 @@
add_subdirectory(KanimajiTool)

View file

@ -0,0 +1,16 @@
add_executable(KanimajiTool)
target_compile_features(KanimajiTool
PRIVATE
cxx_std_23
)
target_link_libraries(KanimajiTool
PRIVATE
Kanimaji
)
target_sources(KanimajiTool
PRIVATE
"Main.cpp"
)

View file

@ -0,0 +1,6 @@
#include <Kanimaji/Kanimaji.hpp>
int main()
{
}