mirror of
https://github.com/aap/librw.git
synced 2026-08-10 09:37:04 +01:00
63 lines
1.5 KiB
Makefile
63 lines
1.5 KiB
Makefile
# PS2 build (SCE toolchain). PC builds are generated by premake.
|
|
# Build librw for ps2 first: premake5 gmake; make -C build librw config=debug_ps2
|
|
|
|
CC=ee-gcc
|
|
CXX=ee-g++
|
|
|
|
TARGET=demoreel
|
|
|
|
LIBRW := ../..
|
|
OBJDIR := obj/ps2
|
|
|
|
SRC := main.cpp proctex.cpp scene_tunnel.cpp scene_particles.cpp scene_knot.cpp
|
|
SKELSRC := skeleton.cpp ps2.cpp
|
|
|
|
SCELIBDIR := /usr/local/sce/ee/lib
|
|
|
|
CFLAGS := -Os -DRW_PS2 -fno-common -fno-exceptions
|
|
|
|
LIBS = $(LIBRW)/lib/ps2/Debug/librw.a \
|
|
$(SCELIBDIR)/libgraph.a \
|
|
$(SCELIBDIR)/libdma.a \
|
|
$(SCELIBDIR)/libmc.a \
|
|
$(SCELIBDIR)/libpc.a \
|
|
$(SCELIBDIR)/libpad.a \
|
|
$(SCELIBDIR)/libcdvd.a \
|
|
$(SCELIBDIR)/libscf.a
|
|
|
|
GCCLIB := /usr/local/sce/ee/gcc/lib/gcc-lib/ee/3.2-ee-030926
|
|
CRT_BEGIN := $(OBJDIR)/crt0.o $(GCCLIB)/crti.o $(GCCLIB)/crtbegin.o
|
|
CRT_END := $(GCCLIB)/crtend.o $(GCCLIB)/crtn.o
|
|
|
|
OBJ := $(addprefix $(OBJDIR)/,$(SRC:.cpp=.o) $(SKELSRC:.cpp=.o))
|
|
DEP := $(OBJ:.o=.d)
|
|
|
|
INC := -I. \
|
|
-I$(LIBRW) \
|
|
-I$(LIBRW)/skeleton \
|
|
-I/usr/local/sce/common/include \
|
|
-I/usr/local/sce/ee/include
|
|
|
|
$(TARGET).elf: $(OBJDIR)/crt0.o $(OBJ)
|
|
$(CXX) -o $@ $(CRT_BEGIN) $(OBJ) $(LIBS) $(CRT_END) -T $(SCELIBDIR)/app.cmd -L$(SCELIBDIR) -lm -nostartfiles -Wl,--gc-sections
|
|
|
|
run: $(TARGET).elf
|
|
dsedb -r run $(TARGET).elf
|
|
|
|
$(OBJDIR)/crt0.o:
|
|
@mkdir -p $(@D)
|
|
$(CC) -c -xassembler-with-cpp -o $@ $(SCELIBDIR)/crt0.s
|
|
|
|
$(OBJDIR)/%.o: %.cpp
|
|
@mkdir -p $(@D)
|
|
$(CXX) $(CFLAGS) $(INC) -MMD -c $< -o $@
|
|
|
|
$(OBJDIR)/%.o: $(LIBRW)/skeleton/%.cpp
|
|
@mkdir -p $(@D)
|
|
$(CXX) $(CFLAGS) $(INC) -MMD -c $< -o $@
|
|
|
|
clean:
|
|
rm -rf $(OBJDIR) $(TARGET).elf
|
|
|
|
-include $(DEP)
|