alsa-utils.mk 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. ################################################################################
  2. #
  3. # alsa-utils
  4. #
  5. ################################################################################
  6. ALSA_UTILS_VERSION = 1.2.11
  7. ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2
  8. ALSA_UTILS_SITE = https://www.alsa-project.org/files/pub/utils
  9. ALSA_UTILS_LICENSE = GPL-2.0
  10. ALSA_UTILS_LICENSE_FILES = COPYING
  11. # 0011-configure.ac-fix-UMP-support-detection.patch
  12. ALSA_UTILS_AUTORECONF = YES
  13. ALSA_UTILS_INSTALL_STAGING = YES
  14. ALSA_UTILS_DEPENDENCIES = host-pkgconf alsa-lib \
  15. $(if $(BR2_PACKAGE_NCURSES),ncurses) \
  16. $(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate) \
  17. $(TARGET_NLS_DEPENDENCIES)
  18. ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSACTL),y)
  19. ALSA_UTILS_SELINUX_MODULES += alsa
  20. endif
  21. ALSA_UTILS_CONF_ENV = \
  22. ac_cv_prog_ncurses5_config=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS) \
  23. LIBS=$(TARGET_NLS_LIBS)
  24. ALSA_UTILS_CONF_OPTS = \
  25. --disable-xmlto \
  26. --disable-rst2man \
  27. --with-curses=$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncursesw,ncurses)
  28. ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSALOOP),y)
  29. ALSA_UTILS_CONF_OPTS += --enable-alsaloop
  30. else
  31. ALSA_UTILS_CONF_OPTS += --disable-alsaloop
  32. endif
  33. ifneq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y)
  34. ALSA_UTILS_CONF_OPTS += --disable-alsamixer
  35. endif
  36. ifeq ($(BR2_PACKAGE_ALSA_UTILS_BAT),y)
  37. ALSA_UTILS_CONF_OPTS += --enable-bat
  38. # Analysis support requires fftw single precision
  39. ALSA_UTILS_DEPENDENCIES += $(if $(BR2_PACKAGE_FFTW_SINGLE),fftw-single)
  40. else
  41. ALSA_UTILS_CONF_OPTS += --disable-bat
  42. endif
  43. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACONF) += usr/sbin/alsaconf
  44. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACTL) += usr/sbin/alsactl
  45. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSALOOP) += usr/bin/alsaloop
  46. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER) += usr/bin/alsamixer
  47. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSATPLG) += usr/bin/alsatplg
  48. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIDI) += usr/bin/amidi
  49. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIXER) += usr/bin/amixer
  50. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAY) += usr/bin/aplay usr/bin/arecord
  51. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_BAT) += usr/bin/alsabat
  52. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_IECSET) += usr/bin/iecset
  53. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ACONNECT) += usr/bin/aconnect
  54. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAUCM) += usr/bin/alsaucm
  55. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAYMIDI) += usr/bin/aplaymidi
  56. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI) += usr/bin/arecordmidi
  57. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQDUMP) += usr/bin/aseqdump
  58. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQNET) += usr/bin/aseqnet
  59. ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST) += usr/bin/speaker-test
  60. define ALSA_UTILS_INSTALL_TARGET_CMDS
  61. mkdir -p $(TARGET_DIR)/var/lib/alsa
  62. for i in $(ALSA_UTILS_TARGETS_y); do \
  63. $(INSTALL) -D -m 755 $(STAGING_DIR)/$$i $(TARGET_DIR)/$$i || exit 1; \
  64. done
  65. if [ -x "$(TARGET_DIR)/usr/bin/speaker-test" ]; then \
  66. mkdir -p $(TARGET_DIR)/usr/share/alsa/speaker-test; \
  67. mkdir -p $(TARGET_DIR)/usr/share/sounds/alsa; \
  68. cp -rdpf $(STAGING_DIR)/usr/share/alsa/speaker-test/* $(TARGET_DIR)/usr/share/alsa/speaker-test/; \
  69. cp -rdpf $(STAGING_DIR)/usr/share/sounds/alsa/* $(TARGET_DIR)/usr/share/sounds/alsa/; \
  70. fi
  71. if [ -x "$(TARGET_DIR)/usr/sbin/alsactl" ]; then \
  72. mkdir -p $(TARGET_DIR)/usr/share/; \
  73. cp -rdpf $(STAGING_DIR)/usr/share/alsa/* $(TARGET_DIR)/usr/share/alsa/; \
  74. fi
  75. endef
  76. ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSACTL)$(BR2_INIT_SYSTEMD),yy)
  77. ALSA_UTILS_DEPENDENCIES += systemd
  78. ALSA_UTILS_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system
  79. define ALSA_UTILS_INSTALL_INIT_SYSTEMD
  80. $(INSTALL) -D -m 0644 $(@D)/alsactl/alsa-restore.service \
  81. $(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service
  82. $(INSTALL) -D -m 0644 $(@D)/alsactl/alsa-state.service \
  83. $(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service
  84. $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d
  85. printf '[Install]\nWantedBy=multi-user.target\n' \
  86. >$(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d/buildroot-enable.conf
  87. $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d
  88. printf '[Install]\nWantedBy=multi-user.target\n' \
  89. >$(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d/buildroot-enable.conf;
  90. endef
  91. endif
  92. $(eval $(autotools-package))