summaryrefslogtreecommitdiff
path: root/GNUmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'GNUmakefile')
-rw-r--r--GNUmakefile128
1 files changed, 128 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile
new file mode 100644
index 0000000..47fd902
--- /dev/null
+++ b/GNUmakefile
@@ -0,0 +1,128 @@
+#
+# Copyright (c) 2012-2014 Red Hat.
+# Copyright (c) 2000,2003 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.
+#
+
+ifneq (,)
+This makefile requires GNU Make.
+endif
+
+TOPDIR = .
+-include $(TOPDIR)/src/include/builddefs
+-include ./GNUlocaldefs
+
+CONFIGURE_GENERATED = pcp.lsm \
+ $(TOPDIR)/src/include/builddefs \
+ $(TOPDIR)/src/include/pcp/platform_defs.h
+
+LICFILES = COPYING
+DOCFILES = README INSTALL CHANGELOG VERSION.pcp
+CONFFILES = pcp.lsm
+LDIRT = config.cache config.status config.log files.rpm pro_files.rpm \
+ autom4te.cache install.manifest install_pro.manifest \
+ debug*.list devel_files libs_files base_files.rpm libs_files.rpm \
+ devel_files.rpm perl-pcp*.list* python-pcp*.list* conf_files
+LDIRDIRT = pcp-[0-9]*.[0-9]*.[0-9]* pcp-*-[0-9]*.[0-9]*.[0-9]*
+
+SUBDIRS = src
+ifneq ($(TARGET_OS),mingw)
+SUBDIRS += qa
+endif
+SUBDIRS += man books images build debian
+
+default :: default_pcp
+
+pcp : default_pcp
+
+default_pcp : $(CONFIGURE_GENERATED)
+ @for d in `echo $(SUBDIRS)`; do \
+ if test -d "$$d" ; then \
+ echo === $$d ===; \
+ $(MAKE) -C $$d $@ || exit $$?; \
+ fi; \
+ done
+
+install :: default_pcp install_pcp
+
+pack_pcp : default_pcp
+ $(MAKE) -C build $@
+
+install_pcp : default_pcp
+ # install the common directories _once_
+ifneq "$(findstring $(TARGET_OS),darwin mingw)" ""
+ # for Linux, this one comes from the chkconfig package
+ $(INSTALL) -m 755 -d $(PCP_RC_DIR)
+ $(INSTALL) -m 755 -d $(PCP_SASLCONF_DIR)
+endif
+ifeq ($(TARGET_OS),mingw)
+ # for Linux, this group comes from the filesystem package
+ $(INSTALL) -m 755 -d $(PCP_BIN_DIR)
+ $(INSTALL) -m 755 -d $(PCP_LIB_DIR)
+ $(INSTALL) -m 755 -d $(PCP_MAN_DIR)
+else
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)
+ $(INSTALL) -m 755 -d $(PCP_SHARE_DIR)
+endif
+ $(INSTALL) -m 775 -o $(PCP_USER) -g $(PCP_GROUP) -d $(PCP_TMP_DIR)
+ifeq "$(findstring $(PACKAGE_DISTRIBUTION), debian redhat fedora)" ""
+ # $PCP_RUN_DIR usually -> /var/run which may be a temporary filesystem
+ # and Debian's lintian complains about packages including /var/run/xxx
+ # artifacts ... $PCP_RUN_DIR is also conditionally created on the
+ # fly in each before use case, so the inclusion in the package is
+ # sometimes desirable, but not mandatory
+ #
+ $(INSTALL) -m 775 -o $(PCP_USER) -g $(PCP_GROUP) -d $(PCP_RUN_DIR)
+endif
+ $(INSTALL) -m 755 -d $(PCP_SYSCONF_DIR)
+ $(INSTALL) -m 755 -d $(PCP_BINADM_DIR)
+ $(INSTALL) -m 755 -d $(PCP_SHARE_DIR)/lib
+ $(INSTALL) -m 755 -d $(PCP_SHARE_DIR)/examples
+ $(INSTALL) -m 755 -d $(PCP_INC_DIR)
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)/config
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)/config/pmchart
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)/config/pmieconf
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)/config/pmlogconf
+ $(INSTALL) -m 775 -o $(PCP_USER) -g $(PCP_GROUP) -d $(PCP_VAR_DIR)/config/pmda
+ $(INSTALL) -m 775 -o $(PCP_USER) -g $(PCP_GROUP) -d $(PCP_LOG_DIR)
+ $(INSTALL) -m 755 -d $(PCP_VAR_DIR)/pmns
+ $(INSTALL) -m 755 -d $(PCP_PMDAS_DIR)
+ $(INSTALL) -m 755 -d $(PCP_DOC_DIR)
+ $(INSTALL) -m 755 -d $(PCP_DEMOS_DIR)
+ #
+ @for d in `echo $(SUBDIRS)`; do \
+ if test -d "$$d" ; then \
+ echo === $$d ===; \
+ $(MAKE) -C $$d $@ || exit $$?; \
+ fi; \
+ done
+ifneq "$(PACKAGE_DISTRIBUTION)" "debian"
+ $(INSTALL) -m 644 $(LICFILES) $(PCP_DOC_DIR)/$(LICFILES)
+endif
+ $(INSTALL) -m 644 pcp.lsm $(DOCFILES) $(PCP_DOC_DIR)
+ $(INSTALL) -m 755 install-sh $(PCP_BINADM_DIR)/install-sh
+
+ifdef BUILDRULES
+include $(BUILDRULES)
+else
+# if src/include/builddefs doesn't exist, we are pristine (hence also clean)
+realclean distclean clean clobber:
+ @true
+endif
+
+aclocal.m4:
+ # older aclocal(1) versions use --acdir but not the current versions
+ aclocal --system-acdir=`pwd`/m4 --output=$@
+
+pcp.lsm src/include/builddefs src/include/pcp/platform_defs.h: configure pcp.lsm.in src/include/builddefs.in src/include/pcp/platform_defs.h.in
+ @echo Please run ./configure with the appropriate options to generate $@.
+ @false