During a package build a patch directory (`.pc`) might get created.
That can't and shouldn't be part of the source package. This change
excludes any `.pc` directories.
Cherry-pick-of: #14600
Build-bot: skip
Test-bot: skip
PR #12642 tried to fix creating the source tarball so that it didn't
ignore files we need. However, that now included way to many files.
This change fixes this and results in a smaller tarball again.
Fixes: #13010
Unfortunately dpkg-source can only list files to exclude, not files to
include, which makes it fragile to changes in other platforms. The list
previously included 'docs', and as I renamed /core/doc to /core/docs to
match the other platforms, that caused it to be excluded. Changing it to
'./docs' should hopefully only match the top-level folder.
At the same time, updated many other top-level folder matches.
This moves `common/predictive-text/` →
`web/src/engine/predictive-text/worker-main/`.
This also moves `common/test/predictive-text/` →
`web/src/test/manual/predictive-text/`. Note though that this testing
tool is still broken.
Fixes: #12134
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
`environment.sh` is used only on Mac. This change modifies `build.sh`
to generate this file only when building on Mac. It also excludes
`environment.sh` from the Linux source tarball.
Enforces -e (abort script on error) and -u (error on unset variable use)
on all scripts that source build-utils.sh. This may result in some
downstream build failures which we'll need to address before merge to
master.
Relates to #5816.
Moves folders under common/core/web to common/web:
* input-processor -> common/web/input-processor
* keyboard-processor -> common/web/keyboard-processor
* tools/recorder -> common/web/recorder
* tools/sentry-manager -> common/web/sentry-manager
* utils -> common/web/utils
Updates scripts and configuration to point to new folders.
For auto-generating help files we need `buildtools`, so we can't
exclude it from source package. Also, we now include our version
of `help2man`, so we no longer need it as a build dependency,
but instead directly depend on `perl`.
This change makes the necessary adjustments so that the package build
works with the new `build.sh` script. We no longer can rely on the
automatisms of debhelper. This change also adds a install target
to `build.sh`, and copies some files from the Keyman root directory
to the desktop directory because when package building we only
have access to the files in common/core/desktop. Along the same lines
it removes embedding `build-utils.h` from `build.sh`. Instead we set
the version and tier locally.
`buildtools/build-langtags.py` gets executed before creating the
source tarball, so we don't need it in the source package. Excluding
it reduces confusion because the files it requires are not found
in the source package.
This change adds the localization files to the debian package. It
also updates the path to the localization files so that the installed
files will be found.