all: dist # ------ Environment ------ WGET = wget PERL = perl PERL_VERSION = latest PERL_PATH = $(abspath local/perlbrew/perls/perl-$(PERL_VERSION)/bin) REMOTEDEV_HOST = remotedev.host.example REMOTEDEV_PERL_VERSION = $(PERL_VERSION) Makefile-setupenv: Makefile.setupenv $(MAKE) --makefile Makefile.setupenv setupenv-update \ SETUPENV_MIN_REVISION=20120336 Makefile.setupenv: $(WGET) -O $@ https://raw.github.com/wakaba/perl-setupenv/master/Makefile.setupenv lperl local-perl perl-version perl-exec local-submodules \ pmb-install pmb-update cinnamon \ generatepm: %: Makefile-setupenv $(MAKE) --makefile Makefile.setupenv $@ \ REMOTEDEV_HOST=$(REMOTEDEV_HOST) \ REMOTEDEV_PERL_VERSION=$(REMOTEDEV_PERL_VERSION) \ PMBUNDLER_REPO_URL=$(PMBUNDLER_REPO_URL) \ PMB_PMTAR_REPO_URL=$(PMB_PMTAR_REPO_URL) \ PMB_PMPP_REPO_URL=$(PMB_PMPP_REPO_URL) # ------ Distribution ------ GENERATEPM = local/generatepm/bin/generate-pm-package GENERATEPM_ = $(GENERATEPM) --generate-json dist: generatepm $(GENERATEPM_) config/dist/class-registry.pi dist/ $(GENERATEPM_) config/dist/operation-response.pi dist/ $(GENERATEPM_) config/dist/list-ish.pi dist/ dist-wakaba-packages: local/wakaba-packages dist cp dist/*.json local/wakaba-packages/data/perl/ cp dist/*.tar.gz local/wakaba-packages/perl/ cd local/wakaba-packages && $(MAKE) all PERL="$(abspath ./perl)" local/wakaba-packages: always git clone "git@github.com:wakaba/packages.git" $@ || (cd $@ && git pull) cd $@ && git submodule update --init # ------ Tests ------ PROVE = prove GIT = git test: test-deps test-main test-deps: git-submodules local-submodules pmb-install git-submodules: $(GIT) submodule update --init test-main: PATH=$(PERL_PATH):$(PATH) PERL5LIB=$(shell cat config/perl/libs.txt) \ $(PROVE) t/*.t t/list-ish/*.t always: