Instead of using CFLAGS="-DMM_DISABLE_DEPRECATED" meson ...
which doesn't handle -Werror very well let's make it an explicit
option. Defaults to true, and autodetects previous CFLAGS
mechanism to preserve backwards compatibility.
Signed-off-by: Dan Williams <dan@ioncontrol.co>
The script was combining all commit messages into one due to the quoting
of "${COMMIT}", rather than leaving unquoted and picking each individual
commit from the space separated string.
Signed-off-by: Dan Williams <dan@ioncontrol.co>
With the FDO CI templates, the first container used must
be .fdo.container-build@ubuntu which builds the actual
container the rest of the pipeline can use with
.fdo.distribution-image@ubuntu.
.fdo.container-build@ubuntu uses a static 'image:' tag for
its job base image and then pushes to the project registry.
If the first job incorrectly uses .fdo.distribution-image@ubuntu
instead, it appears to fail for MR branches because that target
uses CI_REGISTRY_USER as part of the 'image:' tag which gitlab
sets to the username of the submitter. Which of course fails
because that user has never built the image before...
Using Docker executor with image registry.freedesktop.org/<username>/modemmanager/ubuntu/20.04:2023-01-03.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/<username>/modemmanager/ubuntu/20.04:2023-01-03.1 ...
Signed-off-by: Dan Williams <dan@ioncontrol.co>
Replace all ninja invocations but for the uninstall target with
meson.
meson build command can be omitted when executing test and install
targets that depend on compile target.
The release buildtype will disable certain warnings that we do see in
debug builds. Ensure we have a test build with all features enabled in
debug mode.
Selecting the build type as release limits the amount of warnings that
are enabled, so ensure we always build with warnings treated as errors
so that we don't miss any warning that would happen on debug builds.
Different options are set as `feature`, also every possible plugin,
but this may cause confusion.
All options set as `feature` but plugins have been made `boolean` to
avoid further confusions.
`help2man` is also installed in the CI image because is required to
build different libraries.
At the end of September 2021, Let's Encrypt's DST Root CA X3
certificate expired, and the new ISRG Root X1 took over.
Update the CI template so that the new certificate is available and we
can keep on cloning the libmbim/libqmi/libqrtr-glib repos without
failures.
The system template is updated to add new packages required at build
time:
* libdbus-1-dev is added so that we can autodetect the service
directory path via the installed pkg-config file.
* udev is added so that we can autodetect the udev rules directory
path via the installed pkg-config file.
* policykit-1 is added so that the i18n operation merging policy
files is able to use the installed ITS files.
* bash-completion is added to enable the feature in the meson build.
The 'dist' step in the test is fully skipped for now, as the meson
port doesn't fully support running all unit tests successfully.