alsa-utils.mk 4.2 KB

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