Makefile 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. include Makefile.am
  2. CFLAGS += -I. -I../.. -I../../../include -I../../../lib
  3. ASFLAGS += -I. -I../.. -I../../../include
  4. host_target = libpal-Skeleton.a
  5. defs = -DIN_PAL
  6. objs = $(addprefix db_,files devices pipes sockets streams memory threading \
  7. semaphore events process object main rtld misc ipc exception)
  8. graphene_lib = ../../../lib/graphene-lib.a
  9. headers = $(wildcard *.h) $(wildcard ../../*.h) $(wildcard ../../../lib/*.h)
  10. .PHONY: all
  11. all: $(host_target)
  12. ifeq ($(DEBUG),1)
  13. CC += -gdwarf-2 -g3
  14. CFLAGS += -DDEBUG
  15. export DEBUG
  16. endif
  17. ../../host_endian.h: host_endian.h
  18. $(MAKE) -C ../../ $<
  19. libpal-Skeleton.a: $(addsuffix .o,$(objs)) $(graphene_lib)
  20. @echo [ host/$(PAL_HOST)/$@ ]
  21. @$(AR) $(ARFLAGS) $@ $^
  22. %.asm: %.c $(headers)
  23. $(CC) $(CFLAGS) $(defs) -c $< -o $<.o
  24. @objdump -S $<.o > $@
  25. @rm $<.o
  26. %.o: %.c $(headers)
  27. @echo [ host/$(PAL_HOST)/$@ ]
  28. @$(CC) $(CFLAGS) $(defs) -c $< -o $@
  29. %.o: %.S $(headers)
  30. @echo [ host/$(PAL_HOST)/$@ ]
  31. @$(AS) $(ASFLAGS) $(defs) -c $< -o $@
  32. .PHONY: clean
  33. clean:
  34. rm -f $(addsuffix .o,$(objs)) $(host_target)