X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Fld-acess.so_src%2FMakefile;h=178b75e3117e40e16239f75826deb613b3beb2c7;hb=28484b80f5d1e5f9e502f66484ada925ff833891;hp=d2047716dd91478527f574163740a9bc806f8edc;hpb=abe9f20840b7774b2d84c205f66dfab0991ab867;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/ld-acess.so_src/Makefile b/Usermode/Libraries/ld-acess.so_src/Makefile index d2047716..178b75e3 100644 --- a/Usermode/Libraries/ld-acess.so_src/Makefile +++ b/Usermode/Libraries/ld-acess.so_src/Makefile @@ -4,36 +4,35 @@ -include ../Makefile.cfg -COBJ = main.o lib.o loadlib.o elf.o pe.o -AOBJ = core.ao vfs.ao mm.ao -BIN = ../ld-acess.so +OBJ := main.o lib.o loadlib.o export.o elf.o pe.o +OBJ += arch/$(ARCHDIR).ao +BIN = ld-acess.so +EXTRABIN := libld-acess.so -CFLAGS = -Wall -fno-builtin -fno-leading-underscore -fno-stack-protector -ASFLAGS = -felf -LDFLAGS = -T link.ld -Map map.txt -Bstatic +CFLAGS = -g -Wall -fno-builtin -fno-leading-underscore -fno-stack-protector -fPIC +CFLAGS += $(CPPFLAGS) +LDFLAGS = -g -T arch/$(ARCHDIR).ld -Map map.txt --export-dynamic +include ../Makefile.tpl -.PHONY: all clean install +# create libld-acess.so +$(_XBIN): $(_OBJPREFIX)_stublib.o + @echo [LD] -o -shared libld-acess.so + $(LD) -shared -o $@ $< +# @$(LD) $(LDFLAGS) -o $@ $(OBJ) -all: $(BIN) -clean: - $(RM) $(BIN) $(AOBJ) $(COBJ) ld-acess.dmp ld-acess.dsm link.txt map.txt - -install: $(BIN) - $(xCP) $(BIN) $(DISTROOT)/Libs/ +# Override .ao to look in the object prefix for the source +%.ao: %.$(ASSUFFIX) + @echo [AS] -o $@ + @mkdir -p $(dir $@) + @$(AS) $(ASFLAGS) -o $@ $< -$(BIN): $(AOBJ) $(COBJ) - @echo --- $(LD) -shared -o $@ - @$(LD) $(LDFLAGS) -o $(BIN) $(AOBJ) $(COBJ) > link.txt - $(OBJDUMP) -x $(BIN) > ld-acess.dmp - $(OBJDUMP) -d $(BIN) > ld-acess.dsm +.PRECIOUS: $(OBJ:%.ao=%.asm) -$(COBJ): %.o: %.c - @echo $(CC) -o $@ - @$(CC) $(CFLAGS) -o $@ -c $< +# Preprocessing objects if needed +$(_OBJPREFIX)%: %.h + @echo [CPP] -o $@ + @mkdir -p $(dir $@) + @$(CPP) $(CPPFLAGS) -P -D__ASSEMBLER__ $< -o $@ -$(AOBJ): %.ao: %.asm - @echo $(AS) -o $@ - @$(AS) $(ASFLAGS) -o $@ $< -