Commit graph

26 commits

Author SHA1 Message Date
Eberhard Beilharz
f0d365e4b8
chore(linux): remove unused building with pbuilder
We no longer build with pbuilder/cowbuilder, so this change removes
that unnecessary code. This also changes the `deb.sh` script which no
longer needs parameters since it's only purpose is now to build the
source package, and removes the no-longer needed targets from `Makefile`.

This solves #9356 as good as possible. We still have the list of
distributions in two places, but I don't see a way to import the list
of distributions to the packaging GHA.

Fixes: #9356
2024-06-24 18:37:10 +02:00
Eberhard Beilharz
d52de2d878
docs(linux): Update description of deb-packaging.sh 2024-06-04 16:38:11 +02:00
Eberhard Beilharz
414a120bb2
chore(linux): Move API verification to separate action
The new `api-verification` workflow runs after `deb-packaging`.

Implements #10626.
2024-04-23 15:10:36 +02:00
Eberhard Beilharz
b01a76b809
Merge pull request #10800 from keymanapp/chore/linux/lintian
chore(linux): Address comments from Debian mailing list
2024-02-23 09:23:58 +01:00
Eberhard Beilharz
b747a60040
chore(linux): Install quilt on GHA runner
In order to be able to create the source package we need quilt.
However, this is not needed to create the binary package and so it is
not considered a build dependency belonging to build-depends.
This change installs quilt on the GHA runner before building the source
package.
2024-02-22 17:55:10 +01:00
Eberhard Beilharz
8177180b48
chore(linux): Fix API verification after adding SONAME
Due to Debian policy the libkeymancore package will now include
the SONAME (API version number) in the package name (PR #10800). This
change adjusts the API verification checks to be able to cope with
the modified .symbols file.
2024-02-22 17:25:52 +01:00
Eberhard Beilharz
a8543892eb
chore(linux): Move cat-file to wrapper methods
This addresses suggestions from code review.
2024-02-19 16:34:13 +01:00
Eberhard Beilharz
b5c2edd52b
refactor(linux): Use git cat-file instead of checkout
Addresses code review comments.
2024-02-09 15:45:08 +01:00
Eberhard Beilharz
426bc52404
chore(linux): Ignore missing .symbols file in stable branch
This fixes a bug in the API verification if the stable branch doesn't
have the expected .symbols file.
2024-02-08 10:21:19 +01:00
Eberhard Beilharz
883b9fc4c8
chore(linux): Fix API check if lines got removed in .symbols file
If lines got removed in the .symbols file we won't find the current
version number in the .symbols file. This change fixes the expectations.

Also, if a major API change happens during the Alpha cycle we don't expect
another API version increment if one already happened since we released
the stable version.

This change also adds some unit tests for the new functionality. These
can be run manually and won't run during CI builds.

Fixes #10453.
2024-02-02 20:15:22 +01:00
Eberhard Beilharz
15d87963b2
chore(core): Ignore C++ symbols
We have a C API, but (internal) C++ template instantiations are visible
and so get flagged by `dpkg-gensymbols`. This change ignores the one
use of C++ by marking it optional. This is listed as a usage scenario
in the dpkg-gensymbols man page.

Note this requires a change how we call dpkg-gensymbols: if the `-O`
parameter is specified, the file is not treated as being a template file
(see man deb-src-symbols) and so the tags are not interpreted.
Additionally the file gets overwritten with the non-tag version. So this
change removes the `-O` parameter, and changes the archiving of the
generated file.
2024-01-15 18:47:53 +01:00
Eberhard Beilharz
5badb17d4a
chore(linux): reduce number of checkouts
Addresses code review comment.
2023-11-14 10:26:29 +01:00
Eberhard Beilharz
afc63278b8
chore(linux): Address code review comments 2023-11-13 18:14:55 +01:00
Eberhard Beilharz
30250e3d8d
chore(linux): Enhance GHA API check
This change adds additional checks for the symbols file:

- if a line with a method name gets changed, the package version number
  in that line also needs to be updated
- for major API changes (methods renamed or removed) the API version
  numbers needs to be incremented
- the API version numbers in the .symbols file and in `CORE_API_VERSION.md`
  need to match
2023-10-26 18:04:43 +02:00
Eberhard Beilharz
9257750bb8
chore(linux): Refactor deb-packaging.sh script
Make use of builder_run_action.
2023-10-26 17:16:06 +02:00
Eberhard Beilharz
2e5e586860
chore(linux): Rename libkmnkbp0-0 package
Also removes the temporary libkeymancore/libkmnkbp hack that we put in
for packaging GHA.

Closes #9733.
2023-10-20 17:31:39 +02:00
Eberhard Beilharz
c0bef2581d
chore(linux): Fix build by adding one character 2023-10-20 17:15:41 +02:00
Eberhard Beilharz
1c639e80ea
chore(linux): Update packaging GHA
This enhances the packaging GHA to be able to verify the renamed
core library. Since the GHA packaging build always uses the action
definition from `master` this change has to land before we can
successfully build the PR that does the actual renaming of the core
library and Debian package. Later we can remove the references to
`libkmnkbp0-0` again.

Part of #9733.
2023-10-20 09:56:39 +02:00
Marc Durdin
a2ceb98948 chore: rewrite extra standard build script prolog 2023-02-23 08:09:41 +07:00
Marc Durdin
ce864ea923 chore: update standard script prolog to use builtin instead of dirname 2023-02-22 11:04:15 +07:00
Eberhard Beilharz
3d06af218c
Merge pull request #8112 from keymanapp/chore/linux/5981_addBuild.sh
chore(linux): Add build.sh to ibus-keyman 🏗️
2023-02-20 15:53:59 +01:00
Eberhard Beilharz
faff48fb4c
fix(linux): Fix bug in deb-packaging script 2023-02-20 10:02:13 +01:00
Eberhard Beilharz
33ed91e970
chore(linux): Merge branch 'master' into chore/linux/5981_addBuild.sh 2023-02-20 09:54:05 +01:00
Eberhard Beilharz
3addac0a9d
chore(linux): Output results of API verification on stderr
This reduces the noise on the GHA summary page.
2023-02-16 13:05:04 +01:00
Eberhard Beilharz
61ba40a212
chore(linux): Refactor scripts and packaging
This change modifies the scripts and the Debian packaging to use
the meson build / build.sh script for building instead of autotools.
2023-02-14 09:42:13 +01:00
Eberhard Beilharz
e6300f1841
chore(linux): Address code review comments 2023-02-07 10:05:21 +01:00