Compare commits

..

6 Commits

Author SHA1 Message Date
ed3791fe1c
Added missing packages
All checks were successful
buildbot/multibuild_parent Build done.
buildbot/travis_bionic Build done.
buildbot/job/openwrt Build done.
2023-01-13 23:14:42 +02:00
73b6bdecfd
Edit Makefile again 2023-01-13 03:03:51 +02:00
1da3e27066
Parametrize downloads further, reverse apt packages 2023-01-13 00:57:18 +02:00
b527854368
Build a single package with its deps, use builder for images. 2023-01-13 00:55:15 +02:00
fb3dae6197
Move toolchain installation into Dockerfile:
break the big make step into several ones. Make also a factory world.
Extra packages are made in the build.sh.
2023-01-12 02:03:07 +02:00
9e905faff0
Try to build a single package: add feeds 2023-01-12 02:01:09 +02:00
4 changed files with 125 additions and 13 deletions

View File

@ -1,6 +1,9 @@
FROM ubuntu:focal FROM ubuntu:focal
ENV OPENWRT_VERSION=22.03.2 ENV OPENWRT_VERSION=22.03.2
ENV OPENWRT_TARGET=bcm27xx
ENV OPENWRT_DEVICE=bcm2711
ENV OPENWRT_CC=gcc-11.2.0_musl
RUN apt -y update RUN apt -y update
@ -13,8 +16,12 @@ RUN DEBIAN_FRONTEND=noninteractive TZ=UTC \
RUN mkdir /Downloads RUN mkdir /Downloads
RUN wget -qP /Downloads \ RUN wget -qP /Downloads \
"https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-imagebuilder-${OPENWRT_VERSION}-bcm27xx-bcm2711.Linux-x86_64.tar.xz" "https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-imagebuilder-${OPENWRT_VERSION}-${OPENWRT_TARGET}-${OPENWRT_DEVICE}.Linux-x86_64.tar.xz"
RUN wget -qP /Downloads \ RUN wget -qP /Downloads \
"https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-sdk-${OPENWRT_VERSION}-bcm27xx-bcm2711_gcc-11.2.0_musl.Linux-x86_64.tar.xz" "https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-sdk-${OPENWRT_VERSION}-${OPENWRT_TARGET}-${OPENWRT_DEVICE}_${OPENWRT_CC}.Linux-x86_64.tar.xz"
RUN wget -qP /Downloads \ RUN wget -qP /Downloads \
"https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-toolchain-${OPENWRT_VERSION}-bcm27xx-bcm2711_gcc-11.2.0_musl.Linux-x86_64.tar.xz" "https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/openwrt-toolchain-${OPENWRT_VERSION}-${OPENWRT_TARGET}-${OPENWRT_DEVICE}_${OPENWRT_CC}.Linux-x86_64.tar.xz"
ADD . .

View File

@ -1,7 +1,5 @@
#!/bin/bash #!/bin/bash
ls -lah /Downloads
# use the SDK to build the module: # use the SDK to build the module:
# https://github.com/IchthysMaranatha/asterisk-chan-quectel # https://github.com/IchthysMaranatha/asterisk-chan-quectel
# The module is for two vendors, the Quectel-EC* and Simcom SIM7600. In # The module is for two vendors, the Quectel-EC* and Simcom SIM7600. In
@ -11,22 +9,53 @@ ls -lah /Downloads
# now I noticed there is actually a Makefile for openwrt in the repo already: # now I noticed there is actually a Makefile for openwrt in the repo already:
# https://github.com/IchthysMaranatha/asterisk-chan-quectel/tree/master/openwrt # https://github.com/IchthysMaranatha/asterisk-chan-quectel/tree/master/openwrt
tar -xJf /Downloads/openwrt-sdk-${OPENWRT_VERSION}-*.tar.xz
cp -r feed openwrt-sdk-*/
pwd=$(pwd)
cd openwrt-sdk-*/
cp feeds.conf.default feeds.conf
cat ${pwd}/feeds.conf >> feeds.conf
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make package/asterisk-chan-quectel/compile
# no signing key
make package/index
sdkdir=$(pwd)
cd ${pwd}
tar -xJf /Downloads/openwrt-imagebuilder-${OPENWRT_VERSION}-*.tar.xz tar -xJf /Downloads/openwrt-imagebuilder-${OPENWRT_VERSION}-*.tar.xz
cd openwrt-imagebuilder-*/ cd openwrt-imagebuilder-*/
cp ${sdkdir}/bin/targets/bcm27xx/bcm2711/packages/*.ipk packages/
cp ${sdkdir}/bin/packages/aarch64_cortex-a72/telephony/*.ipk packages/
cp ${sdkdir}/bin/packages/aarch64_cortex-a72/quectel/*.ipk packages/
make info make info
make image \ make image \
PROFILE=rpi-4 \ PROFILE=rpi-4 \
PACKAGES="kmod-rtc-ds1307 \ PACKAGES="kmod-nf-nathelper-extra kmod-rtc-ds1307 \
kmod-usb-net-rtl8152 \ kmod-usb-audio kmod-usb-net-rtl8152 \
pciutils usbutils \ alsa-lib pciutils usbutils \
kmod-usb-net-qmi-wwan libqmi qmi-utils uqmi luci-proto-qmi \ kmod-usb-net-qmi-wwan libqmi qmi-utils uqmi luci-proto-qmi \
asterisk \ asterisk \
asterisk-pjsip asterisk-bridge-simple \ asterisk-app-sms asterisk-pjsip asterisk-bridge-simple \
asterisk-codec-alaw asterisk-codec-ulaw \ asterisk-codec-alaw asterisk-codec-ulaw \
asterisk-res-rtp-asterisk kmod-nf-nathelper-extra" asterisk-res-rtp-asterisk \
asterisk-chan-quectel"
ls -lah packages
mkdir -p ../../out out=../../out
mv build_dir/target-aarch64_cortex-a72_musl/linux-bcm27xx_bcm2711/tmp/*.gz ../../out
mkdir -p ${out}
mv bin/targets/bcm27xx/bcm2711/*.gz ${out}
mv packages ${out}

View File

@ -0,0 +1,74 @@
#
# Copyright (C) 2017 - 2023 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=asterisk-chan-quectel
PKG_VERSION:=3.6
PKG_RELEASE:=3.6
PKG_SOURCE:=master.zip
PKG_SOURCE_URL:=https://github.com/IchthysMaranatha/asterisk-chan-quectel/archive/refs/heads/
PKG_CAT:=unzip
PKG_HASH:=skip
PKG_FIXUP:=autoreconf
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-master
PKG_MAINTAINER:=Lee Miller <lee.miller@tutanota.com>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYRIGHT.txt LICENSE.txt
MODULES_DIR:=/usr/lib/asterisk/modules
include $(INCLUDE_DIR)/package.mk
# asterisk-chan-quectel needs iconv
include $(INCLUDE_DIR)/nls.mk
define Package/$(PKG_NAME)
SUBMENU:=Telephony
SECTION:=net
CATEGORY:=Network
URL:=https://github.com/IchthysMaranatha/asterisk-chan-quectel
DEPENDS:=asterisk $(ICONV_DEPENDS) +kmod-usb-acm +kmod-usb-serial +kmod-usb-serial-option +libusb-1.0 +alsa-lib
TITLE:=Asterisk Mobile Telephony Module
endef
define Package/$(PKG_NAME)/description
Asterisk channel driver for mobile telephony.
endef
CONFIGURE_ARGS+= \
--with-asterisk=$(STAGING_DIR)/usr/include \
--with-astversion=20 \
--with-iconv=$(ICONV_PREFIX)/include
TARGET_CFLAGS+= \
-I$(CHAN_quectel_AST_HEADERS)
MAKE_FLAGS+=LD="$(TARGET_CC)"
CONFIGURE_VARS += \
DESTDIR="$(MODULES_DIR)" \
ac_cv_type_size_t=yes \
ac_cv_type_ssize_t=yes
define Package/$(PKG_NAME)/conffiles
/etc/asterisk/quectel.conf
endef
define Package/$(PKG_NAME)/install
$(INSTALL_DIR) $(1)/etc/asterisk
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/quectel.conf $(1)/etc/asterisk
$(INSTALL_DIR) $(1)$(MODULES_DIR)
$(INSTALL_BIN) $(PKG_BUILD_DIR)/chan_quectel.so $(1)$(MODULES_DIR)
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

2
feeds.conf Normal file
View File

@ -0,0 +1,2 @@
src-link quectel ../feed