File: dist.sh

package info (click to toggle)
keyman 18.0.245-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 21,316 kB
  • sloc: python: 52,784; cpp: 21,278; sh: 7,633; ansic: 4,823; xml: 3,617; perl: 959; makefile: 139; javascript: 138
file content (104 lines) | stat: -rwxr-xr-x 3,142 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#!/bin/bash

# Build dist tarballs or Debian orig tarballs
# and put them in dist/

# parameters: ./dist.sh [origdist] [proj]
# origdist = create Debian orig.tar.gz
# proj = only make tarball for this project

set -e

## START STANDARD BUILD SCRIPT INCLUDE
# adjust relative paths as necessary
THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh"
## END STANDARD BUILD SCRIPT INCLUDE

BASEDIR=$(pwd)

if [[ ! -z ${1+x} ]] && [[ "$1" == "origdist" ]]; then
    create_origdist=1
    shift
fi

rm -rf dist
mkdir -p dist

# dist for keyman
cp -a debian ../
cd ..
echo "3.0 (native)" > debian/source/format
dch keyman --newversion "${VERSION}" --force-bad-version --nomultimaint

# Create the tarball
# Note: the files end up in subdirectories under `keyman`, so we can
# include that when matching files and directories to ignore.
dpkg-source \
  --tar-ignore=*~ \
  --tar-ignore=.git \
  --tar-ignore=.gitattributes \
  --tar-ignore=.gitignore \
  --tar-ignore=experiments \
  --tar-ignore=debian \
  --tar-ignore=.github \
  --tar-ignore=.pc \
  --tar-ignore=.vscode \
  --tar-ignore=.devcontainer \
  --tar-ignore=__pycache__ \
  --tar-ignore=node_modules \
  --tar-ignore=keyman_1* \
  --tar-ignore=dist \
  --tar-ignore=VERSION \
  \
  --tar-ignore=keyman/android \
  --tar-ignore=keyman/artifacts \
  \
  --tar-ignore=keyman/common/mac \
  --tar-ignore=keyman/common/models \
  --tar-ignore=keyman/common/resources \
  --tar-ignore=keyman/common/schemas \
  --tar-ignore=keyman/common/test/keyboards/build.* \
  --tar-ignore=keyman/common/test/resources \
  --tar-ignore=keyman/common/web \
  --tar-ignore=keyman/common/windows \
  \
  --tar-ignore=keyman/core/build \
  --tar-ignore=keyman/developer \
  --tar-ignore=keyman/docs \
  --tar-ignore=keyman/ios \
  --tar-ignore=keyman/linux/build \
  --tar-ignore=keyman/linux/builddebs \
  --tar-ignore=keyman/linux/docs/help \
  --tar-ignore=keyman/linux/ibus-keyman/build \
  --tar-ignore=keyman/linux/keyman-config/keyman_config/version.py \
  --tar-ignore=keyman/linux/keyman-config/buildtools/build-langtags.py \
  --tar-ignore=keyman/linux/keyman-system-service/build \
  --tar-ignore=keyman/mac \
  --tar-ignore=keyman/oem \
  --tar-ignore=keyman/resources/devbox \
  --tar-ignore=keyman/resources/environment.sh \
  --tar-ignore=keyman/resources/git-hooks \
  --tar-ignore=keyman/resources/scopes \
  --tar-ignore=keyman/resources/build/*.lua \
  --tar-ignore=keyman/resources/build/jq* \
  --tar-ignore=keyman/results \
  --tar-ignore=keyman/tmp \
  --tar-ignore=keyman/web \
  --tar-ignore=keyman/windows \
  \
  -Zgzip -b .
mv ../keyman_"${VERSION}".tar.gz linux/dist/keyman-"${VERSION}".tar.gz
echo "3.0 (quilt)" > debian/source/format
cd "${BASEDIR}"

# create orig.tar.gz
if [[ ! -z "${create_origdist+x}" ]]; then
    cd dist
    pkgvers="keyman-$VERSION"
    tar xfz keyman-"${VERSION}".tar.gz
    mv -v keyman "${pkgvers}" 2>/dev/null || mv -v "$(find . -mindepth 1 -maxdepth 1 -type d)" "${pkgvers}"
    tar cfz "keyman_${VERSION}.orig.tar.gz" "${pkgvers}"
    rm "keyman-${VERSION}.tar.gz"
    rm -rf "${pkgvers}"
fi