You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.6 KiB
56 lines
1.6 KiB
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
PROJECT_ROOT="$(dirname "$(readlink -e "$0")")/../../.."
|
|
CONTRIB="$PROJECT_ROOT/contrib"
|
|
CONTRIB_SDIST="$CONTRIB/build-linux/sdist"
|
|
DISTDIR="$PROJECT_ROOT/dist"
|
|
LOCALE="$PROJECT_ROOT/electrum/locale/"
|
|
|
|
. "$CONTRIB"/build_tools_util.sh
|
|
|
|
# note that at least py3.7 is needed, to have https://bugs.python.org/issue30693
|
|
python3 --version || fail "python interpreter not found"
|
|
|
|
break_legacy_easy_install
|
|
|
|
# upgrade to modern pip so that it knows the flags we need.
|
|
# (make_packages will later install a pinned version of pip in a venv)
|
|
python3 -m pip install --upgrade pip
|
|
|
|
"$CONTRIB"/make_packages || fail "make_packages failed"
|
|
|
|
git submodule update --init
|
|
|
|
(
|
|
cd "$CONTRIB/deterministic-build/electrum-locale/"
|
|
if ! which msgfmt > /dev/null 2>&1; then
|
|
echo "Please install gettext"
|
|
exit 1
|
|
fi
|
|
# We include both source (.po) and compiled (.mo) locale files in the source dist.
|
|
# Maybe we should exclude the compiled locale files? see https://askubuntu.com/a/144139
|
|
# (also see MANIFEST.in)
|
|
rm -rf "$LOCALE"
|
|
for i in ./locale/*; do
|
|
dir="$PROJECT_ROOT/electrum/$i/LC_MESSAGES"
|
|
mkdir -p "$dir"
|
|
msgfmt --output-file="$dir/electrum.mo" "$i/electrum.po" || true
|
|
cp $i/electrum.po "$PROJECT_ROOT/electrum/$i/electrum.po"
|
|
done
|
|
)
|
|
|
|
(
|
|
cd "$PROJECT_ROOT"
|
|
|
|
find -exec touch -h -d '2000-11-11T11:11:11+00:00' {} +
|
|
|
|
# note: .zip sdists would not be reproducible due to https://bugs.python.org/issue40963
|
|
TZ=UTC faketime -f '2000-11-11 11:11:11' python3 setup.py --quiet sdist --format=gztar
|
|
)
|
|
|
|
|
|
info "done."
|
|
ls -la "$DISTDIR"
|
|
sha256sum "$DISTDIR"/*
|
|
|