Makefile 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. include ../../../../Makefile.configs
  2. include Makefile.am
  3. CFLAGS += -I. -Iinclude -I../.. -I../../../include -I../../../lib \
  4. -I../../../linux-kernel/graphene
  5. ASFLAGS += -I. -Iinclude -I../.. -I../../../include
  6. host_files = libpal-FreeBSD.a pal.map ../../pal-gdb
  7. defs = -DIN_PAL -DPAL_DIR="$(PAL_DIR)"
  8. CFLAGS += $(defs)
  9. ASFLAGS += $(defs)
  10. objs = $(addprefix db_,files devices pipes sockets streams memory threading \
  11. mutex events process object main rtld misc \
  12. exception2) rfork_thread
  13. graphene_lib = .lib/graphene-lib.a
  14. headers = $(wildcard *.h) $(wildcard ../../*.h) $(wildcard ../../../lib/*.h)
  15. .PHONY: all
  16. all: $(host_files)
  17. ifeq ($(DEBUG),1)
  18. CC += -g -gdwarf-2 -gstrict-dwarf
  19. CFLAGS += -DDEBUG
  20. export DEBUG
  21. endif
  22. pal-gdb: pal-gdb.template
  23. sed -e 's:\$$(PAL_DIR):$(PWD):g' $< > $@
  24. chmod 755 $@
  25. libpal-FreeBSD.a: $(addsuffix .o,$(objs)) $(graphene_lib)
  26. $(call cmd,ar_a_o)
  27. %.o: %.c $(headers)
  28. $(call cmd,cc_o_c)
  29. %.i: %.c $(headers)
  30. $(call cmd,cpp_i_c)
  31. %.s: %.c $(headers)
  32. $(call cmd,cc_s_c)
  33. %.o: %.S $(headers)
  34. $(call cmd,as_o_S)
  35. %.s: %.S $(headers)
  36. $(call cmd,cpp_s_S)
  37. include ../../../../Makefile.rules
  38. CLEAN_FILES += $(notdir $(pal_static) $(pal_lib) $(pal_sec) $(pal_loader))
  39. .PHONY: clean
  40. clean:
  41. rm -f $(addsuffix .o,$(objs)) $(host_files) $(CLEAN_FILES)