X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=ginge.git;a=blobdiff_plain;f=loader%2FMakefile;h=423e5412ac704df30339164edd4821b3367dd3b6;hp=67dd24cf087e199e571b2d9e95c08b0375a6c22c;hb=7fd42181a7f66b4403076cd9de98e18140a7eaf8;hpb=11913091045ebc44f003138d9e69cdc91fe4982e diff --git a/loader/Makefile b/loader/Makefile index 67dd24c..423e541 100644 --- a/loader/Makefile +++ b/loader/Makefile @@ -1,9 +1,18 @@ +ARCH ?= arm +CROSS_COMPILE ?= arm-linux- CC = $(CROSS_COMPILE)gcc AS = $(CROSS_COMPILE)as -CFLAGS += -Wall -ggdb -LDFLAGS += -static -ggdb +CFLAGS += -Wall -ggdb -DLOADER +LDFLAGS += -ggdb -lpthread -lrt +ifndef DEBUG +CFLAGS += -O2 -fno-strict-aliasing +LDFLAGS += -s -O2 +endif +ifdef DBG +CFLAGS += -DDBG=$(DBG) +endif -ifndef ARCH +ifeq "$(ARCH)" "ia32" ARCH = ia32 CFLAGS += -m32 LDFLAGS += -m32 @@ -14,11 +23,30 @@ ASFLAGS += -mfloat-abi=soft OBJ += sys_cacheflush.o endif -OBJ += loader.o loader_$(ARCH).o patches.o emu.o +vpath %.c = ../common/ + +TARGET_S = ginge_sloader +TARGET_D = ginge_dyn + +OBJ += emu.o host_fb.o host_pnd.o cmn.o +OBJ_S += $(OBJ) loader.o loader_$(ARCH).o patches.o +OBJ_D += $(OBJ) dl.o -loader: $(OBJ) +all: $(TARGET_S) $(TARGET_D) -loader: LDFLAGS += -Wl,-T script_$(ARCH).lds +$(TARGET_S): LDFLAGS += -Wl,-T script_$(ARCH).lds +$(TARGET_D): LDFLAGS += -ldl + +$(TARGET_S): $(OBJ_S) + $(CC) -o $@ $^ -static $(LDFLAGS) + +$(TARGET_D): $(OBJ_D) + $(CC) -o $@ $^ -shared $(LDFLAGS) clean: - $(RM) loader $(OBJ) + $(RM) $(TARGET_S) $(TARGET_D) $(OBJ_S) $(OBJ_D) + +# basic deps +dl.o patches.o: override.c +*.o: header.h +