diff options
author | Alvaro Videla <alvaro@rabbitmq.com> | 2012-11-07 16:18:32 +0000 |
---|---|---|
committer | Alvaro Videla <alvaro@rabbitmq.com> | 2012-11-07 16:18:32 +0000 |
commit | 266d92fc1fba50e54aa4842a4423e7fb3be35fa0 (patch) | |
tree | d855e2698252ca7b21a3170ab72572d8e1f33b67 | |
parent | 403786326c589a18968f2d3d1cb318e5a09a52b8 (diff) | |
download | rabbitmq-server-266d92fc1fba50e54aa4842a4423e7fb3be35fa0.tar.gz |
adds Makefile for standalone mac release
-rw-r--r-- | packaging/mac/Makefile | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/packaging/mac/Makefile b/packaging/mac/Makefile new file mode 100644 index 00000000..a21ec88a --- /dev/null +++ b/packaging/mac/Makefile @@ -0,0 +1,61 @@ +VERSION=0.0.0 +SOURCE_DIR=rabbitmq-server-$(VERSION) +TARGET_DIR=rabbitmq_server-$(VERSION) +TARGET_TARBALL=rabbitmq-server-mac-standalone-$(VERSION) +RLS_DIR=$(TARGET_DIR)/release + +ERTS_VSN=$(shell erl -noshell -eval 'io:format("~s", [erlang:system_info(version)]), halt().') +ERTS_ROOT_DIR=$(shell erl -noshell -eval 'io:format("~s", [code:root_dir()]), halt().') + +# used to generate the erlang release +RABBITMQ_HOME=$(TARGET_DIR) +RABBITMQ_EBIN_ROOT=$(RABBITMQ_HOME)/ebin +RABBITMQ_PLUGINS_DIR=$(RABBITMQ_HOME)/plugins +RABBITMQ_PLUGINS_EXPAND_DIR=$(RABBITMQ_PLUGINS_DIR)/expand + +dist: + tar -zxf ../../dist/$(SOURCE_DIR).tar.gz + + $(MAKE) -C $(SOURCE_DIR) \ + TARGET_DIR=`pwd`/$(TARGET_DIR) \ + SBIN_DIR=`pwd`/$(TARGET_DIR)/sbin \ + MAN_DIR=`pwd`/$(TARGET_DIR)/share/man \ + install + + sed -e 's:^SYS_PREFIX=$$:SYS_PREFIX=\$${RABBITMQ_HOME}:' \ + $(TARGET_DIR)/sbin/rabbitmq-defaults >$(TARGET_DIR)/sbin/rabbitmq-defaults.tmp \ + && sed -e 's:^ERL_DIR=$$:ERL_DIR=\$${RABBITMQ_HOME}/erts-$(ERTS_VSN)/bin/:' \ + $(TARGET_DIR)/sbin/rabbitmq-defaults.tmp >$(TARGET_DIR)/sbin/rabbitmq-defaults + + chmod 0755 $(TARGET_DIR)/sbin/rabbitmq-defaults + + mkdir -p $(TARGET_DIR)/etc/rabbitmq + + $(MAKE) generate_release + +## todo see where the .tar is being created + mkdirp -p $(RLS_DIR) + tar -C $(RLS_DIR) -xzf $(RABBITMQ_HOME)/rabbit.tar.gz + +# add minimal boot file + cp $(ERTS_ROOT_DIR)/bin/start_clean.boot $(RLS_DIR)/releases/$(VERSION) + cp $(ERTS_ROOT_DIR)/bin/start_sasl.boot $(RLS_DIR)/releases/$(VERSION) + + tar -zcf $(TARGET_TARBALL).tar.gz $(RLS_DIR) + rm -rf $(SOURCE_DIR) $(TARGET_DIR) + +clean: clean_partial + rm -f rabbitmq-server-generic-unix-*.tar.gz + +clean_partial: + rm -rf $(SOURCE_DIR) + rm -rf $(TARGET_DIR) + +.PHONY : generate_release +generate_release: + erl \ + -pa "$(RABBITMQ_EBIN_ROOT)" \ + -noinput \ + -hidden \ + -s rabbit_release \ + -extra "$(RABBITMQ_PLUGINS_DIR)" "$(RABBITMQ_PLUGINS_EXPAND_DIR)" "$(RABBITMQ_HOME)" |