summaryrefslogtreecommitdiff
path: root/rpm
diff options
context:
space:
mode:
Diffstat (limited to 'rpm')
-rw-r--r--rpm/include.am36
-rw-r--r--rpm/include.mk55
2 files changed, 55 insertions, 36 deletions
diff --git a/rpm/include.am b/rpm/include.am
deleted file mode 100644
index 1256ae7a..00000000
--- a/rpm/include.am
+++ /dev/null
@@ -1,36 +0,0 @@
-# vim:ft=automake
-
-rpm-build: support/$(PACKAGE).spec dist
- @rm -f *.rpm
- @rm -f ~/rpmbuild/RPMS/x86_64/$(PACKAGE)-$(VERSION)*.rpm
- @rm -f ~/rpmbuild/SRPMS/$(PACKAGE)-$(VERSION)*.rpm
- @mkdir -p ~/rpmbuild/BUILD/
- @mkdir -p ~/rpmbuild/RPMS/i386/
- @mkdir -p ~/rpmbuild/RPMS/i686/
- @mkdir -p ~/rpmbuild/RPMS/noarch/
- @mkdir -p ~/rpmbuild/RPMS/x86_64/
- @mkdir -p ~/rpmbuild/SOURCES/
- @mkdir -p ~/rpmbuild/SPECS/
- @mkdir -p ~/rpmbuild/SRPMS/
- @cp $(PACKAGE)-$(VERSION).tar.gz ~/rpmbuild/SOURCES/
- @rpmbuild -ba support/$(PACKAGE).spec
- @cp ~/rpmbuild/RPMS/x86_64/$(PACKAGE)-$(VERSION)*.rpm .
- @cp ~/rpmbuild/RPMS/x86_64/$(PACKAGE)-devel-$(VERSION)*.rpm .
- -cp ~/rpmbuild/RPMS/x86_64/$(PACKAGE)-debuginfo-$(VERSION)*.rpm .
- @cp ~/rpmbuild/SRPMS/$(PACKAGE)-$(VERSION)*.rpm .
-
-rpm-sign: rpm-build
- @rpm --addsign *.rpm
- @rpm --checksig *.rpm
-
-clean-rpm:
- @rm -f *.tar.gz
- @rm -f *.src.rpm
- @rm -f *.rpm
-
-rpm: clean-rpm support/$(PACKAGE).spec rpm-build
-
-release: rpm rpm-sign
-
-auto-rpmbuild:
- @auto-br-rpmbuild -ba support/libmemcached.spec
diff --git a/rpm/include.mk b/rpm/include.mk
new file mode 100644
index 00000000..bf9bd1a8
--- /dev/null
+++ b/rpm/include.mk
@@ -0,0 +1,55 @@
+# vim:ft=automake
+
+RPM_BUILDDIR= ~/rpmbuild
+RPM_SOURCESDIR= $(RPM_BUILDDIR)/SOURCES
+
+RPM_BUILD_TARGET= @PACKAGE@-@VERSION@-@RPM_RELEASE@.@build_cpu@.rpm
+RPM_SOURCE= $(RPM_SOURCESDIR)/$(DIST_ARCHIVES)
+
+RPMS=
+RPMS+= $(RPM_BUILD_TARGET)
+RPMS+= @PACKAGE@-devel-@VERSION@-@RPM_RELEASE@.@build_cpu@.rpm
+RPMS+= @PACKAGE@-debuginfo-@VERSION@-@RPM_RELEASE@.@build_cpu@.rpm
+
+SRPMS= @PACKAGE@-@VERSION@-@RPM_RELEASE@.src.rpm
+
+RPM_DIST= $(RPMS) $(SRPMS)
+
+BUILD_RPMS= $(foreach rpm_iterator,$(RPMS),$(addprefix $(RPM_BUILDDIR)/RPMS/@build_cpu@/, $(rpm_iterator)))
+BUILD_SRPMS= $(foreach srpm_iterator,$(SRPMS),$(addprefix $(RPM_BUILDDIR)/SRPMS/, $(srpm_iterator)))
+BUILD_RPM_DIR= $(RPM_BUILDDIR)/BUILD/@PACKAGE@-@VERSION@
+
+$(RPM_BUILDDIR):
+ @@RPMDEV_SETUPTREE@
+
+$(DIST_ARCHIVES): $(DISTFILES)
+ $(MAKE) $(AM_MAKEFLAGS) dist-gzip
+
+$(RPM_SOURCE): $(DIST_ARCHIVES) $(RPM_BUILDDIR)
+ @cp $< $@
+
+$(RPM_BUILD_TARGET): $(RPM_SOURCE) support/@PACKAGE@.spec
+ -@rm -f $(BUILD_RPMS) $(BUILD_SRPMS)
+ -@rm -rf $(BUILD_RPM_DIR)
+ @@RPMBUILD@ -ba $(top_srcdir)/support/@PACKAGE@.spec
+ @cp $(BUILD_RPMS) $(BUILD_SRPMS) .
+
+.PHONY: rpm-sign
+rpm-sign: $(RPM_BUILD_TARGET)
+ @@RPM@ --addsign $(RPM_DIST)
+ @@RPM@ --checksig $(RPM_DIST)
+
+.PHONY: clean-rpm
+clean-rpm:
+ -@rm -f $(BUILD_RPMS) $(BUILD_SRPMS) $(BUILD_RPM_SOURCE) $(RPM_DIST)
+ -@rm -rf $(BUILD_RPM_DIR)
+
+rpm: $(RPM_BUILD_TARGET)
+dist-rpm: $(RPM_BUILD_TARGET)
+
+.PHONY: release
+release: rpm rpm-sign
+
+.PHONY: auto-rpmbuild
+auto-rpmbuild: support/@PACKAGE@.spec
+ @auto-br-rpmbuild -ba $(top_srcdir)/support/@PACKAGE@.spec