|
diff --git a/Makefile b/Makefile index 374c2a5..3900162 100755 --- a/ Makefile+++ b/ Makefile |
@@ -17,8 +17,16 @@ endif |
17 | endif |
17 | endif |
18 | endif |
18 | endif |
19 | |
19 | |
| |
20 | sudo != printf '%s\n' $$(groups) | grep -F sudo |
| |
21 | |
| |
22 | .DEFAULT_GOAL = install |
20 | ifeq (0,$(shell id -u)) |
23 | ifeq (0,$(shell id -u)) |
21 | ROOT_INSTALL = y |
24 | ROOT_INSTALL = y |
| |
25 | else |
| |
26 | ifneq (,$(sudo)) |
| |
27 | ROOT_INSTALL = y |
| |
28 | .DEFAULT_GOAL = install-sudo |
| |
29 | endif |
22 | endif |
30 | endif |
23 | |
31 | |
24 | ifdef ROOT_INSTALL |
32 | ifdef ROOT_INSTALL |
@@ -51,23 +59,25 @@ tempdir=$(destdir)~tmp |
51 | |
59 | |
52 | symlink=$(optdir)/firefox |
60 | symlink=$(optdir)/firefox |
53 | desktop_file=$(applications_dir)/firefox.desktop |
61 | desktop_file=$(applications_dir)/firefox.desktop |
54 | global_symlink=$(bindir)/firefox |
62 | bin_symlink=$(bindir)/firefox |
55 | |
| |
56 | .DEFAULT_GOAL = install |
| |
57 | |
63 | |
58 | install_targets = $(symlink) $(global_symlink) $(desktop_file) $(alternatives) |
64 | install_targets = $(symlink) $(bin_symlink) $(alternatives) |
59 | .PHONY: install beta nightly stable $(install_targets) |
65 | .PHONY: install beta nightly stable $(install_targets) |
60 | ifndef UPDATE |
66 | ifndef UPDATE |
61 | # 'sudo make UPDATE=y' is suitable to run from cron (no output if nothing |
67 | # 'sudo make UPDATE=y' is suitable to run from cron (no output if nothing |
62 | # changed upstream) |
68 | # changed upstream) |
63 | install: $(install_targets) |
69 | install: $(install_targets) |
| |
70 | install-sudo: |
| |
71 | $(sudo) $(MAKE) $(MAKEFLAGS) $(MAKECMDGOALS) |
64 | else |
72 | else |
65 | maybe_symlink := $(if $(shell [ "$$(readlink $(symlink))" != "$(notdir $(destdir))" ] && echo y),$(symlink)) |
73 | install-sudo: |
| |
74 | @$(sudo) $(MAKE) $(MAKEFLAGS) $(MAKECMDGOALS) |
| |
75 | maybe_symlink != [ "$$(readlink $(symlink))" != "$(notdir $(destdir))" ] && printf '%%s\n' "$$(symlink)" |
66 | install: $(maybe_symlink) |
76 | install: $(maybe_symlink) |
67 | @: |
77 | @: |
68 | endif |
78 | endif |
69 | |
79 | |
70 | $(global_symlink): |
80 | $(bin_symlink): |
71 | mkdir -p $(dir $@) |
81 | mkdir -p $(dir $@) |
72 | ln -sf $(optdir)/firefox/firefox $(dir $@) |
82 | ln -sf $(optdir)/firefox/firefox $(dir $@) |
73 | |
83 | |
@@ -84,7 +94,7 @@ endif |
84 | $(symlink): $(destdir) |
94 | $(symlink): $(destdir) |
85 | ln -srnf $(destdir) $@ |
95 | ln -srnf $(destdir) $@ |
86 | |
96 | |
87 | beta nightly stable: install |
97 | beta nightly stable: $(.DEFAULT_GOAL) |
88 | |
98 | |
89 | $(destdir): $(tarball) |
99 | $(destdir): $(tarball) |
90 | mkdir -p $(tempdir) |
100 | mkdir -p $(tempdir) |
|