xref: /OK3568_Linux_fs/buildroot/package/alsa-utils/alsa-utils.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# alsa-utils
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunALSA_UTILS_VERSION = 1.2.7
8*4882a593SmuzhiyunALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2
9*4882a593SmuzhiyunALSA_UTILS_SITE = https://www.alsa-project.org/files/pub/utils
10*4882a593SmuzhiyunALSA_UTILS_LICENSE = GPL-2.0
11*4882a593SmuzhiyunALSA_UTILS_LICENSE_FILES = COPYING
12*4882a593SmuzhiyunALSA_UTILS_INSTALL_STAGING = YES
13*4882a593SmuzhiyunALSA_UTILS_DEPENDENCIES = host-pkgconf alsa-lib \
14*4882a593Smuzhiyun	$(if $(BR2_PACKAGE_NCURSES),ncurses) \
15*4882a593Smuzhiyun	$(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate) \
16*4882a593Smuzhiyun	$(TARGET_NLS_DEPENDENCIES)
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun# We're patching configure.ac
19*4882a593SmuzhiyunALSA_UTILS_AUTORECONF = YES
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSACTL),y)
22*4882a593SmuzhiyunALSA_UTILS_SELINUX_MODULES += alsa
23*4882a593Smuzhiyunendif
24*4882a593Smuzhiyun
25*4882a593SmuzhiyunALSA_UTILS_CONF_ENV = \
26*4882a593Smuzhiyun	ac_cv_prog_ncurses5_config=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS) \
27*4882a593Smuzhiyun	LIBS=$(TARGET_NLS_LIBS)
28*4882a593Smuzhiyun
29*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS = \
30*4882a593Smuzhiyun	--disable-xmlto \
31*4882a593Smuzhiyun	--disable-rst2man \
32*4882a593Smuzhiyun	--with-curses=$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncursesw,ncurses)
33*4882a593Smuzhiyun
34*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSALOOP),y)
35*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --enable-alsaloop
36*4882a593Smuzhiyunelse
37*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --disable-alsaloop
38*4882a593Smuzhiyunendif
39*4882a593Smuzhiyun
40*4882a593Smuzhiyunifneq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y)
41*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --disable-alsamixer
42*4882a593Smuzhiyunendif
43*4882a593Smuzhiyun
44*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ALSA_UTILS_BAT),y)
45*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --enable-bat
46*4882a593Smuzhiyun# Analysis support requires fftw single precision
47*4882a593SmuzhiyunALSA_UTILS_DEPENDENCIES += $(if $(BR2_PACKAGE_FFTW_SINGLE),fftw-single)
48*4882a593Smuzhiyunelse
49*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --disable-bat
50*4882a593Smuzhiyunendif
51*4882a593Smuzhiyun
52*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACONF) += usr/sbin/alsaconf
53*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACTL) += usr/sbin/alsactl
54*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSALOOP) += usr/bin/alsaloop
55*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER) += usr/bin/alsamixer
56*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSATPLG) += usr/bin/alsatplg
57*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIDI) += usr/bin/amidi
58*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIXER) += usr/bin/amixer
59*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAY) += usr/bin/aplay usr/bin/arecord
60*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_BAT) += usr/bin/alsabat
61*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_IECSET) += usr/bin/iecset
62*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ACONNECT) += usr/bin/aconnect
63*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAUCM) += usr/bin/alsaucm
64*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAYMIDI) += usr/bin/aplaymidi
65*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI) += usr/bin/arecordmidi
66*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQDUMP) += usr/bin/aseqdump
67*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQNET) += usr/bin/aseqnet
68*4882a593SmuzhiyunALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST) += usr/bin/speaker-test
69*4882a593Smuzhiyun
70*4882a593Smuzhiyundefine ALSA_UTILS_INSTALL_TARGET_CMDS
71*4882a593Smuzhiyun	mkdir -p $(TARGET_DIR)/var/lib/alsa
72*4882a593Smuzhiyun	for i in $(ALSA_UTILS_TARGETS_y); do \
73*4882a593Smuzhiyun		$(INSTALL) -D -m 755 $(STAGING_DIR)/$$i $(TARGET_DIR)/$$i || exit 1; \
74*4882a593Smuzhiyun	done
75*4882a593Smuzhiyun	if [ -x "$(TARGET_DIR)/usr/bin/speaker-test" ]; then \
76*4882a593Smuzhiyun		mkdir -p $(TARGET_DIR)/usr/share/alsa/speaker-test; \
77*4882a593Smuzhiyun		mkdir -p $(TARGET_DIR)/usr/share/sounds/alsa; \
78*4882a593Smuzhiyun		cp -rdpf $(STAGING_DIR)/usr/share/alsa/speaker-test/* $(TARGET_DIR)/usr/share/alsa/speaker-test/; \
79*4882a593Smuzhiyun		cp -rdpf $(STAGING_DIR)/usr/share/sounds/alsa/* $(TARGET_DIR)/usr/share/sounds/alsa/; \
80*4882a593Smuzhiyun	fi
81*4882a593Smuzhiyun	if [ -x "$(TARGET_DIR)/usr/sbin/alsactl" ]; then \
82*4882a593Smuzhiyun		mkdir -p $(TARGET_DIR)/usr/share/; \
83*4882a593Smuzhiyun		cp -rdpf $(STAGING_DIR)/usr/share/alsa/* $(TARGET_DIR)/usr/share/alsa/; \
84*4882a593Smuzhiyun	fi
85*4882a593Smuzhiyunendef
86*4882a593Smuzhiyun
87*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSACTL)$(BR2_INIT_SYSTEMD),yy)
88*4882a593SmuzhiyunALSA_UTILS_DEPENDENCIES += systemd
89*4882a593SmuzhiyunALSA_UTILS_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system
90*4882a593Smuzhiyundefine ALSA_UTILS_INSTALL_INIT_SYSTEMD
91*4882a593Smuzhiyun	$(INSTALL) -D -m 0644 $(@D)/alsactl/alsa-restore.service \
92*4882a593Smuzhiyun		$(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service
93*4882a593Smuzhiyun	$(INSTALL) -D -m 0644 $(@D)/alsactl/alsa-state.service \
94*4882a593Smuzhiyun		$(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service
95*4882a593Smuzhiyun	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d
96*4882a593Smuzhiyun	printf '[Install]\nWantedBy=multi-user.target\n' \
97*4882a593Smuzhiyun		>$(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d/buildroot-enable.conf
98*4882a593Smuzhiyun	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d
99*4882a593Smuzhiyun	printf '[Install]\nWantedBy=multi-user.target\n' \
100*4882a593Smuzhiyun		>$(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d/buildroot-enable.conf;
101*4882a593Smuzhiyunendef
102*4882a593Smuzhiyunendif
103*4882a593Smuzhiyun
104*4882a593Smuzhiyun$(eval $(autotools-package))
105