X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=Makefile;h=e4f02ff21bb367ab989ae9a8513868219d38acf3;hb=88b8b932308215c770c4e9aae96a098421b8a477;hp=a46a1e473e44aa2da4cd4faebe374e4784693868;hpb=8977d252fc44ae953df4bde4a2f1c5895beea4e0;p=apps%2Fpfixtools.git diff --git a/Makefile b/Makefile index a46a1e4..e4f02ff 100644 --- a/Makefile +++ b/Makefile @@ -16,57 +16,52 @@ # products derived from this software without specific prior written # # permission. # # # -# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND # -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR # -# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS # -# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF # -# THE POSSIBILITY OF SUCH DAMAGE. # +# THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND ANY EXPRESS # +# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # +# DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY # +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS # +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, # +# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN # +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # +# POSSIBILITY OF SUCH DAMAGE. # +# # +# Copyright (c) 2006-2008 the Authors # +# see AUTHORS and source files for details # ############################################################################## -prefix ?= /usr/local - -PROGRAMS = postlicyd pfix-srsd -LIBS = common -SUBDIRS = $(LIBS) $(PROGRAMS) - -CLEAN_TARGETS = $(addprefix clean-,$(SUBDIRS)) -DISTCLEAN_TARGETS = $(addprefix distclean-,$(SUBDIRS)) -INSTALL_TARGETS = $(addprefix install-,$(SUBDIRS)) +PROGDIRS = postlicyd pfix-srsd +LIBDIRS = common +SUBDIRS = $(LIBDIRS) $(PROGDIRS) # RULES ###################################################################{{{ -all: $(SUBDIRS) - -clean: $(CLEAN_TARGETS) - -distclean: $(DISTCLEAN_TARGETS) - -install: all $(INSTALL_TARGETS) - -$(PROGRAMS): $(LIBS) +all clean distclean doc install: %: %-recurse -$(SUBDIRS): %: - make -C $@ all - -$(CLEAN_TARGETS): clean-%: - make -C $* clean - -$(DISTCLEAN_TARGETS): distclean-%: - make -C $* distclean - -$(INSTALL_TARGETS): install-%: install-dir - make -C $* install +%-recurse: + @set -e $(foreach dir,$(SUBDIRS),; $(MAKE) -C $(dir) $*) +install-recurse: install-dir +install: install-postlicyd-tools install-postlicyd-conf install-dir: install -d $(DESTDIR)$(prefix)/sbin + install -d $(DESTDIR)$(prefix)/bin + install -d $(DESTDIR)$(prefix)/share/doc/pfixtools install -d $(DESTDIR)/etc/pfixtools -.PHONY: clean distclean install install-dir $(SUBDIRS) $(CLEAN_TARGETS) \ - $(DISTCLEAN_TARGETS) $(INSTALL_TARGETS) +install-postlicyd-tools: + install tools/postlicyd-rsyncrbl $(DESTDIR)$(prefix)/bin/postlicyd-rsyncrbl + install tools/postgrey2postlicyd $(DESTDIR)$(prefix)/bin/postgrey2postlicyd + install tools/rbldns2postlicyd $(DESTDIR)$(prefix)/bin/rbldns2postlicyd + +install-postlicyd-conf: + install -m 640 example/postlicyd.conf $(DESTDIR)/etc/pfixtools/postlicyd.example.conf + install -m 640 example/postlicyd-rsyncrbl.conf $(DESTDIR)/etc/pfixtools/postlicyd-rsyncrbl.example.conf + +.PHONY: clean distclean install install-% %-recurse + ###########################################################################}}} + +include mk/common.mk