Kbuild 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. ifeq ($(obj),)
  2. obj := .
  3. endif
  4. DEPTH := ../..
  5. include $(obj)/$(DEPTH)/os/linux/Makefile-linux.common
  6. ifeq ($(ATH_SUPPORT_HTC),1)
  7. INCS = -include $(COMINC)/compat.h -I$(COMINC) -I$(WLAN_TOP)/os/$(OS)/include -I$(WLAN_TOP)/os/$(OS)/src -I$(KERNELPATH)/include
  8. INCS += -I$(WLAN_TOP)/asf/include
  9. endif
  10. INCS += -Iinclude/nbuf -Iinclude/net -Iinclude/os
  11. INCS += -Inbuf/linux -Inet/linux -Ios/linux
  12. INCS += -I$(WLAN_TOP)/../../include
  13. INCS += -I$(WLAN_TOP)/cmn_dev/qdf/inc
  14. INCS += -I$(WLAN_TOP)/cmn_dev/qdf/linux/src
  15. obj-m += qdf.o
  16. EXTRA_CFLAGS+= $(INCS) $(COPTS) -Wno-unused-function
  17. ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
  18. MOD_CFLAGS = -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(qdf.mod)" -D"KBUILD_MODNAME=KBUILD_STR(qdf)"
  19. endif
  20. qdf-objs := \
  21. linux/src/qdf_defer.o \
  22. linux/src/qdf_event.o \
  23. linux/src/qdf_list.o \
  24. linux/src/qdf_lock.o \
  25. linux/src/qdf_mc_timer.o \
  26. linux/src/qdf_mem.o \
  27. linux/src/qdf_module.o \
  28. linux/src/qdf_nbuf.o \
  29. linux/src/qdf_perf.o \
  30. linux/src/qdf_threads.o \
  31. linux/src/qdf_trace.o
  32. #linux/src/qdf_net.o \
  33. #linux/src/qdf_net_event.o \
  34. #linux/src/qdf_net_ioctl.o
  35. #linux/src/qdf_net_wext.o
  36. ifeq ($(BUILD_ADF_NET_IOCTL),1)
  37. EXTRA_CFLAGS+= -DADF_NET_IOCTL_SUPPORT
  38. #adf-objs += os/linux/adf_os_netlink_pvt.o \
  39. # net/linux/adf_net_event.o \
  40. # net/linux/adf_net_wext.o \
  41. # net/linux/adf_net_ioctl.o
  42. endif
  43. ifeq ($(BUILD_ADF_DEFER_PVT),1)
  44. #adf-objs += os/linux/adf_os_defer_pvt.o
  45. endif
  46. ifeq ($(BUILD_ADF_IRQ_PVT),1)
  47. #adf-objs += os/linux/adf_os_irq_pvt.o
  48. endif
  49. ifeq ($(BUILD_ADF_PERF_PROFILING),1)
  50. #adf-objs += os/linux/adf_os_perf_pvt.o
  51. ifeq ($(BUILD_ADF_MIPS_PERF_PROFILING),1)
  52. #adf-objs += os/linux/adf_os_mips_perf_pvt.o
  53. endif
  54. endif
  55. # os/linux/adf_os_pci_pvt.o \
  56. # net/linux/adf_net_ioctl.o \
  57. # net/linux/adf_net_pseudo.o \
  58. clean-files := modules.order
  59. ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
  60. all: qdf.ko
  61. qdf.mod.o: qdf.mod.c
  62. ${CC} -c -o $@ ${EXTRA_CFLAGS} ${MOD_CFLAGS} $<
  63. adf.o: ${adf-objs}
  64. $(LD) -m elf32btsmip -r -o adf.o $(adf-objs)
  65. $(KERNELPATH)/scripts/mod/modpost qdf.o
  66. qdf.ko: qdf.o qdf.mod.o
  67. $(LD) $(LDOPTS) -o qdf.ko qdf.o qdf.mod.o
  68. %.o: %.c
  69. ${CC} -c -o $@ ${EXTRA_CFLAGS} $<
  70. endif