Files
agnos-builder/userspace/compile-modemmanager.sh
T
Andrei Radulescu 4a924daa5a Ubuntu 24.04 (#262)
* Ubuntu 24.04 (#188)

* separate out qtwayland5 compilation

* ubuntu 22.04

* temp build system image

* remove bionic deps

* temp packages update

* update armhf packages

* back to libstdc++6

* replaced remove dqt5-default meta package with actual depss

* fix for build libqmi crashing with /usr/bin/env: 'python': No such file or directory

* mapbox-gl-native gcc11 fix

* openpilot_dependencies.sh change

* ubuntu-base 24.04 daily current

* apt install meson because PEP 668

* temp g++-11 for mapbox-gl-native

* bump capnproto to 1.0.2

* temp build only agnos-compiler-mapbox-gl-native

* Fixes for compiling mapbox-gl-native

* Fixes for compiling ffmpeg

* Build main system image again

* pyopencl from git since no 2023.1.5 release since https://github.com/inducer/pyopencl/issues/705

* Try to fix checkinstall - no success

* apt capnproto & ffmpeg since can't figure out issue with checkinstall

* Commented removed services disable

* Ubuntu 24.04 currently has arm-none-eabi/12.2.1 but just use wildcard to go to first folder

* pyclean is missing ?!

* ubuntu-latest in tests workflow

* Updated README

* Reverted internal/package_ota.py changes

* rebuilt kernel

* poetry.lock update

* Simplified build_system pipeline

* headers for capnproto

* Fix typo

* Fix for checkinstall

* Reverted apt capnproto & ffmpeg

* Some cleaning in Dockerfile

* 24.04 libwayland-client

* libffi6:armhf deb file

* Updated qtwayland

* Revert "libffi6:armhf deb file"

This reverts commit bb9cb5da95.

* libffi.so.6.0.4

* qt5-qmake qtbase5-dev qtbase5-dev-tools already in qt5-default

* Removed qtwayland old files

* checkinstall temp fix

* QStandardPaths: wrong permissions on runtime directory /var/tmp/weston, 0770 instead of 0700

* temp permissions fix makes loading build spinner show

* temp build optimization

* 24.04 new libs

* build kernel don't use tools on aarch64/arm64

* updated boot image and ko files

* cleaning

* switch to release 24.04

* wip - downgrade qt and libwayland

* polkitd-pkla package to support polkit *.pkla

* fixed issue with old qt needing libssl 1.1.1f

* remove /.dockerenv file

* more cleaning

---------

Co-authored-by: Justin Newberry <justin@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Ubuntu 24.04 branch fixes (#235)

* bump version

* /lib64 is now UsrMerged

* latest pip poetry; poetry.lock update

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* revert README

* [upload]

* disable failing nvmf-autoconnect.service

* disable failing networking.service

* [upload]

* no replacement for ondemand.service

* snapd.service is in snapd package we don't install

* nfs is using rpc-pipefs-generator now, when used

* checkinstall is still not fixed so remove TODO

* updated comment about usr merged lib64

* added checkinstall bug link

* removed not used libffi.so.6 and libwayland-client.so.0

* cleaned compile-qtwayland5.sh and removed 5.15 patch

* removed unused qt-comma 5.15 deb

* cleaned up custom debs for qt and libwayland and added a README

* fixed typo [upload]

* change version

* build-libwayland-deb.sh

* build-qt-deb.sh

* cleaned README

* [upload]

* fix libdl.so qtwayland build [upload]

* rebuild debs

* update libdl path [upload]

* added missing systemd-resolved

* ping capability

* disable some systemd services

* etc/resolv.conf link should not be needed

* Revert "etc/resolv.conf link should not be needed"

This reverts commit b627615a9e.

* Revert "ping capability"

This reverts commit 812ca357cf.

* set ping capability outside of container

* disable systemd services: console-setup and sfsconfig

Co-authored-by: Robin Reckmann <robin.reckmann@gmail.com>

* disabled more systemd services

* bump version [upload]

* update version

---------

Co-authored-by: Justin Newberry <justin@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Robin Reckmann <robin.reckmann@gmail.com>
2024-08-13 16:46:55 -07:00

63 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
set -e
MM_VERSION="1.22.0"
LIBQMI_VERSION="1.34.0"
PROVIDER_INFO_VERSION="20230416"
cd /tmp
apt-fast update
apt-fast install -y --no-install-recommends automake autoconf build-essential cmake
# TODO: clean up these build time dependencies
apt-fast install -y --no-install-recommends python3 python3-pip python3-setuptools python3-wheel ninja-build meson
export PATH=$PATH:/root/.local/bin
# build mobile-broadband-provider-info
apt-fast install -y --no-install-recommends xsltproc
git clone -b $PROVIDER_INFO_VERSION --depth 1 https://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git
cd mobile-broadband-provider-info
./autogen.sh
./configure
make install
# build libqmi
cd /tmp
apt-fast install -y --no-install-recommends libgudev-1.0-dev gobject-introspection libgirepository1.0-dev help2man bash-completion python-is-python3
git clone -b $LIBQMI_VERSION --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
cd libqmi
meson setup build --prefix=/usr --libdir=/usr/lib/aarch64-linux-gnu -Dmbim_qmux=false -Dqrtr=false
ninja -C build
ninja -C build install
# build ModemManager
cd /tmp
apt install -y --no-install-recommends gettext libpolkit-gobject-1-dev libdbus-1-dev libsystemd-dev polkitd-pkla
git clone -b $MM_VERSION --depth 1 https://gitlab.freedesktop.org/mobile-broadband/ModemManager.git
cd ModemManager
meson setup build \
--prefix=/usr \
--libdir=/usr/lib/aarch64-linux-gnu \
--sysconfdir=/etc \
--buildtype=release \
-Dqmi=true \
-Dmbim=false \
-Dqrtr=false \
-Dplugin_foxconn=disabled \
-Dplugin_dell=disabled \
-Dplugin_altair_lte=disabled \
-Dplugin_fibocom=disabled
ninja -C build
ninja -C build install
# remove plugins we don't use, makes probing faster
mkdir -p /tmp/mm-plugins
mv /usr/lib/aarch64-linux-gnu/ModemManager/libmm-*.so /tmp/mm-plugins
cp /tmp/mm-plugins/*generic* /usr/lib/aarch64-linux-gnu/ModemManager/
cp /tmp/mm-plugins/*quectel* /usr/lib/aarch64-linux-gnu/ModemManager/