commit 80b50476f31ca607f9017efc8c6f77cba6db690d parent 099e01a3d7daa1c949ed243c5448581259b3fb12 Author: Alexander Burger <abu@software-lab.de> Date: Sat, 27 Oct 2012 12:31:58 +0200 emu64 continued Diffstat:
M | src64/Makefile | | | 35 | +++++++++++++++++++---------------- |
1 file changed, 19 insertions(+), 16 deletions(-)
diff --git a/src64/Makefile b/src64/Makefile @@ -86,8 +86,9 @@ x86-64.sunOs: $(sFiles) ppc64.linux: $(sFiles) emu: picolisp -picolisp: $(sFiles) $(bin)/picolisp $(lib)/ext $(lib)/ht +picolisp: $(bin)/picolisp $(lib)/ext $(lib)/ht +### Link ### $(bin)/picolisp: $(ARCH)$(SYS).base.o $(CC) -o $(bin)/picolisp $(ARCH)$(SYS).base.o $(LD-MAIN) $(STRIP) $(bin)/picolisp @@ -100,30 +101,32 @@ $(lib)/ht: $(ARCH)$(SYS).ht.o $(CC) -o $(lib)/ht $(ARCH)$(SYS).ht.o $(LD-SHARED) $(STRIP) $(lib)/ht -# Explicit builds for cross-assembly -$(ARCH)$(SYS).base$(FMT): sysdefs arch/$(ARCH).l $(baseFiles) sys/$(ARCH)$(SYS).code.l - ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) base "" $(lib)/map $(baseFiles) sys/$(ARCH)$(SYS).code.l - -$(ARCH)$(SYS).ext$(FMT): sysdefs arch/$(ARCH).l ext.l $(ARCH)$(SYS).base$(FMT) - ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) ext T "" ext.l - -$(ARCH)$(SYS).ht$(FMT): sysdefs arch/$(ARCH).l ht.l $(ARCH)$(SYS).base$(FMT) - ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) ht T "" ht.l +### Assemble ### +.s.o: + $(AS) -o $*.o $*.s +# Compile ### sysdefs: sysdefs.c $(CC) -o sysdefs -D_FILE_OFFSET_BITS=64 sysdefs.c $(STRIP) sysdefs -emu.base.o: - $(CC) -c -O -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 $*.c +emu.base.o: emu.base.c + $(CC) -c -O -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 emu.base.c -emu.ext.o emu.ht.o: +.c.o: $(CC) -c -O -fpic -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 $*.c -.s.o: - $(AS) -o $*.o $*.s +### Translate ### +$(ARCH)$(SYS).base$(FMT): sysdefs arch/$(ARCH).l $(baseFiles) sys/$(ARCH)$(SYS).code.l + ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) base "" $(lib)/map $(baseFiles) sys/$(ARCH)$(SYS).code.l + +$(ARCH)$(SYS).ext$(FMT): sysdefs arch/$(ARCH).l ext.l $(ARCH)$(SYS).base$(FMT) + ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) ext T "" ext.l + +$(ARCH)$(SYS).ht$(FMT): sysdefs arch/$(ARCH).l ht.l $(ARCH)$(SYS).base$(FMT) + ./mkAsm $(ARCH) "$(SYS)" $(FMT) $(OS) ht T "" ht.l -# Clean up +### Clean up ### clean: rm -f emu.*.c *.s *.o *.symtab sysdefs