Skip to content
This repository was archived by the owner on May 22, 2019. It is now read-only.

Commit f9706cb

Browse files
committed
Fix build script to properly handle DESTDIR and PREFIX options.
1 parent 6899920 commit f9706cb

File tree

3 files changed

+35
-35
lines changed

3 files changed

+35
-35
lines changed

Makefile

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
DO := ./build/utils.sh
44
SET_CONFIG := $(DO) set-config
55
DESTDIR ?= /
6+
PREFIX ?= /usr
67
MAYBE_SUDO_DO := $(DO)
78

89
define colorecho
@@ -11,11 +12,6 @@ define colorecho
1112
@tput sgr0 || true
1213
endef
1314

14-
ifeq ($(MAKECMDGOALS),build_dev)
15-
debug_mode := True
16-
decorated := True
17-
stays_on_top := False
18-
endif
1915

2016
ifeq ($(DESTDIR),/)
2117
MAYBE_SUDO_DO := sudo $(DO)
@@ -24,18 +20,25 @@ endif
2420

2521
# Configuration: Use values from command line if provided, default values otherwise.
2622
at_spi_service ?= True
27-
background_images_dir ?= $(abspath $(DESTDIR)/usr/share/backgrounds)
28-
config_dir ?= $(abspath $(DESTDIR)/etc/lightdm)
29-
debug_mode ?= False
30-
decorated ?= False
31-
greeters_dir ?= $(abspath $(DESTDIR)/usr/share/xgreeters)
32-
locale_dir ?= $(abspath $(DESTDIR)/usr/share/locale)
33-
themes_dir ?= $(abspath $(DESTDIR)/usr/share/web-greeter/themes)
23+
background_images_dir ?= $(abspath $(PREFIX)/share/backgrounds)
24+
config_dir ?= $(abspath /etc/lightdm)
25+
debug_mode := False
26+
decorated := False
27+
greeters_dir ?= $(abspath $(PREFIX)/share/xgreeters)
28+
locale_dir ?= $(abspath $(PREFIX)/share/locale)
29+
themes_dir ?= $(abspath $(PREFIX)/share/web-greeter/themes)
3430
logo_image ?= $(themes_dir)/default/img/antergos-logo-user.png
35-
stays_on_top ?= True
31+
stays_on_top := True
3632
user_image ?= $(themes_dir)/default/img/antergos.png
3733

3834

35+
ifeq ($(MAKECMDGOALS),build_dev)
36+
debug_mode := True
37+
decorated := True
38+
stays_on_top := False
39+
endif
40+
41+
3942
_apply_config:
4043
@$(SET_CONFIG) at_spi_service $(at_spi_service)
4144
@$(SET_CONFIG) background_images_dir $(background_images_dir)
@@ -55,7 +58,7 @@ _build_init: clean
5558
all: install
5659

5760
build: _build_init _apply_config
58-
$(DO) build
61+
$(DO) build $(PREFIX)
5962

6063
build_dev: install
6164
$(MAYBE_SUDO_DO) install-dev
@@ -64,8 +67,8 @@ clean:
6467
$(DO) clean
6568

6669
install: build
67-
./build/utils.sh prepare-install
68-
$(MAYBE_SUDO_DO) install $(DESTDIR)
70+
./build/utils.sh prepare-install $(PREFIX)
71+
$(MAYBE_SUDO_DO) install $(DESTDIR) $(PREFIX)
6972
$(call colorecho, SUCCESS!)
7073

7174

build/utils.sh

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ REPO_DIR="$(dirname "${BUILD_DIR}")"
55
INSTALL_ROOT="${BUILD_DIR}/install_root"
66
PKGNAME='web-greeter'
77
DESTDIR=''
8+
PREFIX=''
89

910

1011
_handle_error() {
@@ -38,10 +39,10 @@ do_build() {
3839
&& mv greeter.py __main__.py \
3940
&& zip -rq ../"${PKGNAME}.zip" . -x '**__pycache__**' 'resources/*' \
4041
&& cd - >/dev/null \
41-
&& mkdir -p "${INSTALL_ROOT}"/usr/{bin,share} \
42-
&& echo '#!/bin/python3' >> "${INSTALL_ROOT}/usr/bin/web-greeter" \
43-
&& cat web-greeter.zip >> "${INSTALL_ROOT}/usr/bin/web-greeter" \
44-
&& chmod +x "${INSTALL_ROOT}/usr/bin/web-greeter")
42+
&& mkdir -p "${INSTALL_ROOT}${PREFIX}"/{bin,share} \
43+
&& echo '#!/bin/python3' >> "${INSTALL_ROOT}${PREFIX}/bin/web-greeter" \
44+
&& cat web-greeter.zip >> "${INSTALL_ROOT}${PREFIX}/bin/web-greeter" \
45+
&& chmod +x "${INSTALL_ROOT}${PREFIX}/bin/web-greeter")
4546
}
4647

4748
do_install() {
@@ -53,13 +54,6 @@ do_install_dev() {
5354
cp -RH "${REPO_DIR}/whither/whither" /usr/lib/python3.6/site-packages/
5455
}
5556

56-
do_success() {
57-
NO_COLOR=\x1b[0m
58-
SUCCESS_COLOR=\x1b[32;01m
59-
SUCCESS="${SUCCESS_COLOR}[SUCCESS!]${NO_COLOR}"
60-
echo "${SUCCESS}"
61-
}
62-
6357
generate_pot_file() {
6458
REPO_ROOT="$(dirname "${REPO_DIR}")"
6559
xgettext --from-code UTF-8 -o "${REPO_ROOT}/po/lightdm-webkit2-greeter.pot" -d lightdm-webkit2-greeter "${REPO_ROOT}"/src/*.c
@@ -74,25 +68,25 @@ init_build_dir() {
7468
prepare_install() {
7569
cd "${BUILD_DIR}"
7670
mkdir -p \
77-
"${INSTALL_ROOT}"/usr/share/{man/man1,metainfo,web-greeter,xgreeters} \
71+
"${INSTALL_ROOT}${PREFIX}"/share/{man/man1,metainfo,web-greeter,xgreeters} \
7872
"${INSTALL_ROOT}/etc/lightdm"
7973

8074
# Themes
81-
(cp -R "${REPO_DIR}/themes" "${INSTALL_ROOT}/usr/share/web-greeter" \
82-
&& cd "${INSTALL_ROOT}/usr/share/web-greeter" \
75+
(cp -R "${REPO_DIR}/themes" "${INSTALL_ROOT}${PREFIX}/share/web-greeter" \
76+
&& cd "${INSTALL_ROOT}${PREFIX}/share/web-greeter" \
8377
&& mv themes/_vendor .)
8478

8579
# Man Page
86-
cp "${BUILD_DIR}/dist/${PKGNAME}.1" "${INSTALL_ROOT}/usr/share/man/man1"
80+
cp "${BUILD_DIR}/dist/${PKGNAME}.1" "${INSTALL_ROOT}${PREFIX}/share/man/man1"
8781

8882
# Greeter Config
8983
cp "${BUILD_DIR}/dist/${PKGNAME}.yml" "${INSTALL_ROOT}/etc/lightdm"
9084

9185
# AppData File
92-
cp "${BUILD_DIR}/dist/com.antergos.${PKGNAME}.appdata.xml" "${INSTALL_ROOT}/usr/share/metainfo"
86+
cp "${BUILD_DIR}/dist/com.antergos.${PKGNAME}.appdata.xml" "${INSTALL_ROOT}${PREFIX}/share/metainfo"
9387

9488
# Desktop File
95-
cp "${BUILD_DIR}/dist/com.antergos.${PKGNAME}.desktop" "${INSTALL_ROOT}/usr/share/xgreeters"
89+
cp "${BUILD_DIR}/dist/com.antergos.${PKGNAME}.desktop" "${INSTALL_ROOT}${PREFIX}/share/xgreeters"
9690
}
9791

9892
set_config() {
@@ -119,6 +113,7 @@ case "$1" in
119113
;;
120114

121115
build)
116+
PREFIX="$2"
122117
do_build
123118
;;
124119

@@ -132,6 +127,7 @@ case "$1" in
132127

133128
install)
134129
DESTDIR="$2"
130+
PREFIX="$3"
135131
do_install
136132
clean_build_dir
137133
;;
@@ -141,6 +137,7 @@ case "$1" in
141137
;;
142138

143139
prepare-install)
140+
PREFIX="$2"
144141
prepare_install
145142
;;
146143

web-greeter/whither.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ WebGreeter:
4141
locale_dir: '@locale_dir@'
4242
themes_dir: '@themes_dir@'
4343
version:
44-
full: '3.0.0alpha4'
44+
full: '3.0.0alpha5'
4545
major: 3
4646
minor: 0
4747
micro: 0
48-
alpha: 4
48+
alpha: 5
4949
beta: False

0 commit comments

Comments
 (0)