# 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 version 2 of the GNU General Public License as
# published by the Free Software Foundation.
# 
# This program is distributed in the hope that it would be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# 
# Further, this software is distributed without any warranty that it is
# free of the rightful claim of any third person regarding infringement
# or the like.  Any license provided herein, whether implied or
# otherwise, applies only to this software file.  Patent licenses, if
# any, provided herein do not apply to combinations of this program with
# other software, or any other product whatsoever.
# 
# You should have received a copy of the GNU General Public License along
# with this program; if not, write the Free Software Foundation, Inc., 59
# Temple Place - Suite 330, Boston MA 02111-1307, USA.
# 
# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
# Mountain View, CA  94043, or:
# 
# http://www.sgi.com 
# 
# For further information regarding this notice, see: 
# 
# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
#
# Common gmake macros for building
#
# Generated automatically from builddefs.in by configure.
#
ifndef _BUILDDEFS_INCLUDED_
_BUILDDEFS_INCLUDED_ = 1

ifndef _PCP_CONF_INCLUDED_
_PCP_CONF_INCLUDED_ = 1
include /etc/pcp.conf
endif

BUILDRULES=$(TOPDIR)/src/include/buildrules

TARGET_OS = linux
TARGET_VENDOR = pc
TARGET_CPU = i386

BUILD_OS = linux
BUILD_VENDOR = pc
BUILD_CPU = i386

# General package information
include $(TOPDIR)/VERSION.pcp

PACKAGE_BUILDER = kenmcd@kenj-pc.melbourne.sgi.com

# LCFLAGS, LLDFLAGS, LLDLIBS, LSRCFILES and LDIRT may be specified in
# user Makefiles. Note: LSRCFILES is anything other than Makefile, $(CFILES)
# $(CXXFILES), or $(HFILES) and is used to construct the manifest list
# during the "dist" phase (packaging).

# turn on all warnings by default
WARN_OFF = -Wall

PTHREAD_LIB=-lpthread
PCP_LIBS = -L$(TOPDIR)/src/libpcp/src -L$(TOPDIR)/src/libpcp_pmda/src

CFLAGS += -fpic -fno-strict-aliasing $(LCFLAGS) $(WARN_OFF) -g -DPCP_DEBUG \
	-DPCP_VERSION=\"$(PCP_VERSION)\" -D_GNU_SOURCE -I$(TOPDIR)/src/include 

LDFLAGS += $(WARN_OFF) $(PCP_LIBS) $(LLDFLAGS)

SRCFILES= GNUmakefile $(HFILES) $(CFILES) $(CXXFILES) $(MFILES) \
	$(LSRCFILES) $(LFILES) $(YFILES)

LDLIBS = $(LLDLIBS) 
MAKEOPTS = --no-print-directory
DIRT = $(LDIRT) dep dep.bak $(OBJECTS) $(CMDTARGET) $(LIBTARGET) \
	$(STATICLIBTARGET) *.[1-9].gz

OBJECTS = $(ASFILES:.s=.o) \
          $(CXXFILES:.c++=.o) \
          $(CFILES:.c=.o) \
          $(FFILES:.f=.o) \
          $(LFILES:.l=.o) \
          $(YFILES:%.y=%.tab.o)

MAKE	= /usr/bin/make
CC	= gcc
CXX	= @cxx@
LD	= /usr/bin/ld
AWK	= gawk
SED	= /bin/sed
CPP	= gcc -E
INSTALL	= $(TOPDIR)/install-sh -o root -g bin
LEX	= flex
YACC	= bison -y
ECHO	= /bin/echo
LN_S	= ln -s
GREP    = grep

CCF	= $(CC) $(CFLAGS)
MAKEF	= $(MAKE) $(MAKEOPTS)
CXXF	= $(CXX) $(CXXFLAGS)
LDF	= $(LD) $(LDFLAGS)
MAKEDEPEND= /usr/bin/X11/makedepend

GZIP	= /usr/bin/gzip
BZIP2	= /usr/bin/bzip2
TAR	= /bin/tar
RPMPROG	= /usr/bin/rpmbuild
RPMBUILD= /usr/bin/rpmbuild
RPM	= /bin/rpm
RPM_VERSION = 4
GENDIST	= 
DPKG	= 

HAVE_GZIPPED_MANPAGES = true
HAVE_BZIP2ED_MANPAGES = false
CPP_SIMPLE = /lib/cpp
CPP_SIMPLE_ARGS =  -traditional -undef
RDYNAMIC_FLAG = -rdynamic

#
#
# additional libraries needed for particular functions
LIB_FOR_BASENAME = 
LIB_FOR_DLOPEN = -ldl
LIB_FOR_MATH = 

SHELL = /bin/sh
IMAGES_DIR = $(TOPDIR)/all-images
DIST_DIR = $(TOPDIR)/dist

SUBDIRS_MAKERULE = \
	@for d in `echo $^ `; do \
	    if test -d "$$d" -a -f "$$d/GNUmakefile"; then \
		$(ECHO) === $$d ===; \
		$(MAKEF) -C $$d $@ || exit $$?; \
	    fi; \
	done

MAN_MAKERULE = \
    @for f in *.[12345678] ""; do \
	if test ! -z "$$f"; then \
	    $(GZIP) -c < $$f > $$f.gz; \
	fi; \
    done

INSTALL_MAN = \
    test -z "$$MAN_PAGES" && MAN_PAGES="$(MAN_PAGES)"; \
    for d in `echo $$MAN_PAGES`; do \
	first=true; \
	base=`echo $$d | sed -e 's/\.[0-9]//g'`; \
        cat $$d | $(AWK) ' \
	    BEGIN			{ do_print=0; print "'"$$base"'"; } \
	    $$1 == ".ds"		{ ds["\\\\\\*\\("$$2] = $$3; } \
	    /^\.SH NAME/		{ do_print=1; next } \
	    $$1 == ".SH" && do_print	{ do_print=0; next } \
	    do_print			{ if (match($$0, "^\\\\f3.*\\\\f1")) { \
					    gsub ("\\\\f3", "", $$0); \
					    gsub ("\\\\f1.*", "", $$0); \
					    for ( d in ds ) { \
						sub (d, ds[d], $$0); \
					    } \
					    print; } }' | sort -u | \
	while read m; do \
	    [ -z "$$m" -o "$$m" = "\\" ] && continue; \
	    t=$(MAN_DEST)/$$m.$(MAN_SECTION); \
	    if $$first; then \
		if $(HAVE_GZIPPED_MANPAGES) ; then \
		    $(GZIP) -c $$d > $$d.gz; _sfx=.gz; \
		fi; \
		if $(HAVE_BZIP2ED_MANPAGES) ; then \
		    $(BZIP2) -c $$d > $$d.bz2; _sfx=.bz2; \
		fi; \
		u=$$m.$(MAN_SECTION)$$_sfx; \
		echo $(INSTALL) -m 644 $${d}$$_sfx $${t}$$_sfx; \
		$(INSTALL) -m 644 $${d}$$_sfx $${t}$$_sfx; \
	    else \
		echo $(INSTALL) -S $$u $${t}$$_sfx; \
		$(INSTALL) -S $$u $${t}$$_sfx; \
	    fi; \
	    first=false; \
	done; \
    done

DIST_MAKERULE = \
	$(MAKEF) -C build dist

#
# For tagets that should always be rebuilt,
# define a target that is never up-to-date.
# Targets needing this should depend on $(_FORCE)
_FORCE = __force_build

endif # _BUILDDEFS_INCLUDED_
