32 lines
1.2 KiB
Makefile
32 lines
1.2 KiB
Makefile
ifeq ($(shell clang 2>/dev/null; echo $$?),1)
|
|
CC = clang
|
|
else
|
|
CC = gcc
|
|
endif
|
|
|
|
VPATH = engine
|
|
OBJ_DIR = $(VPATH)/obj
|
|
|
|
SDL_INCLUDE = -I/usr/include
|
|
DEBUG = -g
|
|
CCFLAGS = -Wall -c $(DEBUG) $(SDL_INCLUDE)
|
|
ifeq ($(OS),Windows_NT)
|
|
BIN = Newsboy.exe
|
|
LDFLAGS = -lm -lmingw32 -lSDL2main -lSDL2 -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lOpenGL32 -lws2_32
|
|
else
|
|
BIN = Newsboy
|
|
LDFLAGS = -lm `sdl2-config --libs` -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lGL
|
|
endif
|
|
OBJ = main.o check.o Text.o PTime.o state.o sprite.o AnimData.o EntityData.o Animation.o Player.o Particle.o VoidMan.o MetaBit.o Entity.o Primitives.o Vector.o Phys.o Message.o Ui.o Music.o report.o Resource.o IdIndex.o Index.o State_Intro.o State_Menu.o State_Options.o State_Animator.o State_Editor.o State_EntEdit.o State_Editor_MapSelect.o State_Editor_Thing.o State_Editor_diag_pl.o State_Editor_diag_decor.o State_Editor_diag_entity.o State_Editor_diag_trigger.o State_Editor_diag_event.o State_Travel.o State_Game.o State_Game_Menu.o LiveMap.o Map.o render.o opengl.o FrameSheet.o fifo.o string.o
|
|
|
|
all: $(BIN)
|
|
|
|
$(BIN): $(patsubst %,$(OBJ_DIR)/%,$(OBJ))
|
|
$(CC) $^ $(LDFLAGS) -o $@
|
|
|
|
$(OBJ_DIR)/%.o: %.c
|
|
$(CC) $(CCFLAGS) $< -o $@
|
|
|
|
clean:
|
|
rm $(OBJ_DIR)/*.o && rm $(BIN)
|