Makefile 829 B

1234567891011121314151617181920212223242526
  1. CC=$(DragonOS_GCC)/x86_64-elf-gcc
  2. LD=ld
  3. OBJCOPY=objcopy
  4. # 修改这里,把它改为你的relibc的sysroot路径
  5. RELIBC_OPT=$(DADK_BUILD_CACHE_DIR_RELIBC_0_1_0)
  6. CFLAGS=-I $(RELIBC_OPT)/include -D__dragonos__
  7. tmp_output_dir=$(ROOT_PATH)/bin/tmp/user
  8. output_dir=$(DADK_BUILD_CACHE_DIR_TEST_FSTAT_0_1_0)
  9. LIBC_OBJS:=$(shell find $(RELIBC_OPT)/lib -name "*.o" | sort )
  10. LIBC_OBJS+=$(RELIBC_OPT)/lib/libc.a
  11. all: main.o
  12. mkdir -p $(tmp_output_dir)
  13. $(LD) -b elf64-x86-64 -z muldefs -o $(tmp_output_dir)/test_fstat $(shell find . -name "*.o") $(LIBC_OBJS) -T link.lds
  14. $(OBJCOPY) -I elf64-x86-64 -R ".eh_frame" -R ".comment" -O elf64-x86-64 $(tmp_output_dir)/test_fstat $(output_dir)/test_fstat.elf
  15. mv $(output_dir)/test_fstat.elf $(output_dir)/test_fstat
  16. main.o: main.c
  17. $(CC) $(CFLAGS) -c main.c -o main.o
  18. clean:
  19. rm -f *.o