Makefile 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. ##
  2. # Copyright (C) 2021 Alibaba Group Holding Limited
  3. # Author: LuChongzhi <chongzhi.lcz@alibaba-inc.com>
  4. #
  5. # This program is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License version 2 as
  7. # published by the Free Software Foundation.
  8. ##
  9. DIR_TO_ROOT=../../../../../..
  10. include $(DIR_TO_ROOT)/build.param
  11. TARGET := libcamera_action.a
  12. TARGET_DYNAMIC := libcamera_action.so
  13. OUTPUT_DIR := $(DIR_TO_ROOT)/output/hal
  14. #CFLAGS = -Wall -g -O0
  15. INCLUDE += -I../../../include
  16. SRCS = $(wildcard *.c)
  17. OBJS = $(SRCS:.c=.o)
  18. all: $(TARGET) $(TARGET_DYNAMIC)
  19. $(TARGET_DYNAMIC): $(OBJS)
  20. @mkdir -p $(OUTPUT_DIR)/$(SO_LIB_DIR)
  21. @echo "Linking" $@ "..."
  22. $(CC) -shared -fPIC -o $(OUTPUT_DIR)/$(SO_LIB_DIR)/$@ .obj/*.o $(CFLAGS) $(INCLUDE)
  23. $(TARGET): $(OBJS)
  24. @mkdir -p $(OUTPUT_DIR)
  25. @echo "Linking" $@ "..."
  26. $(AR) -r -o $(OUTPUT_DIR)/$@ .obj/*.o
  27. $(OBJS): %.o:%.c
  28. @mkdir -p .obj
  29. @echo "Compiling" $< "..."
  30. $(CC) $(CFLAGS) $(INCLUDE) -c -o .obj/$(notdir $@) $<
  31. clean:
  32. rm -rf .obj
  33. rm -f $(OUTPUT_DIR)/$(TARGET)
  34. rm -f $(OUTPUT_DIR)/$(SO_LIB_DIR)/$(TARGET_DYNAMIC)
  35. .PHONY: clean all