Blame Makefile

Packit Service 63ea89
NAME=liburing
Packit Service 63ea89
SPECFILE=$(NAME).spec
Packit Service 63ea89
VERSION=$(shell awk '/Version:/ { print $$2 }' $(SPECFILE))
Packit Service 63ea89
TAG = $(NAME)-$(VERSION)
Packit Service 63ea89
RPMBUILD=$(shell `which rpmbuild >&/dev/null` && echo "rpmbuild" || echo "rpm")
Packit Service 63ea89
Packit Service 63ea89
INSTALL=install
Packit Service 63ea89
Packit Service 63ea89
default: all
Packit Service 63ea89
Packit Service 63ea89
all:
Packit Service 63ea89
	@$(MAKE) -C src
Packit Service 63ea89
	@$(MAKE) -C test
Packit Service 63ea89
	@$(MAKE) -C examples
Packit Service 63ea89
Packit Service 63ea89
partcheck: all
Packit Service 63ea89
	@echo "make partcheck => TODO add tests with out kernel support"
Packit Service 63ea89
Packit Service 63ea89
runtests: all
Packit Service 63ea89
	@$(MAKE) -C test runtests
Packit Service 63ea89
runtests-loop:
Packit Service 63ea89
	@$(MAKE) -C test runtests-loop
Packit Service 63ea89
Packit Service 63ea89
config-host.mak: configure
Packit Service 63ea89
	@if [ ! -e "$@" ]; then					\
Packit Service 63ea89
	  echo "Running configure ...";				\
Packit Service 63ea89
	  ./configure;						\
Packit Service 63ea89
	else							\
Packit Service 63ea89
	  echo "$@ is out-of-date, running configure";		\
Packit Service 63ea89
	  sed -n "/.*Configured with/s/[^:]*: //p" "$@" | sh;	\
Packit Service 63ea89
	fi
Packit Service 63ea89
Packit Service 63ea89
ifneq ($(MAKECMDGOALS),clean)
Packit Service 63ea89
include config-host.mak
Packit Service 63ea89
endif
Packit Service 63ea89
Packit Service 63ea89
%.pc: %.pc.in config-host.mak $(SPECFILE)
Packit Service 63ea89
	sed -e "s%@prefix@%$(prefix)%g" \
Packit Service 63ea89
	    -e "s%@libdir@%$(libdir)%g" \
Packit Service 63ea89
	    -e "s%@includedir@%$(includedir)%g" \
Packit Service 63ea89
	    -e "s%@NAME@%$(NAME)%g" \
Packit Service 63ea89
	    -e "s%@VERSION@%$(VERSION)%g" \
Packit Service 63ea89
	    $< >$@
Packit Service 63ea89
Packit Service 63ea89
install: $(NAME).pc
Packit Service 63ea89
	@$(MAKE) -C src install prefix=$(DESTDIR)$(prefix) \
Packit Service 63ea89
		includedir=$(DESTDIR)$(includedir) \
Packit Service 63ea89
		libdir=$(DESTDIR)$(libdir) \
Packit Service 63ea89
		libdevdir=$(DESTDIR)$(libdevdir) \
Packit Service 63ea89
		relativelibdir=$(relativelibdir)
Packit Service 63ea89
	$(INSTALL) -D -m 644 $(NAME).pc $(DESTDIR)$(libdevdir)/pkgconfig/$(NAME).pc
Packit Service 63ea89
	$(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man2
Packit Service 63ea89
	$(INSTALL) -m 644 man/*.2 $(DESTDIR)$(mandir)/man2
Packit Service 63ea89
Packit Service 63ea89
install-tests:
Packit Service 63ea89
	@$(MAKE) -C test install prefix=$(DESTDIR)$(prefix) datadir=$(DESTDIR)$(datadir)
Packit Service 63ea89
Packit Service 63ea89
clean:
Packit Service 63ea89
	@rm -f config-host.mak config-host.h cscope.out $(NAME).pc test/*.dmesg
Packit Service 63ea89
	@$(MAKE) -C src clean
Packit Service 63ea89
	@$(MAKE) -C test clean
Packit Service 63ea89
	@$(MAKE) -C examples clean
Packit Service 63ea89
Packit Service 63ea89
cscope:
Packit Service 63ea89
	@cscope -b -R
Packit Service 63ea89
Packit Service 63ea89
tag-archive:
Packit Service 63ea89
	@git tag $(TAG)
Packit Service 63ea89
Packit Service 63ea89
create-archive:
Packit Service 63ea89
	@git archive --prefix=$(NAME)-$(VERSION)/ -o $(NAME)-$(VERSION).tar.gz $(TAG)
Packit Service 63ea89
	@echo "The final archive is ./$(NAME)-$(VERSION).tar.gz."
Packit Service 63ea89
Packit Service 63ea89
archive: clean tag-archive create-archive
Packit Service 63ea89
Packit Service 63ea89
srpm: create-archive
Packit Service 63ea89
	$(RPMBUILD) --define "_sourcedir `pwd`" --define "_srcrpmdir `pwd`" --nodeps -bs $(SPECFILE)