GNUmakefile
author Jonas Schäfer <jonas@wielicki.name>
Mon, 10 Jan 2022 18:23:54 +0100
branch0.11
changeset 12185 783056b4e448
parent 9432 5f51710d7c1e
child 9783 0b04099b49de
permissions -rw-r--r--
util.xml: Do not allow doctypes, comments or processing instructions Yes. This is as bad as it sounds. CVE pending. In Prosody itself, this only affects mod_websocket, which uses util.xml to parse the <open/> frame, thus allowing unauthenticated remote DoS using Billion Laughs. However, third-party modules using util.xml may also be affected by this. This commit installs handlers which disallow the use of doctype declarations and processing instructions without any escape hatch. It, by default, also introduces such a handler for comments, however, there is a way to enable comments nontheless. This is because util.xml is used to parse human-facing data, where comments are generally a desirable feature, and also because comments are generally harmless.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
463
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     1
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     2
include config.unix
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     3
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     4
BIN = $(DESTDIR)$(PREFIX)/bin
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     5
CONFIG = $(DESTDIR)$(SYSCONFDIR)
6577
cd0088c73daf configure, Makefile: Add --libdir option to ./configure, allowing you to override the $PREFIX/lib/ default. Fixes #470.
Matthew Wild <mwild1@gmail.com>
parents: 6044
diff changeset
     6
MODULES = $(DESTDIR)$(LIBDIR)/prosody/modules
cd0088c73daf configure, Makefile: Add --libdir option to ./configure, allowing you to override the $PREFIX/lib/ default. Fixes #470.
Matthew Wild <mwild1@gmail.com>
parents: 6044
diff changeset
     7
SOURCE = $(DESTDIR)$(LIBDIR)/prosody
503
00702b66beb1 Makefile fix for creating datadir in correct place on install
Matthew Wild <mwild1@gmail.com>
parents: 502
diff changeset
     8
DATA = $(DESTDIR)$(DATADIR)
1464
047ed6e52a41 Added man page for prosodyctl
Dwayne Bent <dbb.0@liqd.org>
parents: 1454
diff changeset
     9
MAN = $(DESTDIR)$(PREFIX)/share/man
502
21dc299387a6 Installation improvements (auto-creation of data directories)
Matthew Wild <mwild1@gmail.com>
parents: 501
diff changeset
    10
6577
cd0088c73daf configure, Makefile: Add --libdir option to ./configure, allowing you to override the $PREFIX/lib/ default. Fixes #470.
Matthew Wild <mwild1@gmail.com>
parents: 6044
diff changeset
    11
INSTALLEDSOURCE = $(LIBDIR)/prosody
480
5d00d623904e Update Makefile to set correct paths on install with Debian package
Matthew Wild <mwild1@gmail.com>
parents: 467
diff changeset
    12
INSTALLEDCONFIG = $(SYSCONFDIR)
6577
cd0088c73daf configure, Makefile: Add --libdir option to ./configure, allowing you to override the $PREFIX/lib/ default. Fixes #470.
Matthew Wild <mwild1@gmail.com>
parents: 6044
diff changeset
    13
INSTALLEDMODULES = $(LIBDIR)/prosody/modules
502
21dc299387a6 Installation improvements (auto-creation of data directories)
Matthew Wild <mwild1@gmail.com>
parents: 501
diff changeset
    14
INSTALLEDDATA = $(DATADIR)
480
5d00d623904e Update Makefile to set correct paths on install with Debian package
Matthew Wild <mwild1@gmail.com>
parents: 467
diff changeset
    15
7686
7356bf4425f4 Makefile: Preserve timestamps of installed files (fixes #547)
Kim Alvefur <zash@zash.se>
parents: 7685
diff changeset
    16
INSTALL=install -p
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    17
INSTALL_DATA=$(INSTALL) -m644
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    18
INSTALL_EXEC=$(INSTALL) -m755
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    19
MKDIR=install -d
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    20
MKDIR_PRIVATE=$(MKDIR) -m750
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    21
9290
420e0bf55bf5 GNUmakefile: Allow overriding path to luacheck
Kim Alvefur <zash@zash.se>
parents: 8826
diff changeset
    22
LUACHECK=luacheck
9291
1330b5290a10 GNUmakefile: Allow overriding path to busted
Kim Alvefur <zash@zash.se>
parents: 9290
diff changeset
    23
BUSTED=busted
9290
420e0bf55bf5 GNUmakefile: Allow overriding path to luacheck
Kim Alvefur <zash@zash.se>
parents: 8826
diff changeset
    24
8615
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    25
.PHONY: all test coverage clean install
4396
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3266
diff changeset
    26
1310
b5a7a9fc9161 Makefile: Experimental support for recording the version of an installed Prosody
Matthew Wild <mwild1@gmail.com>
parents: 1300
diff changeset
    27
all: prosody.install prosodyctl.install prosody.cfg.lua.install prosody.version
586
b828d7d47973 Add posix support library, and adjust makefiles for it
Matthew Wild <mwild1@gmail.com>
parents: 514
diff changeset
    28
	$(MAKE) -C util-src install
5933
56b1f151f4a3 Makefile, configure: Add option for disabling generation of example certificates
Kim Alvefur <zash@zash.se>
parents: 5924
diff changeset
    29
ifeq ($(EXCERTS),yes)
6888
07078f762061 Makefile: Use hypen to tell Make when to ignore errors
Kim Alvefur <zash@zash.se>
parents: 6887
diff changeset
    30
	-$(MAKE) -C certs localhost.crt example.com.crt
5933
56b1f151f4a3 Makefile, configure: Add option for disabling generation of example certificates
Kim Alvefur <zash@zash.se>
parents: 5924
diff changeset
    31
endif
463
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    32
1090
e47310ca513b Makefile: Process and install prosodyctl
Matthew Wild <mwild1@gmail.com>
parents: 993
diff changeset
    33
install: prosody.install prosodyctl.install prosody.cfg.lua.install util/encodings.so util/encodings.so util/pposix.so util/signal.so
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    34
	$(MKDIR) $(BIN) $(CONFIG) $(MODULES) $(SOURCE)
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    35
	$(MKDIR_PRIVATE) $(DATA)
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    36
	$(MKDIR) $(MAN)/man1
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    37
	$(MKDIR) $(CONFIG)/certs
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    38
	$(MKDIR) $(SOURCE)/core $(SOURCE)/net $(SOURCE)/util
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    39
	$(INSTALL_EXEC) ./prosody.install $(BIN)/prosody
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    40
	$(INSTALL_EXEC) ./prosodyctl.install $(BIN)/prosodyctl
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    41
	$(INSTALL_DATA) core/*.lua $(SOURCE)/core
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    42
	$(INSTALL_DATA) net/*.lua $(SOURCE)/net
8557
12a68e0d0ecf Makefile: Also package /net/resolvers
Michel Le Bihan <michel@lebihan.pl>
parents: 8349
diff changeset
    43
	$(MKDIR) $(SOURCE)/net/http $(SOURCE)/net/resolvers $(SOURCE)/net/websocket
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    44
	$(INSTALL_DATA) net/http/*.lua $(SOURCE)/net/http
8557
12a68e0d0ecf Makefile: Also package /net/resolvers
Michel Le Bihan <michel@lebihan.pl>
parents: 8349
diff changeset
    45
	$(INSTALL_DATA) net/resolvers/*.lua $(SOURCE)/net/resolvers
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    46
	$(INSTALL_DATA) net/websocket/*.lua $(SOURCE)/net/websocket
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    47
	$(INSTALL_DATA) util/*.lua $(SOURCE)/util
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    48
	$(INSTALL_DATA) util/*.so $(SOURCE)/util
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    49
	$(MKDIR) $(SOURCE)/util/sasl
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    50
	$(INSTALL_DATA) util/sasl/*.lua $(SOURCE)/util/sasl
7882
5d0175d3ecf4 Makefile: Install mod_mam (fixes #825)
Kim Alvefur <zash@zash.se>
parents: 7793
diff changeset
    51
	$(MKDIR) $(MODULES)/mod_s2s $(MODULES)/mod_pubsub $(MODULES)/adhoc $(MODULES)/muc $(MODULES)/mod_mam
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    52
	$(INSTALL_DATA) plugins/*.lua $(MODULES)
7692
97c013e8f002 Makefile: Fix installing modules into their correct subdirectories (thanks mimi89999)
Kim Alvefur <zash@zash.se>
parents: 7686
diff changeset
    53
	$(INSTALL_DATA) plugins/mod_s2s/*.lua $(MODULES)/mod_s2s
97c013e8f002 Makefile: Fix installing modules into their correct subdirectories (thanks mimi89999)
Kim Alvefur <zash@zash.se>
parents: 7686
diff changeset
    54
	$(INSTALL_DATA) plugins/mod_pubsub/*.lua $(MODULES)/mod_pubsub
97c013e8f002 Makefile: Fix installing modules into their correct subdirectories (thanks mimi89999)
Kim Alvefur <zash@zash.se>
parents: 7686
diff changeset
    55
	$(INSTALL_DATA) plugins/adhoc/*.lua $(MODULES)/adhoc
97c013e8f002 Makefile: Fix installing modules into their correct subdirectories (thanks mimi89999)
Kim Alvefur <zash@zash.se>
parents: 7686
diff changeset
    56
	$(INSTALL_DATA) plugins/muc/*.lua $(MODULES)/muc
7882
5d0175d3ecf4 Makefile: Install mod_mam (fixes #825)
Kim Alvefur <zash@zash.se>
parents: 7793
diff changeset
    57
	$(INSTALL_DATA) plugins/mod_mam/*.lua $(MODULES)/mod_mam
7685
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    58
	$(INSTALL_DATA) certs/* $(CONFIG)/certs
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    59
	$(INSTALL_DATA) man/prosodyctl.man $(MAN)/man1/prosodyctl.1
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    60
	test -f $(CONFIG)/prosody.cfg.lua || $(INSTALL_DATA) prosody.cfg.lua.install $(CONFIG)/prosody.cfg.lua
e07116c0df77 Makefile: Refactor all uses of the install command with variables, allowing them to be overridden
Kim Alvefur <zash@zash.se>
parents: 7684
diff changeset
    61
	-test -f prosody.version && $(INSTALL_DATA) prosody.version $(SOURCE)/prosody.version
463
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    62
	$(MAKE) install -C util-src
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    63
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    64
clean:
467
66f145f5c932 Update Makefile to now pass config paths to prosody. Update prosody, modulemanager and connectionlisteners to obey these paths.
Matthew Wild <mwild1@gmail.com>
parents: 465
diff changeset
    65
	rm -f prosody.install
1090
e47310ca513b Makefile: Process and install prosodyctl
Matthew Wild <mwild1@gmail.com>
parents: 993
diff changeset
    66
	rm -f prosodyctl.install
492
279f64370885 Don't write to prosody.cfg.lua from Makefile. Much apologies to poor albert :(
Matthew Wild <mwild1@gmail.com>
parents: 481
diff changeset
    67
	rm -f prosody.cfg.lua.install
1310
b5a7a9fc9161 Makefile: Experimental support for recording the version of an installed Prosody
Matthew Wild <mwild1@gmail.com>
parents: 1300
diff changeset
    68
	rm -f prosody.version
463
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    69
	$(MAKE) clean -C util-src
464
f1827353fd58 More Makefile improvements
Matthew Wild <mwild1@gmail.com>
parents: 463
diff changeset
    70
7074
d9e620adfb64 Makefile: Add 'test' target that runs tests
Kim Alvefur <zash@zash.se>
parents: 6910
diff changeset
    71
test:
9291
1330b5290a10 GNUmakefile: Allow overriding path to busted
Kim Alvefur <zash@zash.se>
parents: 9290
diff changeset
    72
	$(BUSTED) --lua=$(RUNWITH)
7074
d9e620adfb64 Makefile: Add 'test' target that runs tests
Kim Alvefur <zash@zash.se>
parents: 6910
diff changeset
    73
8615
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    74
coverage:
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    75
	-rm -- luacov.*
9432
5f51710d7c1e make coverage: Allow overriding path to busted
Kim Alvefur <zash@zash.se>
parents: 9426
diff changeset
    76
	$(BUSTED) --lua=$(RUNWITH) -c
8615
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    77
	luacov
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    78
	luacov-console
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    79
	luacov-console -s
8785
daa518a22c34 GNUMakefile: Add note about how to list coverage of individual files
Matthew Wild <mwild1@gmail.com>
parents: 8615
diff changeset
    80
	@echo "To inspect individual files run: luacov-console -l FILENAME"
8615
1f2fb8070c7c GNUMakefile: Add 'coverage' target (requires luacov and luacov-console)
Matthew Wild <mwild1@gmail.com>
parents: 8595
diff changeset
    81
8801
505722879b55 GNUmakefile: Add 'lint' target
Matthew Wild <mwild1@gmail.com>
parents: 8785
diff changeset
    82
lint:
9292
b5fc11475b5d GNUmakefile: Tell Mercurial to behave consistenly
Kim Alvefur <zash@zash.se>
parents: 9291
diff changeset
    83
	$(LUACHECK) -q $$(HGPLAIN= hg files -I '**.lua') prosody prosodyctl
9419
15cd0d9cde7c make lint: Fix 'ignored files' count
Matthew Wild <mwild1@gmail.com>
parents: 9292
diff changeset
    84
	@echo $$(sed -n '/^\tlocal exclude_files/,/^}/p;' .luacheckrc | sed '1d;$d' | wc -l) files ignored
9426
d4e8aedc0f82 make lint: Add shellcheck of configure script
Matthew Wild <mwild1@gmail.com>
parents: 9419
diff changeset
    85
	shellcheck configure
8801
505722879b55 GNUmakefile: Add 'lint' target
Matthew Wild <mwild1@gmail.com>
parents: 8785
diff changeset
    86
4402
05f8826972ba Makefile: Merge identical rules and some other improvements.
Kim Alvefur <zash@zash.se>
parents: 4396
diff changeset
    87
util/%.so:
464
f1827353fd58 More Makefile improvements
Matthew Wild <mwild1@gmail.com>
parents: 463
diff changeset
    88
	$(MAKE) install -C util-src
467
66f145f5c932 Update Makefile to now pass config paths to prosody. Update prosody, modulemanager and connectionlisteners to obey these paths.
Matthew Wild <mwild1@gmail.com>
parents: 465
diff changeset
    89
4402
05f8826972ba Makefile: Merge identical rules and some other improvements.
Kim Alvefur <zash@zash.se>
parents: 4396
diff changeset
    90
%.install: %
6044
1ce05d38d1bb Makefile: Change sed regex to be compatible with FreeBSD's odd sed, and change / to | to allow paths to be used in RUNWITH (thanks Ben)
Matthew Wild <mwild1@gmail.com>
parents: 5933
diff changeset
    91
	sed "1s| lua$$| $(RUNWITH)|; \
5145
53f741a5a73a configure, Makefile: Allow runtime to be overridden.
Kim Alvefur <zash@zash.se>
parents: 4686
diff changeset
    92
		s|^CFG_SOURCEDIR=.*;$$|CFG_SOURCEDIR='$(INSTALLEDSOURCE)';|; \
514
03d7da01843e Change sed usage back into one sed script for incompetent versions of sed
Matthew Wild <mwild1@gmail.com>
parents: 512
diff changeset
    93
		s|^CFG_CONFIGDIR=.*;$$|CFG_CONFIGDIR='$(INSTALLEDCONFIG)';|; \
03d7da01843e Change sed usage back into one sed script for incompetent versions of sed
Matthew Wild <mwild1@gmail.com>
parents: 512
diff changeset
    94
		s|^CFG_DATADIR=.*;$$|CFG_DATADIR='$(INSTALLEDDATA)';|; \
4402
05f8826972ba Makefile: Merge identical rules and some other improvements.
Kim Alvefur <zash@zash.se>
parents: 4396
diff changeset
    95
		s|^CFG_PLUGINDIR=.*;$$|CFG_PLUGINDIR='$(INSTALLEDMODULES)/';|;" < $^ > $@
467
66f145f5c932 Update Makefile to now pass config paths to prosody. Update prosody, modulemanager and connectionlisteners to obey these paths.
Matthew Wild <mwild1@gmail.com>
parents: 465
diff changeset
    96
4402
05f8826972ba Makefile: Merge identical rules and some other improvements.
Kim Alvefur <zash@zash.se>
parents: 4396
diff changeset
    97
prosody.cfg.lua.install: prosody.cfg.lua.dist
05f8826972ba Makefile: Merge identical rules and some other improvements.
Kim Alvefur <zash@zash.se>
parents: 4396
diff changeset
    98
	sed 's|certs/|$(INSTALLEDCONFIG)/certs/|' $^ > $@
1090
e47310ca513b Makefile: Process and install prosodyctl
Matthew Wild <mwild1@gmail.com>
parents: 993
diff changeset
    99
6886
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   100
%.version: %.release
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   101
	cp $^ $@
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   102
6887
e32275ed5632 Makefile: Support generating prosody.version from hg archive metadata file
Kim Alvefur <zash@zash.se>
parents: 6886
diff changeset
   103
%.version: .hg_archival.txt
e32275ed5632 Makefile: Support generating prosody.version from hg archive metadata file
Kim Alvefur <zash@zash.se>
parents: 6886
diff changeset
   104
	sed -n 's/^node: \(............\).*/\1/p' $^ > $@
e32275ed5632 Makefile: Support generating prosody.version from hg archive metadata file
Kim Alvefur <zash@zash.se>
parents: 6886
diff changeset
   105
6886
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   106
%.version: .hg/dirstate
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   107
	hexdump -n6 -e'6/1 "%02x"' $^ > $@
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   108
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   109
%.version:
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   110
	echo unknown > $@
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   111
954a8a8c46d6 Makefile: Simplify generation of prosody.version using magic Make magic
Kim Alvefur <zash@zash.se>
parents: 6843
diff changeset
   112