Blame src/Rules.perfmon2

Packit Service a1973e
DESCR = "Linux with perfmon2 kernel support and library"
Packit Service a1973e
Packit Service a1973e
ifneq (/usr,$(PFM_PREFIX))
Packit Service a1973e
PWD = $(shell pwd)
Packit Service a1973e
ifeq (,$(PFM_LIB_PATH))
Packit Service a1973e
ifeq (,$(PFM_ROOT))
Packit Service a1973e
        PFM_ROOT := $(PWD)/libpfm-3.y
Packit Service a1973e
endif
Packit Service a1973e
        PFM_LIB_PATH := $(PFM_ROOT)/lib
Packit Service a1973e
	CC_SHR += -Wl,-rpath-link -Wl,$(PFM_LIB_PATH)
Packit Service a1973e
endif
Packit Service a1973e
ifeq (,$(PFM_INC_PATH))
Packit Service a1973e
ifeq (,$(PFM_ROOT))
Packit Service a1973e
        PFM_ROOT := $(PWD)/libpfm-3.y
Packit Service a1973e
endif
Packit Service a1973e
        PFM_INC_PATH := $(PFM_ROOT)/include
Packit Service a1973e
endif
Packit Service a1973e
ifneq (/usr/include,$(PFM_INC_PATH))
Packit Service a1973e
CFLAGS	+= -I$(PFM_INC_PATH)
Packit Service a1973e
endif
Packit Service a1973e
endif
Packit Service a1973e
Packit Service a1973e
MISCHDRS += linux-lock.h mb.h papi_libpfm_events.h
Packit Service a1973e
MISCSRCS += papi_libpfm3_events.c 
Packit Service a1973e
SHLIBDEPS = -Bdynamic -L$(PFM_LIB_PATH) -lpfm
Packit Service a1973e
PFM_OBJS=$(shell $(AR) t $(PFM_LIB_PATH)/libpfm.a 2>/dev/null)
Packit Service a1973e
MISCOBJS = $(PFM_OBJS) $(MISCSRCS:.c=.o)
Packit Service a1973e
Packit Service a1973e
ifeq (,$(PFM_OBJS))
Packit Service a1973e
$(PFM_LIB_PATH)/libpfm.a:
Packit Service a1973e
ifneq (,${PFM_ROOT})
Packit Service a1973e
	$(MAKE) -C $(PFM_ROOT) ARCH="$(ARCH)" CC="$(CC) $(BITFLAGS)" CONFIG_PFMLIB_OLD_PFMV2="$(PFM_OLD_PFMV2)" lib
Packit Service a1973e
else
Packit Service a1973e
	@echo '$@ not installed!'; exit 1
Packit Service a1973e
endif
Packit Service a1973e
	$(MAKE)
Packit Service a1973e
endif
Packit Service a1973e
Packit Service a1973e
include Makefile.inc
Packit Service a1973e
Packit Service a1973e
config.h:
Packit Service a1973e
	@echo 'Please clobber your build and run ./configure."
Packit Service a1973e
Packit Service a1973e
$(PFM_OBJS): $(PFM_LIB_PATH)/libpfm.a
Packit Service a1973e
	$(AR) xv $<
Packit Service a1973e
Packit Service a1973e
papi_libpfm3_events.o: papi_libpfm3_events.c $(HEADERS)
Packit Service a1973e
	$(CC) $(LIBCFLAGS) $(OPTFLAGS) -c papi_libpfm3_events.c -o $@
Packit Service a1973e
Packit Service a1973e
native_clean:
Packit Service a1973e
	-rm -f $(MISCOBJS)
Packit Service a1973e
ifneq (,${PFM_ROOT})
Packit Service a1973e
	$(MAKE) -C $(PFM_ROOT) ARCH="$(ARCH)" clean
Packit Service a1973e
endif
Packit Service a1973e
Packit Service a1973e
native_install:
Packit Service a1973e
ifneq (,${PFM_ROOT})
Packit Service a1973e
	-$(MAKE) -C $(PFM_ROOT) ARCH="$(ARCH)" CONFIG_PFMLIB_OLD_PFMV2="$(PFM_OLD_PFMV2)" DESTDIR=$(DESTDIR) PREFIX=$(PREFIX) install_prefix=$(PREFIX) LIBDIR=$(LIBDIR) INCDIR=$(INCDIR) MANDIR=$(MANDIR) install
Packit Service a1973e
endif
Packit Service a1973e
	-install -d $(DESTDIR)$(LIBDIR)
Packit Service a1973e
ifneq (,$(findstring shared,$(LIBS)))
Packit Service a1973e
	cp -p $(SHLIB) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC)
Packit Service a1973e
	cd $(DESTDIR)$(LIBDIR); ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPIVER)
Packit Service a1973e
	cd $(DESTDIR)$(LIBDIR); ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so
Packit Service a1973e
endif
Packit Service a1973e
	-install -d $(DESTDIR)$(DATADIR)
Packit Service a1973e
	cp -f ./papi_events.csv $(DESTDIR)$(DATADIR)
Packit Service a1973e
Packit Service a1973e
native_clobber:
Packit Service a1973e
ifneq (,${PFM_ROOT})
Packit Service a1973e
	 $(MAKE) -C $(PFM_ROOT) ARCH="$(ARCH)" distclean
Packit Service a1973e
endif