summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Sébastien Pédron <jean-sebastien@rabbitmq.com>2015-10-09 17:40:44 +0200
committerJean-Sébastien Pédron <jean-sebastien.pedron@dumbbell.fr>2015-10-20 11:10:48 +0200
commit706cf18bcae67b03a803c15eeabc38a80d9e85d1 (patch)
tree47c136548b8ce132480e4ae7b8b158c17f963262
parent231e90cacf3daec5f43b3307867129e61496b123 (diff)
downloadrabbitmq-server-git-706cf18bcae67b03a803c15eeabc38a80d9e85d1.tar.gz
Give path to the source dist to packages' Makefiles
-rw-r--r--Makefile25
-rw-r--r--packaging/RPMS/Fedora/Makefile28
-rw-r--r--packaging/debs/Debian/Makefile25
-rw-r--r--packaging/generic-unix/Makefile25
-rw-r--r--packaging/standalone/Makefile17
-rw-r--r--packaging/windows/Makefile29
6 files changed, 105 insertions, 44 deletions
diff --git a/Makefile b/Makefile
index 277ccb1fb6..ecd9fd15cd 100644
--- a/Makefile
+++ b/Makefile
@@ -169,6 +169,8 @@ SOURCE_DIST_BASE ?= rabbitmq-server
SOURCE_DIST_SUFFIXES ?= tar.xz zip
SOURCE_DIST ?= $(SOURCE_DIST_BASE)-$(VERSION)
+# The first source distribution file is used by packages: if the archive
+# type changes, you must update all packages' Makefile.
SOURCE_DIST_FILES = $(addprefix $(SOURCE_DIST).,$(SOURCE_DIST_SUFFIXES))
.PHONY: $(SOURCE_DIST_FILES)
@@ -383,43 +385,54 @@ install-windows-docs: install-windows-erlapp
PACKAGES_DIR ?= $(abspath PACKAGES)
+# This variable is exported so sub-make instances know where to find the
+# archive.
+PACKAGES_SOURCE_DIST_FILE ?= $(firstword $(SOURCE_DIST_FILES))
+
packages: package-deb package-rpm package-windows package-standalone-macosx \
package-generic-unix
@:
-package-deb: source-dist
+package-deb: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/debs/Debian \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
package-rpm: package-rpm-fedora package-rpm-suse
@:
-package-rpm-fedora: source-dist
+package-rpm-fedora: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/RPMS/Fedora \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
-package-rpm-suse: source-dist
+package-rpm-suse: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/RPMS/Fedora \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
RPM_OS=suse \
all clean
-package-windows: source-dist
+package-windows: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/windows \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
$(verbose) $(MAKE) -C packaging/windows-exe \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
-package-standalone-macosx: source-dist
+package-standalone-macosx: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/standalone OS=mac \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
-package-generic-unix: source-dist
+package-generic-unix: $(PACKAGES_SOURCE_DIST_FILE)
$(gen_verbose) $(MAKE) -C packaging/generic-unix \
+ SOURCE_DIST_FILE=$(abspath $(PACKAGES_SOURCE_DIST_FILE)) \
PACKAGES_DIR=$(PACKAGES_DIR) \
all clean
diff --git a/packaging/RPMS/Fedora/Makefile b/packaging/RPMS/Fedora/Makefile
index 5bb3f7ca96..fc37ceae79 100644
--- a/packaging/RPMS/Fedora/Makefile
+++ b/packaging/RPMS/Fedora/Makefile
@@ -1,14 +1,24 @@
-TARBALL_DIR=../../..
-TARBALL=$(notdir $(wildcard $(TARBALL_DIR)/rabbitmq-server-[0-9.]*.tar.xz))
-VERSION=$(patsubst rabbitmq-server-%.tar.xz,%,$(TARBALL))
+SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
+ifeq ($(SOURCE_DIST_FILE),)
+$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
+endif
+ifneq ($(words $(SOURCE_DIST_FILE)),1)
+$(error Multile source archives found; please specify SOURCE_DIST_FILE)
+endif
+
+VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
+ifeq ($(VERSION),)
+$(error Cannot determine version; please specify VERSION)
+endif
-TOP_DIR=$(shell pwd)
-#Under debian we do not want to check build dependencies, since that
-#only checks build-dependencies using rpms, not debs
-DEFINES=--define '_topdir $(TOP_DIR)' --define '_tmppath $(TOP_DIR)/tmp' --define '_sysconfdir /etc' --define '_localstatedir /var'
+TOP_DIR = $(shell pwd)
+# Under debian we do not want to check build dependencies, since that
+# only checks build-dependencies using rpms, not debs
+DEFINES = --define '_topdir $(TOP_DIR)' --define '_tmppath $(TOP_DIR)/tmp' \
+ --define '_sysconfdir /etc' --define '_localstatedir /var'
ifndef RPM_OS
-RPM_OS=fedora
+RPM_OS = fedora
endif
ifeq "$(RPM_OS)" "suse"
@@ -32,7 +42,7 @@ all: clean server
prepare:
mkdir -p BUILD SOURCES SPECS SRPMS RPMS tmp
- cp $(TARBALL_DIR)/$(TARBALL) SOURCES
+ cp $(SOURCE_DIST_FILE) SOURCES
cp rabbitmq-server.spec SPECS
sed -i 's|%%VERSION%%|$(VERSION)|;s|%%REQUIRES%%|$(REQUIRES)|' \
SPECS/rabbitmq-server.spec
diff --git a/packaging/debs/Debian/Makefile b/packaging/debs/Debian/Makefile
index ffab0d14f0..432761c944 100644
--- a/packaging/debs/Debian/Makefile
+++ b/packaging/debs/Debian/Makefile
@@ -1,11 +1,20 @@
-TARBALL_DIR=../../..
-TARBALL=$(notdir $(wildcard $(TARBALL_DIR)/rabbitmq-server-[0-9.]*.tar.xz))
-VERSION=$(patsubst rabbitmq-server-%.tar.xz,%,$(TARBALL))
+SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
+ifeq ($(SOURCE_DIST_FILE),)
+$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
+endif
+ifneq ($(words $(SOURCE_DIST_FILE)),1)
+$(error Multile source archives found; please specify SOURCE_DIST_FILE)
+endif
+
+VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
+ifeq ($(VERSION),)
+$(error Cannot determine version; please specify VERSION)
+endif
-DEBIAN_ORIG_TARBALL=$(patsubst rabbitmq-server-%.tar.xz,rabbitmq-server_%.orig.tar.xz,$(TARBALL))
-UNPACKED_DIR=rabbitmq-server-$(VERSION)
-PACKAGENAME=rabbitmq-server
-SIGNING_KEY_ID=056E8E56
+DEBIAN_ORIG_TARBALL = rabbitmq-server_$(VERSION).orig.tar.xz
+UNPACKED_DIR = rabbitmq-server-$(VERSION)
+PACKAGENAME = rabbitmq-server
+SIGNING_KEY_ID = 056E8E56
ifneq "$(UNOFFICIAL_RELEASE)" ""
SIGNING=-us -uc
@@ -17,7 +26,7 @@ all: package
@:
package: clean
- cp -a $(TARBALL_DIR)/$(TARBALL) $(DEBIAN_ORIG_TARBALL)
+ cp -a $(SOURCE_DIST_FILE) $(DEBIAN_ORIG_TARBALL)
tar -Jxf $(DEBIAN_ORIG_TARBALL)
cp -a debian $(UNPACKED_DIR)
rsync -a \
diff --git a/packaging/generic-unix/Makefile b/packaging/generic-unix/Makefile
index 8c7028f14d..4f5e20c03c 100644
--- a/packaging/generic-unix/Makefile
+++ b/packaging/generic-unix/Makefile
@@ -1,16 +1,25 @@
-TARBALL_DIR ?= ../..
-TARBALL ?= $(notdir $(wildcard $(TARBALL_DIR)/rabbitmq-server-[0-9.]*.tar.xz))
-VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(TARBALL))
-
-SOURCE_DIR=rabbitmq-server-$(VERSION)
-TARGET_DIR=rabbitmq_server-$(VERSION)
-TARGET_TARBALL=rabbitmq-server-generic-unix-$(VERSION)
+SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
+ifeq ($(SOURCE_DIST_FILE),)
+$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
+endif
+ifneq ($(words $(SOURCE_DIST_FILE)),1)
+$(error Multile source archives found; please specify SOURCE_DIST_FILE)
+endif
+
+VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
+ifeq ($(VERSION),)
+$(error Cannot determine version; please specify VERSION)
+endif
+
+SOURCE_DIR = rabbitmq-server-$(VERSION)
+TARGET_DIR = rabbitmq_server-$(VERSION)
+TARGET_TARBALL = rabbitmq-server-generic-unix-$(VERSION)
all: dist
@:
dist:
- tar -Jxf $(TARBALL_DIR)/$(TARBALL)
+ tar -Jxf $(SOURCE_DIST_FILE)
$(MAKE) -C $(SOURCE_DIR) \
PREFIX= RMQ_ROOTDIR= \
diff --git a/packaging/standalone/Makefile b/packaging/standalone/Makefile
index e1dd1632bc..e75c656e2f 100644
--- a/packaging/standalone/Makefile
+++ b/packaging/standalone/Makefile
@@ -1,6 +1,15 @@
-TARBALL_DIR ?= ../..
-TARBALL ?= $(notdir $(wildcard $(TARBALL_DIR)/rabbitmq-server-[0-9.]*.tar.xz))
-VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(TARBALL))
+SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
+ifeq ($(SOURCE_DIST_FILE),)
+$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
+endif
+ifneq ($(words $(SOURCE_DIST_FILE)),1)
+$(error Multile source archives found; please specify SOURCE_DIST_FILE)
+endif
+
+VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
+ifeq ($(VERSION),)
+$(error Cannot determine version; please specify VERSION)
+endif
SOURCE_DIR=rabbitmq-server-$(VERSION)
TARGET_DIR=rabbitmq_server-$(VERSION)
@@ -25,7 +34,7 @@ all: dist
@:
dist:
- tar -Jxf $(TARBALL_DIR)/$(TARBALL)
+ tar -Jxf $(SOURCE_DIST_FILE)
$(MAKE) -C $(SOURCE_DIR) \
PREFIX= RMQ_ROOTDIR= \
diff --git a/packaging/windows/Makefile b/packaging/windows/Makefile
index 3aa8280c6b..f11293391d 100644
--- a/packaging/windows/Makefile
+++ b/packaging/windows/Makefile
@@ -1,17 +1,28 @@
-TARBALL_DIR=../..
-TARBALL=$(notdir $(wildcard $(TARBALL_DIR)/rabbitmq-server-[0-9.]*.tar.xz))
-VERSION=$(patsubst rabbitmq-server-%.tar.xz,%,$(TARBALL))
-
-SOURCE_DIR=rabbitmq-server-$(VERSION)
-TARGET_DIR=rabbitmq_server-$(VERSION)
-TARGET_ZIP=rabbitmq-server-windows-$(VERSION)
+SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
+ifeq ($(SOURCE_DIST_FILE),)
+$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
+endif
+ifneq ($(words $(SOURCE_DIST_FILE)),1)
+$(error Multile source archives found; please specify SOURCE_DIST_FILE)
+endif
+
+VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
+ifeq ($(VERSION),)
+$(error Cannot determine version; please specify VERSION)
+endif
+
+SOURCE_DIR = rabbitmq-server-$(VERSION)
+TARGET_DIR = rabbitmq_server-$(VERSION)
+TARGET_ZIP = rabbitmq-server-windows-$(VERSION)
all: dist
@:
dist:
- tar -Jxf $(TARBALL_DIR)/$(TARBALL)
- $(MAKE) -C $(SOURCE_DIR) install-windows DESTDIR=$(abspath $(TARGET_DIR)) WINDOWS_PREFIX=
+ tar -Jxf $(SOURCE_DIST_FILE)
+ $(MAKE) -C $(SOURCE_DIR) install-windows \
+ DESTDIR=$(abspath $(TARGET_DIR)) \
+ WINDOWS_PREFIX=
cp -a README-etc $(TARGET_DIR)/etc/README.txt