summaryrefslogtreecommitdiffstats
path: root/target/linux/package/switch/Makefile
blob: 75b35954ec5b587e341d490f3947a5d0e0dd1673 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# $Id$

include $(TOPDIR)/rules.mk
include ../../rules.mk

PKG_NAME := kmod-switch
PKG_RELEASE := 1
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)

include $(TOPDIR)/package/rules.mk

$(eval $(call PKG_template,KMOD_SWITCH,$(PKG_NAME),$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE),$(ARCH),kernel ($(LINUX_VERSION)-$(BOARD)-$(KERNEL_RELEASE))))

ifeq ($(KERNEL_DIR),)
KERNEL_DIR:=$(LINUX_DIR)
endif
KERNEL_VERSION=$(shell echo "$(LINUX_VERSION)" | cut -d. -f1,2)

$(PKG_BUILD_DIR)/.prepared:
	mkdir -p $(PKG_BUILD_DIR)
	cp -fpR ./src/* $(PKG_BUILD_DIR)/
	touch $@

$(PKG_BUILD_DIR)/.configured:
	touch $@

$(PKG_BUILD_DIR)/.built:
	$(MAKE) -C "$(KERNEL_DIR)" \
		CROSS_COMPILE="$(TARGET_CROSS)" \
		ARCH="$(LINUX_KARCH)" \
		PATH="$(TARGET_PATH)" \
		SUBDIRS="$(PKG_BUILD_DIR)" \
		EXTRA_CFLAGS="-DBCMGPIO2" \
		modules
	touch $@
	
$(IPKG_KMOD_SWITCH):
	install -m0755 -d $(IDIR_KMOD_SWITCH)/lib/modules/$(LINUX_VERSION)
	install -m0755 -d $(IDIR_KMOD_SWITCH)/etc/modules.d
	cp -fpR $(PKG_BUILD_DIR)/*.$(LINUX_KMOD_SUFFIX) \
		$(IDIR_KMOD_SWITCH)/lib/modules/$(LINUX_VERSION)
	echo "switch-core" > $(IDIR_KMOD_SWITCH)/etc/modules.d/05-switch
	echo "switch-robo" >> $(IDIR_KMOD_SWITCH)/etc/modules.d/05-switch
	echo "switch-adm" >> $(IDIR_KMOD_SWITCH)/etc/modules.d/05-switch
	$(IPKG_BUILD) $(IDIR_KMOD_SWITCH) $(PACKAGE_DIR)