f76ebe2d75
Build the OSLEC echo canceller (drivers/staging/echo and dahdi_echocan_oslec) if the code of oslec is present in the tree. Also closing another issue regarding documentation of building OSLEC, as it is now even clearer than before. Patch has been used in the Debian package for quite some time. Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> (closes issue DAHLIN-110) Reported by: biohumanoid (Pavel Selivanov) Patches: oslec_auto.diff uploaded by tzafrir (license 5035) (closes issue DAHLIN-261) git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10440 a0bf4364-ded3-4de4-8d8a-66a801d63aff
148 lines
5.1 KiB
Makefile
148 lines
5.1 KiB
Makefile
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI) += dahdi.o
|
|
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC) += dahdi_dynamic.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_LOC) += dahdi_dynamic_loc.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETH) += dahdi_dynamic_eth.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETHMF) += dahdi_dynamic_ethmf.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TRANSCODE) += dahdi_transcode.o
|
|
|
|
ifdef CONFIG_PCI
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTC4XXP) += wctc4xxp/
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM24XXP) += wctdm24xxp/
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE12XP) += wcte12xp/
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM) += wctdm.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_VOICEBUS) += voicebus/
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCB4XXP) += wcb4xxp/
|
|
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT1XXP) += wct1xxp.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE11XP) += wcte11xp.o
|
|
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCFXO) += wcfxo.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TOR2) += tor2.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_PCIRADIO) += pciradio.o
|
|
endif
|
|
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp/
|
|
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_JPAH) += dahdi_echocan_jpah.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE) += dahdi_echocan_sec.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE2) += dahdi_echocan_sec2.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_KB1) += dahdi_echocan_kb1.o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_MG2) += dahdi_echocan_mg2.o
|
|
|
|
obj-m += $(DAHDI_MODULES_EXTRA)
|
|
|
|
# If you want to build OSLEC, include the code in the standard location:
|
|
# drivers/staging/echo . The DAHDI OSLEC echo canceller will be built as
|
|
# well:
|
|
ifneq (,$(wildcard $(src)/../staging/echo/echo.c))
|
|
obj-m += dahdi_echocan_oslec.o
|
|
obj-m += ../staging/echo/
|
|
endif
|
|
|
|
CFLAGS_MODULE += -I$(DAHDI_INCLUDE) -I$(src)
|
|
|
|
ifndef HOTPLUG_FIRMWARE
|
|
ifneq (,$(filter y m,$(CONFIG_FW_LOADER)))
|
|
HOTPLUG_FIRMWARE := yes
|
|
else
|
|
HOTPLUG_FIRMWARE := no
|
|
endif
|
|
export HOTPLUG_FIRMWARE
|
|
endif
|
|
|
|
# fix typo present in CentOS and RHEL 2.6.9 kernels
|
|
BAD_KERNELS_VERS := 22 34 34.0.1 34.0.2
|
|
BAD_KERNELS := $(foreach ver,$(BAD_KERNELS_VERS),2.6.9-$(ver).EL 2.6.9-$(ver).ELsmp)
|
|
ifneq (,$(filter $(KVERS),$(BAD_KERNELS)))
|
|
EXTRA_CFLAGS+=-Drw_lock_t=rwlock_t
|
|
endif
|
|
|
|
# A number of Fedora 10 (9 also?) kernels backported hrtimer to 2.6.27
|
|
# as part of an ALSA backport. TODO: Any better way to detect that?
|
|
ifeq (1,$(shell fgrep -q ' hrtimer_set_expires' include/linux/hrtimer.h 2>/dev/null && echo 1))
|
|
EXTRA_CFLAGS+=-DHAVE_HRTIMER_ACCESSORS=1
|
|
endif
|
|
|
|
ifeq (1,$(shell fgrep -q 'wait_for_completion_timeout' include/linux/completion.h 2>/dev/null && echo 1))
|
|
CFLAGS_MODULE+=-DHAVE_WAIT_FOR_COMPLETION_TIMEOUT=1
|
|
endif
|
|
|
|
# In 2.6.18 skb_linearize changed; however, some distros backported the change
|
|
ifneq (,$(wildcard $(srctree)/include/linux/skbuff.h))
|
|
ifeq ($(shell grep "skb_linearize.*(.*, .* gfp)" $(srctree)/include/linux/skbuff.h),)
|
|
CFLAGS_dahdi_dynamic_eth.o := -DNEW_SKB_LINEARIZE
|
|
CFLAGS_dahdi_dynamic_ethmf.o := -DNEW_SKB_LINEARIZE
|
|
endif
|
|
endif
|
|
|
|
dahdi-objs := dahdi-base.o dahdi-sysfs.o dahdi-version.o
|
|
|
|
###############################################################################
|
|
# Find appropriate ARCH value for VPMADT032 and HPEC binary modules
|
|
###############################################################################
|
|
|
|
ifeq ($(ARCH),i386)
|
|
DAHDI_ARCH=x86_32
|
|
else
|
|
ifeq ($(ARCH),x86_64)
|
|
DAHDI_ARCH=x86_64
|
|
else
|
|
ifeq ($(ARCH),x86)
|
|
ifeq ($(CONFIG_X86_32),y)
|
|
DAHDI_ARCH=x86_32
|
|
else
|
|
DAHDI_ARCH=x86_64
|
|
endif
|
|
else
|
|
$(warning CPU Architecture '$(ARCH)' does not support VPMADT032 or HPEC. Skipping.)
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
###############################################################################
|
|
# VPMADT032 Loader
|
|
###############################################################################
|
|
|
|
dahdi_vpmadt032_loader-objs := vpmadt032_loader/dahdi_vpmadt032_loader.o
|
|
|
|
ifneq ($(DAHDI_ARCH),)
|
|
ifneq ($(wildcard $(src)/vpmadt032_loader/vpmadt032_$(DAHDI_ARCH).o_shipped),)
|
|
VPMADT032_LOADER_PRESENT=yes
|
|
dahdi_vpmadt032_loader-objs += vpmadt032_loader/vpmadt032_$(DAHDI_ARCH).o
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_VPMADT032_LOADER) += dahdi_vpmadt032_loader.o
|
|
endif
|
|
endif
|
|
|
|
###############################################################################
|
|
# HPEC Support
|
|
###############################################################################
|
|
|
|
dahdi_echocan_hpec-objs := hpec/dahdi_echocan_hpec.o
|
|
CFLAGS_dahdi_echocan_hpec.o := -I$(src)/hpec
|
|
|
|
ifneq ($(DAHDI_ARCH),)
|
|
ifneq ($(wildcard $(src)/hpec/hpec_$(DAHDI_ARCH).o_shipped),)
|
|
HPEC_PRESENT=yes
|
|
dahdi_echocan_hpec-objs += hpec/hpec_$(DAHDI_ARCH).o
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(HPEC_PRESENT),yes)
|
|
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_HPEC) += dahdi_echocan_hpec.o
|
|
endif
|
|
|
|
$(obj)/pciradio.o: $(obj)/radfw.h
|
|
$(obj)/tor2.o: $(obj)/tor2fw.h
|
|
|
|
hostprogs-y := makefw
|
|
|
|
$(obj)/tor2fw.h: $(src)/tormenta2.rbt $(obj)/makefw
|
|
$(obj)/makefw $< tor2fw > $@
|
|
|
|
$(obj)/radfw.h: $(src)/pciradio.rbt $(obj)/makefw
|
|
$(obj)/makefw $< radfw > $@
|
|
|
|
clean-files := radfw.h tor2fw.h
|