SYS := $(shell uname -s) ARCH := $(shell uname -m) ifeq (i686,$(findstring i686,$(ARCH))) override ARCH=i386 endif ifeq (i586,$(findstring i586,$(ARCH))) override ARCH=i386 endif ifeq (i486,$(findstring i486,$(ARCH))) override ARCH=i386 endif ifeq (i386,$(findstring i386,$(ARCH))) override ARCH=i386 endif ifeq (i86pc,$(findstring i86pc,$(ARCH))) override ARCH=i386 endif ifeq (x86,$(findstring x86,$(ARCH))) override ARCH=x86_64 endif ifeq ($(ARCH),x86_64) override ARCH=x86_64 endif ifeq ($(ARCH),amd64) override ARCH=x86_64 endif ifeq (ppc,$(findstring ppc,$(ARCH))) override ARCH=powerpc endif ifeq (sparc64,$(findstring sparc64,$(ARCH))) override ARCH=sparc endif ifeq (armv6,$(findstring armv6,$(ARCH))) override ARCH=arm endif ifeq (armv7,$(findstring armv7,$(ARCH))) override ARCH=arm endif ifeq (armv7,$(findstring armv7,$(ARCH))) override ARCH=arm endif ifeq (aarch32,$(findstring aarch32,$(ARCH))) override ARCH=arm endif ifeq (armv8l,$(findstring armv8l,$(ARCH))) override ARCH=arm endif ifeq (mips64,$(findstring mips64,$(ARCH))) override ARCH=mips endif ifeq (mips,$(findstring mips,$(ARCH))) override ARCH=mips endif
ifeq (MINGW,$(findstring MINGW,$(SYS))) override SYS=WINDOWS endif
CONFIG_PFMLIB_SHARED?=y CONFIG_PFMLIB_DEBUG?=y CONFIG_PFMLIB_NOPYTHON?=y
ifeq ($(SYS),Linux) MACHINE := $(shell grep -q 'Cell Broadband Engine' /proc/cpuinfo && echo cell) ifeq (cell,$(MACHINE)) override ARCH=cell endif endif
VERSION=4 REVISION=8 AGE=0
PREFIX=/usr/local LIBDIR=$(PREFIX)/lib INCDIR=$(PREFIX)/include MANDIR=$(PREFIX)/share/man DOCDIR=$(PREFIX)/share/doc/libpfm-$(VERSION).$(REVISION).$(AGE)
SYSINCDIR=.
ifeq ($(ARCH),ia64) CONFIG_PFMLIB_ARCH_IA64=y endif
ifeq ($(ARCH),x86_64) CONFIG_PFMLIB_ARCH_X86_64=y CONFIG_PFMLIB_ARCH_X86=y endif
ifeq ($(ARCH),i386) CONFIG_PFMLIB_ARCH_I386=y CONFIG_PFMLIB_ARCH_X86=y endif
ifeq ($(ARCH),mips) CONFIG_PFMLIB_ARCH_MIPS=y endif
ifeq ($(ARCH),powerpc) CONFIG_PFMLIB_ARCH_POWERPC=y endif
ifeq ($(ARCH),sparc) CONFIG_PFMLIB_ARCH_SPARC=y endif
ifeq ($(ARCH),arm) CONFIG_PFMLIB_ARCH_ARM=y endif
ifeq ($(ARCH),aarch64) CONFIG_PFMLIB_ARCH_ARM64=y endif
ifeq ($(ARCH),arm64) CONFIG_PFMLIB_ARCH_ARM64=y endif
ifeq ($(ARCH),s390x) CONFIG_PFMLIB_ARCH_S390X=y endif
ifeq ($(ARCH),cell) CONFIG_PFMLIB_CELL=y endif
CC?=gcc LIBS= INSTALL=install LDCONFIG=ldconfig LN?=ln -sf PFMINCDIR=$(TOPDIR)/include PFMLIBDIR=$(TOPDIR)/lib
DBG?=-g -Wall -Werror -Wextra -Wno-unused-parameter
ifeq ($(SYS),Darwin)
CC=clang DBG?=-g -Wall -Werror LDCONFIG=true endif
ifeq ($(SYS),FreeBSD)
DBG=-g -Wall -Werror endif
CFLAGS+=$(OPTIM) $(DBG) -I$(SYSINCDIR) -I$(PFMINCDIR) MKDEP=makedepend PFMLIB=$(PFMLIBDIR)/libpfm.a
ifeq ($(CONFIG_PFMLIB_DEBUG),y) CFLAGS += -DCONFIG_PFMLIB_DEBUG endif
CTAGS?=ctags
ifneq ($(SYS),Linux) CONFIG_PFMLIB_NOPYTHON=y endif
ifeq ($(SYS),Linux) CFLAGS+= -DCONFIG_PFMLIB_OS_LINUX endif
ifeq ($(CONFIG_PFMLIB_SHARED),n) LDFLAGS+= -static CONFIG_PFMLIB_NOPYTHON=y endif
ifeq ($(SYS),WINDOWS) CFLAGS +=-DPFMLIB_WINDOWS endif