]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - package/dahdi-linux/dahdi-linux.mk
package/dahdi-linux: use package's DL_DIR
[coffee/buildroot.git] / package / dahdi-linux / dahdi-linux.mk
1 ################################################################################
2 #
3 # dahdi-linux
4 #
5 ################################################################################
6
7 DAHDI_LINUX_VERSION = 2.11.1
8 DAHDI_LINUX_SITE = http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases
9
10 # We need to download all thoe firmware blobs ourselves, otherwise
11 # dahdi-linux will try to download them at install time.
12 DAHDI_LINUX_FW_SITE = http://downloads.digium.com/pub/telephony/firmware/releases
13 DAHDI_LINUX_FW_FILES = \
14         dahdi-fwload-vpmadt032-1.25.0.tar.gz \
15         dahdi-fw-oct6114-032-1.05.01.tar.gz \
16         dahdi-fw-oct6114-064-1.05.01.tar.gz \
17         dahdi-fw-oct6114-128-1.05.01.tar.gz \
18         dahdi-fw-oct6114-256-1.05.01.tar.gz \
19         dahdi-fw-tc400m-MR6.12.tar.gz \
20         dahdi-fw-hx8-2.06.tar.gz \
21         dahdi-fw-vpmoct032-1.12.0.tar.gz \
22         dahdi-fw-te820-1.76.tar.gz \
23         dahdi-fw-te133-7a001e.tar.gz \
24         dahdi-fw-te134-780017.tar.gz \
25         dahdi-fw-a8b-1f001e.tar.gz \
26         dahdi-fw-a8a-1d0017.tar.gz \
27         dahdi-fw-a4b-d001e.tar.gz \
28         dahdi-fw-a4a-a0017.tar.gz \
29         dahdi-fw-te435-13001e.tar.gz \
30         dahdi-fw-te436-10017.tar.gz
31
32 DAHDI_LINUX_EXTRA_DOWNLOADS = \
33         $(patsubst %,$(DAHDI_LINUX_FW_SITE)/%,$(DAHDI_LINUX_FW_FILES))
34
35 # dahdi-linux claims to be GPLv2 with parts LGPLv2.1 (not 'or later'),
36 # but there are the so-called firmware files (downloaded above) for
37 # which the license is unclear: the header claims to be GPLv2, the
38 # 'loader-wrapper' claims to be GPLv2, but there are two so-called
39 # 'firmware' binary-only .o blobs for which the license is not
40 # explicited, which look like they end up as part of a kernel module,
41 # and for which the source is nowhere to be found on the upstream site
42 # (they are only for x86/x86_64, but we still list them unconditionally).
43 DAHDI_LINUX_LICENSE = GPL-2.0, LGPL-2.1, unknown (firmware files)
44 DAHDI_LINUX_LICENSE_FILES = LICENSE LICENSE.LGPL
45
46 DAHDI_LINUX_INSTALL_STAGING = YES
47
48 DAHDI_LINUX_MODULE_SUBDIRS = drivers/dahdi
49
50 DAHDI_LINUX_MODULE_MAKE_OPTS = \
51         KSRC=$(LINUX_DIR) \
52         KVERS=$(LINUX_VERSION_PROBED) \
53         DAHDI_BUILD_ALL=m \
54         DAHDI_INCLUDE=$(@D)/include \
55         INSTALL_MOD_DIR=dahdi
56
57 define DAHDI_LINUX_EXTRACT_FW
58         $(foreach f,$(DAHDI_LINUX_FW_FILES),\
59                 cp $(DAHDI_LINUX_DL_DIR)/$(f) $(@D)/drivers/dahdi/firmware/$(f)$(sep))
60 endef
61 DAHDI_LINUX_POST_EXTRACT_HOOKS += DAHDI_LINUX_EXTRACT_FW
62
63 # Need to pass the same options as for building the modules, because
64 # it wants to scan Linux' .config file to check whether some options
65 # are set or not (like CONFIG_FW_LOADER).
66 define DAHDI_LINUX_CONFIGURE_CMDS
67         $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
68                 $(DAHDI_LINUX_MODULE_MAKE_OPTS) \
69                 prereq
70 endef
71
72 define DAHDI_LINUX_INSTALL_STAGING_CMDS
73         $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
74                 $(DAHDI_LINUX_MODULE_MAKE_OPTS) \
75                 DESTDIR=$(STAGING_DIR) \
76                 install-include
77 endef
78
79 define DAHDI_LINUX_INSTALL_TARGET_CMDS
80         $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
81                 $(DAHDI_LINUX_MODULE_MAKE_OPTS) \
82                 DESTDIR=$(TARGET_DIR) \
83                 install-firmware \
84                 install-xpp-firm
85 endef
86
87 $(eval $(kernel-module))
88 $(eval $(generic-package))