Skip to content
This repository
tag: riak-0.11.0rc4
Fetching contributors…

Cannot retrieve contributors at this time

file 106 lines (82 sloc) 2.612 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
RIAK_TAG = $(shell hg identify -t)

.PHONY: rel deps

all: deps compile

compile:
./rebar compile

deps:
./rebar get-deps

clean:
./rebar clean

distclean: clean devclean relclean ballclean
./rebar delete-deps

test:
./rebar eunit

##
## Release targets
##
rel: deps
./rebar compile generate

relclean:
rm -rf rel/riak

##
## Developer targets
##

devrel: dev1 dev2 dev3

dev:
mkdir dev
cp -R rel/overlay rel/reltool.config dev
./rebar compile && cd dev && ../rebar generate

dev1 dev2 dev3: dev
cp -Rn dev/riak dev/$@
rm -rf dev/$@/data
mkdir -p dev/$@/data/ring
$(foreach app,$(wildcard apps/*), rm -rf dev/$@/lib/$(shell basename $(app))* && ln -sf $(abspath $(app)) dev/$@/lib;)
$(foreach dep,$(wildcard deps/*), rm -rf dev/$@/lib/$(shell basename $(dep))* && ln -sf $(abspath $(dep)) dev/$@/lib;)
perl -pi -e 's/name riak/name $@/g' dev/$@/etc/vm.args
perl -pi -e 's/web_port, \d+/web_port, 809$(subst dev,,$@)/g' \
                    dev/$@/etc/app.config
perl -pi -e 's/pb_port, \d+/pb_port, 808$(subst dev,,$@)/g' \
                    dev/$@/etc/app.config
perl -pi -e 's/handoff_port, \d+/handoff_port, 810$(subst dev,,$@)/g' \
                    dev/$@/etc/app.config

devclean: clean
rm -rf dev

stage : rel
cd rel/riak/lib && \
rm -rf riak_core-* riak_kv-* && \
ln -s ../../../apps/riak_core && \
ln -s ../../../apps/riak_kv

##
## Doc targets
##
docs:
@erl -noshell -run edoc_run application luke '"apps/luke"' '[]'
@cp -R apps/luke/doc doc/luke
@erl -noshell -run edoc_run application riak_core '"apps/riak_core"' '[]'
@cp -R apps/riak_core/doc doc/riak_core
@erl -noshell -run edoc_run application riak_kv '"apps/riak_kv"' '[]'
@cp -R apps/riak_kv/doc doc/riak_kv

orgs: orgs-doc orgs-README

orgs-doc:
@emacs -l orgbatch.el -batch --eval="(riak-export-doc-dir \"doc\" 'html)"

orgs-README:
@emacs -l orgbatch.el -batch --eval="(riak-export-doc-file \"README.org\" 'ascii)"
@mv README.txt README

dialyzer: compile
@dialyzer -Wno_return -c apps/riak/ebin

# Release tarball creation
# Generates a tarball that includes all the deps sources so no checkouts are necessary

distdir:
$(if $(findstring tip,$(RIAK_TIP)),$(error "You can't generate a release tarball from tip"))
mkdir distdir
hg clone . distdir/riak-clone
cd distdir/riak-clone; \
hg archive ../$(RIAK_TAG); \
mkdir ../$(RIAK_TAG)/deps; \
make deps; \
for dep in deps/*; do cd $${dep} && hg archive ../../../$(RIAK_TAG)/$${dep}; cd ../..; done

dist $(RIAK_TAG).tar.gz: distdir
cd distdir; \
tar czf ../$(RIAK_TAG).tar.gz $(RIAK_TAG)

ballclean:
rm -rf $(RIAK_TAG).tar.gz distdir
Something went wrong with that request. Please try again.