-
Notifications
You must be signed in to change notification settings - Fork 925
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dnsdist: Generate our packages with meson
#15184
base: master
Are you sure you want to change the base?
Conversation
Meson expects dist tarball changes to be applied to the "pure" sources in The snapshot is created via |
Pull Request Test Coverage Report for Build 13439962109Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
Thanks, Eli! I think I have something working now, test run in progress (will fail for el-7 and buster): https://github.com/rgacogne/pdns/actions/runs/13439966426 |
Some thoughts:
|
# create copy of source tarball with name that dpkg-source requires | ||
RUN cp /sdist/dnsdist-${BUILDER_VERSION}.tar.bz2 dnsdist_${BUILDER_VERSION}.orig.tar.bz2 | ||
RUN cp /sdist/dnsdist-${BUILDER_VERSION}.tar.xz dnsdist_${BUILDER_VERSION}.orig.tar.zx |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
xz
and zx
? but also see general comment wrt tarball name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oops, that's indeed a typo. I'll fix for now, pending a decision on the actual tarball format.
Since meson 1.5.0, bztar has been a valid CPython itself can be compiled without bzip2 support, although it seems odd to do so and most distributions should already have it in the base system... |
Personally I'd welcome the tarballs changing to xz. |
I agree we should unify the way we are installing
It was initially needed because the Docker builder only included a partial view of the repository (
I personally would prefer to generate |
Otherwise our builder does not find it, because the root directory of the repository is not available to the Docker context.
1735e2a
to
a07052e
Compare
Short description
This PR updates the build scripts to build our DNSdist >= 2.0 packages with
meson
instead ofautotools
. There are some rather big changes:meson
sub-directories that are shared with the authoritative server are no longer symbolic links because themeson
directory at the root of the repository is not available whenmeson
runs, causing issues. I think we could go for a different approach and make themeson
available to the Docker environment insteadh2o
support is removed from our packagesmeson
meson
is not available in most distributions, so I'm installing it from a release tarball. This is a bit messy to do without conflicting with the meson version packaged by the distribution itselfmeson
require a recent enough version ofPython
, so I had to upgradePython
as well but fortunately there is a recent enough version in each distribution we supportI have a remaining issue that I don't know how to fix. Currently we set the correct version of DNSdist in
configure.ac
via theset-configure-ac-version.sh
script. Unfortunately doing so creates an uncommitted change thatmeson
refuses to pick up (Repository has uncommitted changes that will not be included in the dist tarball
). We can use--allow-dirty
so thatmeson
keeps running but the resulting tarball does not have the correct version set inconfigure.ac
, unsurprisingly. @omoerbeek @eli-schwartz any idea how to handle this properly?DO NOT MERGE THIS!
Checklist
I have: