#
# Copyright (c) 2013-2015 Red Hat.
# Copyright (c) 2000,2003,2004 Silicon Graphics, Inc.  All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# for more details.
#

TOPDIR = ../..
include $(TOPDIR)/src/include/builddefs
-include ./GNUlocaldefs

CPMDAS = root pmcd \
	linux_proc linux_xfs linux \
	darwin freebsd netbsd solaris aix windows \
	sample simple trivial sendmail mailq txmon \
	apache cisco trace shping mounts weblog \
	mmv lmsensors process roomtemp summary etw \
	lustrecomm infiniband logger bash systemd \
	gfs2 jbd2 cifs rpm nvidia papi perfevent \
        dm

PLPMDAS = bonding netfilter zimbra postgresql \
	dbping memcache mysql vmware kvm \
	named news pdns samba dtsrun postfix gpsd \
	rsyslog elasticsearch snmp nginx nfsclient \
	ds389 ds389log activemq lustre gpfs

ifeq "$(HAVE_PYTHON)" "true"
PYPMDAS = gluster zswap unbound
ifeq "$(PMDA_JSON)" "true"
PYPMDAS += json
endif
endif

SUBDIRS = $(CPMDAS) $(PLPMDAS) $(PYPMDAS)
LDIRT = pmcd.conf

default :: default_pcp

default_pcp : $(SUBDIRS)
	@echo '# Performance Metrics Domain Specifications' > pmcd.conf
	@echo '# ' >> pmcd.conf
	@echo '# This file is automatically generated during the build' >> pmcd.conf
	@echo '# Name  Id      IPC     IPC Params      File/Cmd' >> pmcd.conf
	$(SUBDIRS_MAKERULE)
	@echo >> pmcd.conf
	@echo '[access]' >> pmcd.conf
	@echo 'disallow ".*" : store;' >> pmcd.conf
	@echo 'disallow ":*" : store;' >> pmcd.conf
	@echo 'allow "local:*" : all;' >> pmcd.conf

install :: install_pcp

install_pcp :: $(SUBDIRS)
	$(SUBDIRS_MAKERULE)

install_pcp :: default_pcp
	$(INSTALL) -m 755 -d `dirname $(PCP_PMCDCONF_PATH)`
	$(INSTALL) -m 644 pmcd.conf $(PCP_PMCDCONF_PATH)

include $(BUILDRULES)
