Comparison

GNUmakefile @ 12313:469e4453ed01

make: Split up install targets to allow different subset The prosody-trunk nightly packages currently use the Debian dh-lua framework to install core/, net/ and util/ into Lua-versioned directory trees, while plugins and executables should still be installed like before.
author Kim Alvefur <zash@zash.se>
date Sun, 13 Feb 2022 16:53:56 +0100
parent 12131:b4c0efff8dd3
child 12362:0fd58f54d653
comparison
equal deleted inserted replaced
12312:8119a58b3a5c 12313:469e4453ed01
29 $(MAKE) -C util-src install 29 $(MAKE) -C util-src install
30 ifeq ($(EXCERTS),yes) 30 ifeq ($(EXCERTS),yes)
31 -$(MAKE) -C certs localhost.crt example.com.crt 31 -$(MAKE) -C certs localhost.crt example.com.crt
32 endif 32 endif
33 33
34 install: prosody.install prosodyctl.install prosody.cfg.lua.install util/encodings.so util/encodings.so util/pposix.so util/signal.so 34 install-etc: prosody.cfg.lua.install
35 $(MKDIR) $(BIN) $(CONFIG) $(MODULES) $(SOURCE) 35 $(MKDIR) $(CONFIG)
36 $(MKDIR_PRIVATE) $(DATA)
37 $(MKDIR) $(MAN)/man1
38 $(MKDIR) $(CONFIG)/certs 36 $(MKDIR) $(CONFIG)/certs
39 $(MKDIR) $(SOURCE)/core $(SOURCE)/net $(SOURCE)/util 37 $(INSTALL_DATA) certs/* $(CONFIG)/certs
38 test -f $(CONFIG)/prosody.cfg.lua || $(INSTALL_DATA) prosody.cfg.lua.install $(CONFIG)/prosody.cfg.lua
39
40 install-bin: prosody.install prosodyctl.install
41 $(MKDIR) $(BIN)
40 $(INSTALL_EXEC) ./prosody.install $(BIN)/prosody 42 $(INSTALL_EXEC) ./prosody.install $(BIN)/prosody
41 $(INSTALL_EXEC) ./prosodyctl.install $(BIN)/prosodyctl 43 $(INSTALL_EXEC) ./prosodyctl.install $(BIN)/prosodyctl
44
45 install-core:
46 $(MKDIR) $(SOURCE)
47 $(MKDIR) $(SOURCE)/core
42 $(INSTALL_DATA) core/*.lua $(SOURCE)/core 48 $(INSTALL_DATA) core/*.lua $(SOURCE)/core
49
50 install-net:
51 $(MKDIR) $(SOURCE)
52 $(MKDIR) $(SOURCE)/net
43 $(INSTALL_DATA) net/*.lua $(SOURCE)/net 53 $(INSTALL_DATA) net/*.lua $(SOURCE)/net
44 $(MKDIR) $(SOURCE)/net/http $(SOURCE)/net/resolvers $(SOURCE)/net/websocket 54 $(MKDIR) $(SOURCE)/net/http $(SOURCE)/net/resolvers $(SOURCE)/net/websocket
45 $(INSTALL_DATA) net/http/*.lua $(SOURCE)/net/http 55 $(INSTALL_DATA) net/http/*.lua $(SOURCE)/net/http
46 $(INSTALL_DATA) net/resolvers/*.lua $(SOURCE)/net/resolvers 56 $(INSTALL_DATA) net/resolvers/*.lua $(SOURCE)/net/resolvers
47 $(INSTALL_DATA) net/websocket/*.lua $(SOURCE)/net/websocket 57 $(INSTALL_DATA) net/websocket/*.lua $(SOURCE)/net/websocket
58
59 install-util: util/encodings.so util/encodings.so util/pposix.so util/signal.so
60 $(MKDIR) $(SOURCE)
61 $(MKDIR) $(SOURCE)/util
48 $(INSTALL_DATA) util/*.lua $(SOURCE)/util 62 $(INSTALL_DATA) util/*.lua $(SOURCE)/util
63 $(MAKE) install -C util-src
49 $(INSTALL_DATA) util/*.so $(SOURCE)/util 64 $(INSTALL_DATA) util/*.so $(SOURCE)/util
50 $(MKDIR) $(SOURCE)/util/sasl 65 $(MKDIR) $(SOURCE)/util/sasl
51 $(INSTALL_DATA) util/sasl/*.lua $(SOURCE)/util/sasl 66 $(INSTALL_DATA) util/sasl/*.lua $(SOURCE)/util/sasl
52 $(MKDIR) $(SOURCE)/util/human 67 $(MKDIR) $(SOURCE)/util/human
53 $(INSTALL_DATA) util/human/*.lua $(SOURCE)/util/human 68 $(INSTALL_DATA) util/human/*.lua $(SOURCE)/util/human
54 $(MKDIR) $(SOURCE)/util/prosodyctl 69 $(MKDIR) $(SOURCE)/util/prosodyctl
55 $(INSTALL_DATA) util/prosodyctl/*.lua $(SOURCE)/util/prosodyctl 70 $(INSTALL_DATA) util/prosodyctl/*.lua $(SOURCE)/util/prosodyctl
71
72 install-plugins:
73 $(MKDIR) $(MODULES)
56 $(MKDIR) $(MODULES)/mod_pubsub $(MODULES)/adhoc $(MODULES)/muc $(MODULES)/mod_mam 74 $(MKDIR) $(MODULES)/mod_pubsub $(MODULES)/adhoc $(MODULES)/muc $(MODULES)/mod_mam
57 $(INSTALL_DATA) plugins/*.lua $(MODULES) 75 $(INSTALL_DATA) plugins/*.lua $(MODULES)
58 $(INSTALL_DATA) plugins/mod_pubsub/*.lua $(MODULES)/mod_pubsub 76 $(INSTALL_DATA) plugins/mod_pubsub/*.lua $(MODULES)/mod_pubsub
59 $(INSTALL_DATA) plugins/adhoc/*.lua $(MODULES)/adhoc 77 $(INSTALL_DATA) plugins/adhoc/*.lua $(MODULES)/adhoc
60 $(INSTALL_DATA) plugins/muc/*.lua $(MODULES)/muc 78 $(INSTALL_DATA) plugins/muc/*.lua $(MODULES)/muc
61 $(INSTALL_DATA) plugins/mod_mam/*.lua $(MODULES)/mod_mam 79 $(INSTALL_DATA) plugins/mod_mam/*.lua $(MODULES)/mod_mam
62 $(INSTALL_DATA) certs/* $(CONFIG)/certs 80
81 install-man:
82 $(MKDIR) $(MAN)/man1
63 $(INSTALL_DATA) man/prosodyctl.man $(MAN)/man1/prosodyctl.1 83 $(INSTALL_DATA) man/prosodyctl.man $(MAN)/man1/prosodyctl.1
64 test -f $(CONFIG)/prosody.cfg.lua || $(INSTALL_DATA) prosody.cfg.lua.install $(CONFIG)/prosody.cfg.lua 84
85 install-meta:
65 -test -f prosody.version && $(INSTALL_DATA) prosody.version $(SOURCE)/prosody.version 86 -test -f prosody.version && $(INSTALL_DATA) prosody.version $(SOURCE)/prosody.version
66 $(MAKE) install -C util-src 87
88 install-data:
89 $(MKDIR_PRIVATE) $(DATA)
90
91 install: install-util install-net install-core install-plugins install-bin install-etc install-man install-meta install-data
67 92
68 clean: 93 clean:
69 rm -f prosody.install 94 rm -f prosody.install
70 rm -f prosodyctl.install 95 rm -f prosodyctl.install
71 rm -f prosody.cfg.lua.install 96 rm -f prosody.cfg.lua.install