Merge branch 'master' of git://git.ucc.asn.au/tpg/acess2
[tpg/acess2.git] / Usermode / Libraries / ld-acess.so_src / Makefile
index 3c02d3d..49afb1e 100644 (file)
@@ -4,18 +4,38 @@
 
 -include ../Makefile.cfg
 
-OBJ := main.o lib.o loadlib.o elf.o pe.o
-OBJ += core.ao vfs.ao mm.ao
+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
+EXTRACLEAN := $(_OBJPREFIX)_stublib.o
 
-CFLAGS   = -Wall -fno-builtin -fno-leading-underscore -fno-stack-protector
-ASFLAGS  = -felf
-LDFLAGS  = -T link.ld -Map map.txt -Bstatic -shared
+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
 
-postbuild: $(OUTPUTDIR)Libs/libld-acess.so
+# create libld-acess.so
+$(_XBIN): $(_OBJPREFIX)_stublib.o
+       @echo [LD] -o -shared libld-acess.so
+       $(LD) -shared -o $@ $<
+#      @$(LD) $(LDFLAGS) -o $@ $(OBJ)
 
-$(OUTPUTDIR)Libs/libld-acess.so:
-       ln -s $(_BIN) $(OUTPUTDIR)Libs/libld-acess.so
+
+# 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
 

UCC git Repository :: git.ucc.asn.au