summaryrefslogtreecommitdiff
path: root/bootstrap
blob: 31987eb72558e7baca90f74d1fe251e798a20d7a (plain)
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
#!/bin/sh
#
# Copyright (C) 2019 GNUnet e.V.
#
# This code is derived from code contributed to GNUnet e.V.
# by ng0 <ng0@n0.is>
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
# LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
# WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
# ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
# THIS SOFTWARE.
#
# This file is in the public domain.
# SPDX-License-Identifier: 0BSD
#
#
# Bootstrap the repository.  Used when the repository is checked out from git.
# When using the source tarball, running this script is not necessary.

set -eu

if ! git --version >/dev/null; then
  echo "git not installed"
  exit 1
fi

git submodule update --init
git submodule update --recursive
git submodule sync
cp build-system/taler-build-scripts/configure ./configure || true
cp build-system/taler-build-scripts/conf/.style.yapf .style.yapf || true

# The configure script looks for configure.py in the cwd
# (but it's not there, being instead in subdir build-system/).
# We can either modify the configure script to look in
# the correct directory, or copy configure.py to cwd.
# We choose to modify, but maybe that's not the best choice.
sed -i '/^exec/s|./|build-system/|' configure

# Another wrinkle is that Makefile looks in build-system/
# for config.mk, but the configure script places it in cwd.
# Again, we have a choice: Either modify Makefile or modify
# the configure script to move config.mk to the right place.
# Since we already munged the configure script once, why not again?
sed -i '/^exec /s///' configure
echo 'mv config.mk build-system' >> configure