kumquat-buildroot/package/dahdi-linux/dahdi-linux.mk
Fabrice Fontaine 8402b5263f package/dahdi-linux: bump to 5c840cf43838e0690873e73409491c392333b3b8
- Fix build with kernel >= 5.4 thanks to
  https://git.asterisk.org/gitweb/?p=dahdi/linux.git;a=commit;h=45ac6a30f922f4eef54c0120c2a537794b20cf5c
- Fix build with kernel >= 5.6 thanks to
  https://git.asterisk.org/gitweb/?p=dahdi/linux.git;a=commit;h=34b9c77c9ab2794d4e912461e4c1080c4b1f6184
- Fix typo in dahdi-linux.mk
- Remove deprecated note about kernel >= 4.0 in Config.in
- Add patch to fix build failure with 32-bits kernels raised since
  https://git.asterisk.org/gitweb/?p=dahdi/linux.git;a=commit;h=ffcd08205c71dcb0e060836359418bef20f07ffa
- Update indentation in hash file (two spaces)

Fixes:
 - https://bugs.buildroot.org/show_bug.cgi?id=14311

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2021-11-05 16:05:41 +01:00

93 lines
3.0 KiB
Makefile

################################################################################
#
# dahdi-linux
#
################################################################################
DAHDI_LINUX_VERSION = 5c840cf43838e0690873e73409491c392333b3b8
DAHDI_LINUX_SITE = git://git.asterisk.org/dahdi/linux.git
# We need to download all those firmware blobs ourselves, otherwise
# dahdi-linux will try to download them at install time.
DAHDI_LINUX_FW_SITE = http://downloads.digium.com/pub/telephony/firmware/releases
DAHDI_LINUX_FW_FILES = \
dahdi-fwload-vpmadt032-1.25.0.tar.gz \
dahdi-fw-oct6114-032-1.05.01.tar.gz \
dahdi-fw-oct6114-064-1.05.01.tar.gz \
dahdi-fw-oct6114-128-1.05.01.tar.gz \
dahdi-fw-oct6114-256-1.05.01.tar.gz \
dahdi-fw-tc400m-MR6.12.tar.gz \
dahdi-fw-hx8-2.06.tar.gz \
dahdi-fw-vpmoct032-1.12.0.tar.gz \
dahdi-fw-te820-1.76.tar.gz \
dahdi-fw-te133-7a001e.tar.gz \
dahdi-fw-te134-780017.tar.gz \
dahdi-fw-a8b-1f001e.tar.gz \
dahdi-fw-a8a-1d0017.tar.gz \
dahdi-fw-a4b-d001e.tar.gz \
dahdi-fw-a4a-a0017.tar.gz \
dahdi-fw-te435-13001e.tar.gz \
dahdi-fw-te436-10017.tar.gz
DAHDI_LINUX_EXTRA_DOWNLOADS = \
$(patsubst %,$(DAHDI_LINUX_FW_SITE)/%,$(DAHDI_LINUX_FW_FILES))
# dahdi-linux claims to be GPLv2 with parts LGPLv2.1 (not 'or later'),
# but there are the so-called firmware files (downloaded above) for
# which the license is unclear: the header claims to be GPLv2, the
# 'loader-wrapper' claims to be GPLv2, but there are two so-called
# 'firmware' binary-only .o blobs for which the license is not
# explicited, which look like they end up as part of a kernel module,
# and for which the source is nowhere to be found on the upstream site
# (they are only for x86/x86_64, but we still list them unconditionally).
DAHDI_LINUX_LICENSE = GPL-2.0, LGPL-2.1, unknown (firmware files)
DAHDI_LINUX_LICENSE_FILES = LICENSE LICENSE.LGPL
DAHDI_LINUX_INSTALL_STAGING = YES
DAHDI_LINUX_MODULE_SUBDIRS = drivers/dahdi
DAHDI_LINUX_MODULE_MAKE_OPTS = \
KSRC=$(LINUX_DIR) \
KVERS=$(LINUX_VERSION_PROBED) \
DAHDI_BUILD_ALL=m \
DAHDI_INCLUDE=$(@D)/include \
INSTALL_MOD_DIR=dahdi
define DAHDI_LINUX_EXTRACT_FW
$(foreach f,$(DAHDI_LINUX_FW_FILES),\
cp $(DAHDI_LINUX_DL_DIR)/$(f) $(@D)/drivers/dahdi/firmware/$(f)$(sep))
endef
DAHDI_LINUX_POST_EXTRACT_HOOKS += DAHDI_LINUX_EXTRACT_FW
define DAHDI_LINUX_LINUX_CONFIG_FIXUPS
$(call KCONFIG_ENABLE_OPT,CONFIG_CRC_CCITT)
endef
# Need to pass the same options as for building the modules, because
# it wants to scan Linux' .config file to check whether some options
# are set or not (like CONFIG_FW_LOADER).
define DAHDI_LINUX_CONFIGURE_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
$(DAHDI_LINUX_MODULE_MAKE_OPTS) \
prereq
endef
define DAHDI_LINUX_INSTALL_STAGING_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
$(DAHDI_LINUX_MODULE_MAKE_OPTS) \
DESTDIR=$(STAGING_DIR) \
install-include
endef
define DAHDI_LINUX_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
$(DAHDI_LINUX_MODULE_MAKE_OPTS) \
DESTDIR=$(TARGET_DIR) \
install-firmware \
install-xpp-firm
endef
$(eval $(kernel-module))
$(eval $(generic-package))