Building full image that's supposed to contain asterisk-chan-quectel #2

Merged
PeterSurda merged 6 commits from lee.miller/openwrt:quectel into main 2023-01-17 23:27:23 +01:00
3 changed files with 61 additions and 39 deletions
Showing only changes of commit fb3dae6197 - Show all commits

View File

@ -10,14 +10,25 @@ RUN DEBIAN_FRONTEND=noninteractive TZ=UTC \
libncurses5-dev unzip gawk zlib1g-dev libncursesw5-dev zlib1g-dev \
gettext xsltproc wget unzip python python3-distutils rxvt-unicode
RUN mkdir /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"
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"
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"
RUN git clone https://git.openwrt.org/openwrt/openwrt.git
RUN cd openwrt && git checkout v${OPENWRT_VERSION}
RUN wget -qP /openwrt \
"https://downloads.openwrt.org/releases/${OPENWRT_VERSION}/targets/bcm27xx/bcm2711/config.buildinfo"
RUN cd /openwrt && cp config.buildinfo .config && make defconfig
ENV FORCE_UNSAFE_CONFIGURE=1
RUN cd /openwrt && make tools/install
RUN cd /openwrt && make toolchain/install
RUN cd /openwrt && make download
RUN cd /openwrt && make world
RUN useradd -m -U -u 999 buildbot
RUN chown -R buildbot.buildbot /openwrt
USER buildbot
ADD . .

View File

@ -1,7 +1,5 @@
#!/bin/bash
ls -lah /Downloads
# use the SDK to build the module:
# https://github.com/IchthysMaranatha/asterisk-chan-quectel
# The module is for two vendors, the Quectel-EC* and Simcom SIM7600. In
@ -11,47 +9,45 @@ ls -lah /Downloads
# now I noticed there is actually a Makefile for openwrt in the repo already:
# https://github.com/IchthysMaranatha/asterisk-chan-quectel/tree/master/openwrt
tar -xJf /Downloads/openwrt-imagebuilder-${OPENWRT_VERSION}-*.tar.xz
cp -r feed /openwrt/
cp feeds.conf /openwrt/
cd openwrt
pwd=$(pwd)
cd /openwrt
git checkout v${OPENWRT_VERSION}
cp ../feeds.conf .
cp ../config.buildinfo .config
./scripts/feeds update -a
./scripts/feeds install -a
export FORCE_UNSAFE_CONFIGURE=1
cp config.buildinfo /openwrt/.config
cat ${pwd}/config.extra >> /openwrt/.config
make defconfig
Review

I think lines 23 and 25 should be skipped, no? That would just recompile unnecessarily. The documentation doesn't mention these steps, only feeds update and then feeds install packagename.

I think lines 23 and 25 should be skipped, no? That would just recompile unnecessarily. The [documentation](https://openwrt.org/docs/guide-developer/obtain.firmware.sdk#obtain_definitions) doesn't mention these steps, only `feeds update` and then `feeds install packagename`.
Review

See also from the documentation:

The output of make might contain WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!. That warning is misleading and wrong in the SDK case. Since everything is precompiled you cannot run oldconfig (see Why is the SDK configuration out of sync?).

See also from the documentation: > The output of `make` might contain `WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!`. That warning is misleading and wrong in the SDK case. Since everything is precompiled you cannot run oldconfig (see Why is the SDK configuration out of sync?).
Review

It seems trying to run make menuconfig if I remove make defconfig, see at line 2043.

It seems trying to run `make menuconfig` if I remove `make defconfig`, [see](https://buildbot.bitmessage.org/#/builders/33/builds/15409/steps/3/logs/stdio) at line 2043.
Review

It's not working also without feeds install, see line 1979.

It's [not working](https://buildbot.bitmessage.org/#/builders/33/builds/15410/steps/3/logs/stdio) also without feeds install, see line 1979.
Review

I'll check the build logs.

I'll check the build logs.
Review

Ok I don't know how to fix it either, at least it doesn't look like it's compiling everything, only some dependencies, so it's fine. I tried a full build previously and it takes several hours: https://buildbot.bitmessage.org/#/builders/33/builds/14862

I will rarely build this so it's not a big deal if I have to wait an hour.

Ok I don't know how to fix it either, at least it doesn't look like it's compiling everything, only some dependencies, so it's fine. I tried a full build previously and it takes several hours: https://buildbot.bitmessage.org/#/builders/33/builds/14862 I will rarely build this so it's not a big deal if I have to wait an hour.
make tools/install
make toolchain/install
opkg info asterisk-chan-quectel
make -j1 V=s world
make package/asterisk-chan-quectel/compile
make package/index
# The full distribution
ls -lah bin/targets/bcm27xx/bcm2711
mv bin/*.ipk ../openwrt-imagebuilder-*/packages/
# tar -xJf bin/targets/bcm27xx/bcm2711/openwrt-imagebuilder-${OPENWRT_VERSION}-*.tar.xz
# cp bin/targets/bcm27xx/bcm2711/packages/asterisk*.ipk openwrt-imagebuilder-*/packages/
cd ../openwrt-imagebuilder-*/
cd ${pwd}
make info
# make info
make image \
PROFILE=rpi-4 \
PACKAGES="kmod-rtc-ds1307 \
kmod-usb-net-rtl8152 \
pciutils usbutils \
kmod-usb-net-qmi-wwan libqmi qmi-utils uqmi luci-proto-qmi \
asterisk \
asterisk-pjsip asterisk-bridge-simple \
asterisk-codec-alaw asterisk-codec-ulaw \
asterisk-res-rtp-asterisk kmod-nf-nathelper-extra \
asterisk-chan-quectel"
# make image \
# PROFILE=rpi-4 \
# PACKAGES="kmod-rtc-ds1307 \
# kmod-usb-net-rtl8152 \
# pciutils usbutils \
# kmod-usb-net-qmi-wwan libqmi qmi-utils uqmi luci-proto-qmi \
# asterisk \
# asterisk-pjsip asterisk-bridge-simple \
# asterisk-codec-alaw asterisk-codec-ulaw \
# asterisk-res-rtp-asterisk kmod-nf-nathelper-extra \
# asterisk-chan-quectel"
out=../../out
mkdir -p ../../out
mv build_dir/target-aarch64_cortex-a72_musl/linux-bcm27xx_bcm2711/tmp/*.gz ../../out
mkdir -p ${out}
mv /openwrt/bin/targets/bcm27xx/bcm2711/*.gz ${out}
mv /openwrt/bin/targets/bcm27xx/bcm2711/packages ${out}

15
config.extra Normal file
View File

@ -0,0 +1,15 @@
CONFIG_PACKAGE_asterisk=y
# Feeds
CONFIG_PER_FEED_REPO=y
CONFIG_FEED_packages=y
CONFIG_FEED_luci=y
CONFIG_FEED_telephony=y
CONFIG_FEED_quectel=y
CONFIG_PACKAGE_asterisk-pjsip=m
CONFIG_PACKAGE_asterisk-bridge-simple=m
CONFIG_PACKAGE_asterisk-codec-alaw=m
CONFIG_PACKAGE_asterisk-codec-ulaw=m
CONFIG_PACKAGE_asterisk-res-rtp-asterisk=m
CONFIG_PACKAGE_asterisk-chan-quectel=m
CONFIG_PACKAGE_kmod-nf-nathelper-extra=m
CONFIG_PACKAGE_kmod-rtc-ds1307=m