rewriting and organizing the code
This commit is contained in:
parent
17799309a9
commit
20cb5a12f8
17 changed files with 10766 additions and 32 deletions
|
|
@ -1,14 +1,24 @@
|
|||
cmake_minimum_required(VERSION 3.20)
|
||||
SET(CMAKE_CXX_FLAGS "-std=c++23 -Werror")
|
||||
file(GLOB_RECURSE ENGINE_SOURCES "src/*.cpp")
|
||||
add_library(engine STATIC ${ENGINE_SOURCES})
|
||||
target_include_directories(engine PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/raylib/include
|
||||
add_library(enginend SHARED ${ENGINE_SOURCES})
|
||||
target_include_directories(enginend PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/include
|
||||
|
||||
)
|
||||
|
||||
target_link_directories(
|
||||
enginend PUBLIC
|
||||
"${CMAKE_SOURCE_DIR}/link")
|
||||
set(ENGINE_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
set(ENGINE_EXPORT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
set(ENGINE_EXPORT_DIR "${CMAKE_SOURCE_DIR}/include/enginend")
|
||||
set_target_properties(enginend PROPERTIES
|
||||
CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/link"
|
||||
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/link"
|
||||
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/link"
|
||||
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/link"
|
||||
)
|
||||
|
||||
file(GLOB_RECURSE HEADER_FILES "${ENGINE_SRC_DIR}/*.h" "${ENGINE_SRC_DIR}/*.hpp")
|
||||
foreach(HEADER ${HEADER_FILES})
|
||||
file(RELATIVE_PATH REL_PATH "${ENGINE_SRC_DIR}" "${HEADER}")
|
||||
|
|
@ -18,7 +28,7 @@ foreach(HEADER ${HEADER_FILES})
|
|||
get_filename_component(DEST_DIR "${DEST}" DIRECTORY)
|
||||
|
||||
add_custom_command(
|
||||
TARGET engine PRE_BUILD
|
||||
TARGET enginend PRE_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory "${DEST_DIR}"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${HEADER}" "${DEST}"
|
||||
)
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
#include "engine.h"
|
||||
1
engine/src/program.cpp
Normal file
1
engine/src/program.cpp
Normal file
|
|
@ -0,0 +1 @@
|
|||
#include "program.h"
|
||||
14
engine/src/program.h
Normal file
14
engine/src/program.h
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#pragma once
|
||||
#define CFG this->CONF()
|
||||
inline const char* COMMONCONFIG();
|
||||
class program {
|
||||
public:
|
||||
program():client(false){}
|
||||
program(bool isclient):client(isclient){}
|
||||
virtual const char* CONF()=0;
|
||||
const bool client;
|
||||
virtual void boot()=0;
|
||||
virtual void tick()=0;
|
||||
virtual void draw()=0;
|
||||
virtual void exit()=0;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue