Skip to content
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

Various Debian packaging improvements for 3.7 #9254

Closed
wants to merge 24 commits into from

Conversation

sebastic
Copy link
Contributor

@sebastic sebastic commented Feb 24, 2019

While reviewing the packaging changes in QGIS 3.4 I noticed that many of the packaging improvements present in Debian are not included in the upstream packaging.

The PR forwards the relevant changes for 3.7/master.

Related PRs:

Sorting helps to find duplicates and missing dependencies.
Sorting helps to find duplicates and missing paths.
Control file templates no longer required for this dependency.
- Don't include package name
- Use * instead of specific paths
Changes:
- Update main copyright holders
- Group license & copyright for CMake files
- Add license & copyright for external files
- Add license & copyright for new files
- Drop license & copyright for remove files
Use 'usr/lib/*/qt?/plugins' to match Qt4 & Qt5 Multi-Arch paths.
The jQuery version provided by Doxygen contains changes
not included in the libjs-jquery package.
Verbose output by default per the Debian Policy,
can be disabled with the 'terse' build option.

Limit the number of parallel processes to those specified
in the parallel build option to prevent excessive high load
with the defaults used by ninja.
Makes the output a little more similar to that of CMake.
Removes assert() from binaries to help reproducibility, as assert()
includes the full path of the source file. The build path should not
be referenced in binaries.

https://reproducible-builds.org/docs/build-path/
The install target would fail when the apidoc target has not been built.

Everything is always built, if the -B or -A dpkg buildflags are used
only the files for the arch:any or arch:all packages will be used.
Rename python-qgis{,-common} to python3-qgis{,-common} for Debian Policy
compliance.

Use dh_python3 & dh_sip3, and their respective substvars.

Add versioned Breaks/Replaces because files with the same name will now
be in the new python3-qgis packages. This prevents conflicts on upgrade.
Also use multiple lines for better readability.
@sebastic
Copy link
Contributor Author

Note the discussion about the Breaks/Replaces version for the Python package renaming:

#9255 (comment)

@jef-n jef-n self-assigned this Feb 25, 2019
jef-n pushed a commit that referenced this pull request Feb 25, 2019
1b1e60d Use libqscintilla2-qt5-dev instead of virtual package.
dd5003e Use "-noawait" variant for qgis-crssync trigger.
d0e156e Remove obsolete diversions in qgis.preinst, but don't rename.
25a677e Update watch file to use HTTPS.
7ca6a99 Update registration URL in upstream metadata.
789d4fb Don't recommend liblwgeom-dev, it shouldn't be used by other projects.
7d38440 Update packaging for Python 3.
bb0017c Remove documentation outside /usr/share/doc from non-doc packages.
cd7f1fd Fix FTBFS when building only arch:any packages (with -B).
03e4d0b Add -DNDEBUG flag for non-debug builds.
c6cb002 Include percentage of started edges in ninja output.
f86761e Set -j & -v ninja options based on DEB_BUILD_OPTIONS.
3b07a54 Use pkg-info.mk variables instead of dpkg-parsechangelog output.
5e18a74 Align paths in links file to improve readability.
2bd52f3 Don't use libjs-jquery for Doxygen docs.
3b9e875 Simplify python-qgis.install with common path to match all files.
96d5f20 Don't rely on QT_PLUGINS_DIR placeholder in template files.
74c3750 Update copyright file.
1b596f5 Don't rely on QGIS_ABI placeholder in template files.
aaabb94 Simplify lintian overrides.
38fad4d Don't rely on GRASSVER placeholder in template files.
9c772d1 Override dh_gencontrol to set GRASS ABI dependency with substvars.
8b9c14b Reorder paths in install files.
c518e14 Reorder (build) dependencies & remove duplicates.
@sebastic sebastic deleted the packaging-3.7 branch February 26, 2019 05:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants