X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=ginge.git;a=blobdiff_plain;f=loader%2FMakefile;h=e76d5df4b7c0fa5bafdcc1586030c6bb4744f875;hp=0a28670ecb11fb7382db843b5880abb706b83c74;hb=f2a1fca9e81b773927c0b28dffaa6e2ee8a5956a;hpb=4d0451847a77d420284c7fb0f50b1f167c1118ee diff --git a/loader/Makefile b/loader/Makefile index 0a28670..e76d5df 100644 --- a/loader/Makefile +++ b/loader/Makefile @@ -3,10 +3,11 @@ CROSS_COMPILE ?= arm-linux- CC = $(CROSS_COMPILE)gcc AS = $(CROSS_COMPILE)as CFLAGS += -Wall -ggdb -DLOADER -LDFLAGS += -ggdb -lpthread -lrt +LDFLAGS += -ggdb +#LDFLAGS += -nodefaultlibs # NYET ifndef DEBUG CFLAGS += -O2 -fno-strict-aliasing -LDFLAGS += -s -O2 +LDFLAGS += -O2 endif ifdef DBG CFLAGS += -DDBG=$(DBG) @@ -16,34 +17,35 @@ ifeq "$(ARCH)" "ia32" ARCH = ia32 CFLAGS += -m32 LDFLAGS += -m32 -ASFLAGS += --32 endif ifeq "$(ARCH)" "arm" -ASFLAGS += -mfloat-abi=soft -OBJ += sys_cacheflush.o emu_arm.o +OBJ += syscalls.o emu_arm.o endif ifdef PND CFLAGS += -DPND -OBJ += host_pnd.o +TAG = _pnd endif ifdef WIZ CFLAGS += -DWIZ -OBJ += host_wiz.o +OBJ += wiz_video_arm.o +TAG = _wiz endif vpath %.c = ../common/ +vpath %.s = ../common/ -TARGET_S = ginge_sloader -TARGET_D = ginge_dyn +TARGET_S = ginge_sloader$(TAG) +TARGET_D = ginge_dyn$(TAG) -OBJ += emu.o host_fb.o cmn.o +OBJ += emu.o host.o host_fb.o cmn.o llibc.o OBJ_S += $(OBJ) loader.o loader_$(ARCH).o patches.o OBJ_D += $(OBJ) dl.o all: $(TARGET_S) $(TARGET_D) $(TARGET_S): LDFLAGS += -Wl,-T script_$(ARCH).lds -$(TARGET_D): LDFLAGS += -ldl -Wl,--version-script=$(TARGET_D).symver +$(TARGET_D): LDFLAGS += -ldl -Wl,--version-script=ginge_dyn.symver +$(TARGET_D): LDFLAGS += -Wl,--no-undefined $(TARGET_S): $(OBJ_S) $(CC) -o $@ $^ -static $(LDFLAGS) @@ -51,10 +53,14 @@ $(TARGET_S): $(OBJ_S) $(TARGET_D): $(OBJ_D) $(CC) -o $@ $^ -shared $(LDFLAGS) +# easier to support old toolchains with this +%.o: %.s + $(CC) -o $@ -c $< $(CFLAGS) + clean: $(RM) $(TARGET_S) $(TARGET_D) $(OBJ_S) $(OBJ_D) # basic deps dl.o patches.o: override.c *.o: header.h - +host_fb.o: libpicofe/linux/fbdev.c