asterisk-chan-dongle: bump to latest git
[feed/telephony.git] / net / asterisk-chan-dongle / Makefile
index 1e53e9eae55410dbea3a6556fc630ce0bd0a522b..0f41d457d8a4ec444489803ca212ee923644bbef 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2017 OpenWrt.org
+# Copyright (C) 2017 - 2018 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,14 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk-chan-dongle
-PKG_VERSION:=1.1-20170913
-PKG_RELEASE:=1
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=git://github.com/wdoekes/asterisk-chan-dongle.git
-PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=4ef5ad7eea7245a031101875be08b924aa1e151b
 PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/wdoekes/asterisk-chan-dongle.git
+PKG_SOURCE_VERSION:=503dba87d726854b74b49e70679e64e6e86d5812
+PKG_SOURCE_DATE=2022-11-04
+PKG_RELEASE:=1
+PKG_MIRROR_HASH:=0d585c108ec18d136ce03704b96d0a6769e617c820fc74f735e3e192ad282611
 
 PKG_FIXUP:=autoreconf
 
@@ -23,105 +22,76 @@ PKG_LICENSE:=GPL-2.0
 PKG_LICENSE_FILES:=COPYRIGHT.txt LICENSE.txt
 PKG_MAINTAINER:=Jiri Slachta <jiri@slachta.eu>
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
+MODULES_DIR:=/usr/lib/asterisk/modules
 
 include $(INCLUDE_DIR)/package.mk
+# asterisk-chan-dongle needs iconv
+include $(INCLUDE_DIR)/nls.mk
 
-define Package/asterisk-chan-dongle/Default
+define Package/asterisk-chan-dongle
   SUBMENU:=Telephony
   SECTION:=net
   CATEGORY:=Network
   URL:=https://github.com/wdoekes/asterisk-chan-dongle
-  DEPENDS:=+USE_UCLIBC:libiconv-full +kmod-usb-acm +kmod-usb-serial +kmod-usb-serial-option +libusb-1.0 +usb-modeswitch
+  DEPENDS:=asterisk $(ICONV_DEPENDS) +libsqlite3
   TITLE:=Huawei UMTS 3G dongle support
 endef
 
-define Package/asterisk11-chan-dongle
-$(call Package/asterisk-chan-dongle/Default)
-  DEPENDS+=asterisk11
-  VARIANT:=asterisk11
-endef
-
-define Package/asterisk13-chan-dongle
-$(call Package/asterisk-chan-dongle/Default)
-  DEPENDS+=asterisk13
-  VARIANT:=asterisk13
-endef
-
-define Package/description/Default
+define Package/asterisk-chan-dongle/description
  Asterisk channel driver for Huawei UMTS 3G dongle.
 endef
 
-Package/asterisk11-chan-dongle/description = $(Package/description/Default)
-Package/asterisk13-chan-dongle/description = $(Package/description/Default)
-
-ifeq ($(BUILD_VARIANT),asterisk11)
-  CHAN_DONGLE_AST_HEADERS:=$(STAGING_DIR)/usr/include/asterisk-11/include
-  CONFIGURE_ARGS+= \
-         --with-astversion=11
-endif
-
-ifeq ($(BUILD_VARIANT),asterisk13)
-  CHAN_DONGLE_AST_HEADERS:=$(STAGING_DIR)/usr/include/asterisk-13/include
-  CONFIGURE_ARGS+= \
-         --with-astversion=13
-endif
-
 CONFIGURE_ARGS+= \
-       --with-asterisk=$(CHAN_DONGLE_AST_HEADERS)
+       --with-asterisk=$(STAGING_DIR)/usr/include \
+       --with-astversion=18
 
-TARGET_CFLAGS+= \
-       -I$(CHAN_DONGLE_AST_HEADERS)
-
-# musl and glibc include their own iconv, but uclibc does not
-ifneq ($(CONFIG_USE_UCLIBC),)
-TARGET_CPPFLAGS+= \
-       -I$(STAGING_DIR)/usr/lib/libiconv-full/include
+ifeq ($(CONFIG_BUILD_NLS),y)
+CONFIGURE_ARGS+=--with-iconv=$(ICONV_PREFIX)/include
+else
+CONFIGURE_ARGS+=--with-iconv=$(TOOLCHAIN_DIR)/include
 endif
 
-# -DAST_MODULE_SELF_SYM=__internal_chan_dongle_self to fix Asterisk 14
-# compile issues
-CHAN_DONGLE_EXTRA_CFLAGS:= \
-       -Wno-old-style-declaration \
-       -I$(PKG_BUILD_DIR) \
-       -DAST_MODULE_SELF_SYM=__internal_chan_dongle_self \
-       $(TARGET_CPPFLAGS) \
-       -D_GNU_SOURCE \
-       -DHAVE_CONFIG_H \
-       $(FPIC)
-
-MAKE_ARGS:= \
-       CC="$(TARGET_CC)" \
-       LD="$(TARGET_CC)" \
-       CFLAGS="$(TARGET_CFLAGS) $(CHAN_DONGLE_EXTRA_CFLAGS)" \
-       LDFLAGS="$(TARGET_LDFLAGS) $(if $(CONFIG_USE_UCLIBC),-L$(STAGING_DIR)/usr/lib/libiconv-full/lib -liconv)"
-
-# $CHAN_DONGLE_ICONV_INC used by 200-fix-iconv-detection.patch
+MAKE_FLAGS+=LD="$(TARGET_CC)"
+
 CONFIGURE_VARS += \
-       CHAN_DONGLE_ICONV_INC="$(TOOLCHAIN_DIR)/include $(STAGING_DIR)/usr/lib/libiconv-full/include" \
+       DESTDIR="$(MODULES_DIR)" \
        ac_cv_type_size_t=yes \
        ac_cv_type_ssize_t=yes
 
-define Build/Compile
-       $(MAKE) $(PKG_JOBS) -C "$(PKG_BUILD_DIR)" $(MAKE_ARGS)
-endef
-
-define Package/conffiles/Default
+define Package/asterisk-chan-dongle/conffiles
 /etc/asterisk/dongle.conf
 endef
 
-Package/asterisk11-chan-dongle/conffiles = $(Package/conffiles/Default)
-Package/asterisk13-chan-dongle/conffiles = $(Package/conffiles/Default)
-
-define Package/Install/Default
+define Package/asterisk-chan-dongle/install
        $(INSTALL_DIR) $(1)/etc/asterisk
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/dongle.conf $(1)/etc/asterisk
-       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/chan_dongle.so $(1)/usr/lib/asterisk/modules
+       $(INSTALL_DIR) $(1)$(MODULES_DIR)
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/chan_dongle.so $(1)$(MODULES_DIR)
 endef
 
-Package/asterisk11-chan-dongle/install = $(Package/Install/Default)
-Package/asterisk13-chan-dongle/install = $(Package/Install/Default)
+define Package/asterisk-chan-dongle/postinst
+#!/bin/sh
+if [ -z "$${IPKG_INSTROOT}" ]; then
+  echo
+  echo "o-------------------------------------------------------------------o"
+  echo "| asterisk-chan-dongle note                                         |"
+  echo "o-------------------------------------------------------------------o"
+  echo "| Adding the \"asterisk\" user to the \"dialout\" group might be        |"
+  echo "| required for asterisk to be able to access the dongle.            |"
+  echo "o-------------------------------------------------------------=^_^=-o"
+  echo
+fi
+exit 0
+endef
+
+define Build/Prepare
+       $(call Build/Prepare/Default)
+ifeq ($(QUILT),)
+ifeq ($(CONFIG_BUILD_NLS),y)
+       $(SED) 's/\[iconv\], \[c iconv\]/[libiconv], [iconv]/' \
+               "$(PKG_BUILD_DIR)/configure.ac"
+endif
+endif
+endef
 
-$(eval $(call BuildPackage,asterisk11-chan-dongle))
-$(eval $(call BuildPackage,asterisk13-chan-dongle))
+$(eval $(call BuildPackage,asterisk-chan-dongle))