X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Fld-acess.so_src%2FMakefile;h=b4fa2483e2726a1eefa181cd763c3eb71d30f3c5;hb=d4b689239171d6786d20accfa3e8db7688271a68;hp=668460a06f5b9ebdd2800b4e4737078bc0e6de4e;hpb=560e97380a10c4a8cd8b14b2b7f5d133e32759e0;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/ld-acess.so_src/Makefile b/Usermode/Libraries/ld-acess.so_src/Makefile index 668460a0..b4fa2483 100644 --- a/Usermode/Libraries/ld-acess.so_src/Makefile +++ b/Usermode/Libraries/ld-acess.so_src/Makefile @@ -5,18 +5,49 @@ -include ../Makefile.cfg OBJ := main.o lib.o loadlib.o export.o elf.o pe.o -OBJ += core.ao vfs.ao mm.ao +OBJ += arch/$(ARCHDIR).ao_ BIN = ld-acess.so EXTRABIN := libld-acess.so +EXTRACLEAN = $(_OBJPREFIX)_stublib.o +INCFILES := sys/sys.h -CFLAGS = -Wall -fno-builtin -fno-leading-underscore -fno-stack-protector +CFLAGS = -g -Wall -fno-builtin -fno-stack-protector -fPIC +# -fno-leading-underscore CFLAGS += $(CPPFLAGS) -ASFLAGS = -felf -LDFLAGS = -T link.ld -Map map.txt --export-dynamic +LDFLAGS = -g -T arch/$(ARCHDIR).ld -Map map.txt --export-dynamic + +ifeq ($(ARCH),native) +XBIN := $(addprefix $(OUTPUTDIR)Libs/,$(EXTRABIN)) +$(XBIN): obj-$(ARCH)/_stublib.o +all: $(XBIN) +CFLAGS += -ffreestanding +LDFLAGS := +BIN := +OBJ := +endif include ../Makefile.tpl -$(_XBIN): $(_BIN) +# create libld-acess.so +$(_XBIN): $(_OBJPREFIX)_stublib.o @echo [LD] -o -shared libld-acess.so - @$(LD) $(LDFLAGS) -shared -o $@ $(OBJ) + $(LD) -shared -o $@ $< +# @$(LD) $(LDFLAGS) -o $@ $(OBJ) + + +# Override .ao to look in the object prefix for the source +$(_OBJPREFIX)arch/$(ARCHDIR).ao_: $(_OBJPREFIX)arch/$(ARCHDIR).$(ASSUFFIX) + @echo [AS] -o $@ + @mkdir -p $(dir $@) + @$(AS) $(ASFLAGS) -o $@ $< + +#.PRECIOUS: $(OBJ:%.ao=%.asm) + +# Preprocessing objects if needed +$(_OBJPREFIX)arch/$(ARCHDIR).$(ASSUFFIX): arch/$(ARCHDIR).$(ASSUFFIX).h arch/syscalls.s.h + @echo [CPP] -o $@ + @mkdir -p $(dir $@) + @$(CPP) $(CPPFLAGS) -P -D__ASSEMBLER__ $< -o $@ + +$(_OBJPREFIX)_stublib.o: arch/syscalls.s.h