blob: d7abc491ddccd8df9a94fe48491b42b8370de82a (
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
|
# Compiling
This script seems to handle most cases I care about:
- a freshly cloned copy of the repository,
- a repository where compilation has already happened,
- a repository where I want to change the `configure` flags…
``` bash
#!/bin/bash
set -eux
MAKE="make -j$(nproc --all)"
CONFIGURE_FLAGS="--with-xwidgets --with-cairo"
if ! test -f Makefile
then
${MAKE} configure
fi
check-config ()
{
local define=$(grep EMACS_CONFIG_OPTIONS src/config.h)
local pattern='^#define EMACS_CONFIG_OPTIONS "(.+)"$'
[[ ${define} =~ ${pattern} ]]
test "${BASH_REMATCH[1]}" = "${CONFIGURE_FLAGS}"
}
if ! test -f src/config.h || ! check-config
then
./configure ${CONFIGURE_FLAGS}
fi
if ! ${MAKE}
then
${MAKE} bootstrap
fi
```
|