diff options
Diffstat (limited to 'packaging')
| -rw-r--r-- | packaging/Makefile | 106 | ||||
| -rw-r--r-- | packaging/windows-exe/Makefile | 2 |
2 files changed, 107 insertions, 1 deletions
diff --git a/packaging/Makefile b/packaging/Makefile new file mode 100644 index 0000000000..151791152f --- /dev/null +++ b/packaging/Makefile @@ -0,0 +1,106 @@ +# Platform detection. + +ifeq ($(PLATFORM),) +UNAME_S := $(shell uname -s) + +ifeq ($(UNAME_S),Linux) +PLATFORM = linux +else ifeq ($(UNAME_S),Darwin) +PLATFORM = darwin +else ifeq ($(UNAME_S),SunOS) +PLATFORM = solaris +else ifeq ($(UNAME_S),GNU) +PLATFORM = gnu +else ifeq ($(UNAME_S),FreeBSD) +PLATFORM = freebsd +else ifeq ($(UNAME_S),NetBSD) +PLATFORM = netbsd +else ifeq ($(UNAME_S),OpenBSD) +PLATFORM = openbsd +else ifeq ($(UNAME_S),DragonFly) +PLATFORM = dragonfly +else ifeq ($(shell uname -o),Msys) +PLATFORM = msys2 +else +$(error Unable to detect platform. Please open a ticket with the output of uname -a.) +endif +endif + +all: packages + @: + +# -------------------------------------------------------------------- +# Packaging. +# -------------------------------------------------------------------- + +.PHONY: packages package-deb \ + package-rpm package-rpm-fedora package-rpm-suse \ + package-windows package-standalone-macosx \ + package-generic-unix + +PACKAGES_DIR ?= ../PACKAGES +SOURCE_DIST_FILE ?= $(wildcard $(PACKAGES_DIR)/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 +ifeq ($(filter %.tar.xz %.txz,$(SOURCE_DIST_FILE)),) +$(error The source archive must a tar.xz archive) +endif +ifeq ($(wildcard $(SOURCE_DIST_FILE)),) +$(error The source archive must exist) +endif + +packages: package-deb package-rpm package-windows package-generic-unix + @: + +package-deb: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C debs/Debian \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean + +package-rpm: package-rpm-fedora package-rpm-suse + @: + +package-rpm-fedora: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C RPMS/Fedora \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean + +package-rpm-suse: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C RPMS/Fedora \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + RPM_OS=suse \ + all clean + +package-windows: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C windows \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean + $(verbose) $(MAKE) -C windows-exe \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean + +package-generic-unix: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C generic-unix \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean + +ifeq ($(PLATFORM),darwin) +packages: package-standalone-macosx + +package-standalone-macosx: $(SOURCE_DIST_FILE) + $(gen_verbose) $(MAKE) -C standalone OS=mac \ + SOURCE_DIST_FILE=$(abspath $(SOURCE_DIST_FILE)) \ + PACKAGES_DIR=$(abspath $(PACKAGES_DIR)) \ + all clean +endif diff --git a/packaging/windows-exe/Makefile b/packaging/windows-exe/Makefile index 6abc7fa2fc..fad0eae5f5 100644 --- a/packaging/windows-exe/Makefile +++ b/packaging/windows-exe/Makefile @@ -3,7 +3,7 @@ ZIP_DIR = ../windows else ZIP_DIR = $(PACKAGES_DIR) endif -ZIP = $(notdir $(wildcard $(ZIP_DIR)/rabbitmq-server-windows-[0-9.]*.zip)) +ZIP = $(notdir $(wildcard $(ZIP_DIR)/rabbitmq-server-windows-$(VERSION).zip)) VERSION = $(patsubst rabbitmq-server-windows-%.zip,%,$(ZIP)) |
