Compare commits
2 Commits
a63096e629
...
6bd85dfb8f
Author | SHA1 | Date |
---|---|---|
|
6bd85dfb8f | |
|
c66ddc94a5 |
21
Makefile
21
Makefile
|
@ -20,7 +20,8 @@ CXXFLAGS = -std=c++17 -g -I.
|
||||||
LDFLAGS =
|
LDFLAGS =
|
||||||
|
|
||||||
# Deduce objects
|
# Deduce objects
|
||||||
OBJECTS = $(SOURCES:%.cpp=$(BUILD_DIR)/%.o) $(ASSETS:%=$(BUILD_DIR)/%.o)
|
OBJECTS = $(SOURCES:%.cpp=$(BUILD_DIR)/%.o)
|
||||||
|
ASSETS_OBJECTS = $(ASSETS:%=$(BUILD_DIR)/%.o)
|
||||||
|
|
||||||
# Verbose mode
|
# Verbose mode
|
||||||
ifeq ($(VERBOSE), 1)
|
ifeq ($(VERBOSE), 1)
|
||||||
|
@ -39,16 +40,16 @@ TOTAL_FILES := $(shell echo $$(($(words $(SOURCES))+1)))
|
||||||
CURRENT_FILE := 0
|
CURRENT_FILE := 0
|
||||||
|
|
||||||
# Default targets
|
# Default targets
|
||||||
all: $(BUILD_DIR) $(OUTPUT) end
|
all: build_dir $(OUTPUT) end
|
||||||
|
|
||||||
# Create build directory
|
# Create build directory
|
||||||
$(BUILD_DIR):
|
build_dir:
|
||||||
$(Q)mkdir -p $(dir $(OBJECTS))
|
$(Q)mkdir -p $(dir $(OBJECTS)) $(dir $(ASSETS_OBJECTS))
|
||||||
|
|
||||||
# Link target
|
# Link target
|
||||||
$(OUTPUT): $(OBJECTS)
|
$(OUTPUT): $(OBJECTS) $(ASSETS_OBJECTS)
|
||||||
@echo "[100%] $(YELLOW)Linking $(OUTPUT)$(RESET)"
|
@echo "[100%] $(YELLOW)Linking $(OUTPUT)$(RESET)"
|
||||||
$(Q)$(CXX) $(LDFLAGS) -o $@ $(OBJECTS)
|
$(Q)$(CXX) $(LDFLAGS) -o $@ $(OBJECTS) $(ASSETS_OBJECTS)
|
||||||
|
|
||||||
# Build .o files from .cpp
|
# Build .o files from .cpp
|
||||||
$(BUILD_DIR)/%.o: %.cpp
|
$(BUILD_DIR)/%.o: %.cpp
|
||||||
|
@ -58,9 +59,13 @@ $(BUILD_DIR)/%.o: %.cpp
|
||||||
$(Q)mkdir -p $(dir $@)
|
$(Q)mkdir -p $(dir $@)
|
||||||
$(Q)$(CXX) $(CXXFLAGS) -MMD -MP -c $< -o $@
|
$(Q)$(CXX) $(CXXFLAGS) -MMD -MP -c $< -o $@
|
||||||
|
|
||||||
|
# Arch and BFD header version
|
||||||
|
ARCH := $(shell arch)
|
||||||
|
BFD_VER := $(shell objcopy --info 2>/dev/null | grep -m1 '^elf')
|
||||||
|
|
||||||
# Convert .png.o from .png
|
# Convert .png.o from .png
|
||||||
$(BUILD_DIR)/%.png.o: %.png
|
$(BUILD_DIR)/%.o: %
|
||||||
fxconv --toolchain= --cg $< -o $@
|
fxconv --cg --toolchain= --arch=$(ARCH) --outputtarget=$(BFD_VER) $< -o $@
|
||||||
|
|
||||||
# Source files dependencies
|
# Source files dependencies
|
||||||
-include $(OBJECTS:.o=.d)
|
-include $(OBJECTS:.o=.d)
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
#include "game_data.hpp"
|
#include "game_data.hpp"
|
||||||
|
|
||||||
struct texture_t builtin_textures[NB_TEXTURES] = {
|
struct texture_t builtin_textures[NB_TEXTURES] = {
|
||||||
{"player_idle_sheet", &player_idle_sheet},
|
{"player_idle_sheet", &img_player_idle_sheet},
|
||||||
{"player_run_sheet", &player_run_sheet}
|
{"player_run_sheet", &img_player_run_sheet}
|
||||||
};
|
};
|
||||||
|
|
||||||
void load_json_into_game_data(json *json_input, game_data_t *bin_output)
|
void load_json_into_game_data(json *json_input, game_data_t *bin_output)
|
||||||
|
@ -20,4 +20,4 @@ void write_game_data_as_bin_into_file(game_data_t *game_data, std::ofstream *bin
|
||||||
|
|
||||||
void free_game_data(game_data_t *game_data)
|
void free_game_data(game_data_t *game_data)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,8 +7,8 @@
|
||||||
|
|
||||||
using nlohmann::json;
|
using nlohmann::json;
|
||||||
|
|
||||||
extern bopti_image_t player_idle_sheet;
|
extern bopti_image_t img_player_idle_sheet;
|
||||||
extern bopti_image_t player_run_sheet;
|
extern bopti_image_t img_player_run_sheet;
|
||||||
|
|
||||||
typedef struct texture_t {
|
typedef struct texture_t {
|
||||||
const char *name;
|
const char *name;
|
||||||
|
@ -28,4 +28,4 @@ void write_game_data_as_bin_into_file(game_data_t *game_data, std::ofstream *bin
|
||||||
|
|
||||||
void free_game_data(game_data_t *game_data);
|
void free_game_data(game_data_t *game_data);
|
||||||
|
|
||||||
#endif // GAME_DATA_HPP
|
#endif // GAME_DATA_HPP
|
||||||
|
|
Loading…
Reference in New Issue