Commit 455cf3155cfb377ebbe1688834373b8bd367a259
1 parent
e5cc19a0
Exists in
master
and in
79 other branches
Makefile: add tasks to checkout packages
Showing
1 changed file
with
13 additions
and
8 deletions
Show diff stats
Makefile
1 | 1 | packages = $(shell basename --suffix=.spec specs/*/*.spec) |
2 | +checkout_packages = $(patsubst %, checkout-%, $(packages)) | |
2 | 3 | |
3 | 4 | all: |
4 | 5 | @echo "Usage:" |
5 | 6 | @echo |
6 | 7 | @for pkg in $(packages); do printf 'make %-20s # uploads %s.spec to obs\n' $$pkg $$pkg; done |
7 | 8 | |
8 | -$(packages): | |
9 | - @spec=$$(find specs/ -name $@.spec); \ | |
10 | - project=isv:spb:$$(basename $$(dirname $$spec)); \ | |
11 | - $(MAKE) upload package=$@ spec=$$spec project=$$project | |
9 | +.PHONY: $(packages) $(checkout_packages) | |
12 | 10 | |
13 | -upload: | |
11 | +$(checkout_packages): | |
14 | 12 | mkdir -p obs |
15 | - if test -d obs/$(project)/$(package); then (cd obs/$(project)/$(package) && osc update); else (cd obs && osc checkout $(project) $(package)); fi | |
16 | - cp $(spec) obs/$(project)/$(package)/ | |
17 | - cd obs/$(project)/$(package) && osc commit -m 'Update $(package)' | |
13 | + package=$(patsubst checkout-%,%,$@); \ | |
14 | + spec=$$(find specs/ -name $$package.spec); \ | |
15 | + project=isv:spb:$$(basename $$(dirname $$spec)); \ | |
16 | + if test -d obs/$$project/$$package; then (cd obs/$$project/$$package && osc update); else (cd obs && osc checkout $$project $$package); fi | |
17 | + | |
18 | +$(packages): % : checkout-% | |
19 | + spec=$$(find specs/ -name $@.spec); \ | |
20 | + project=isv:spb:$$(basename $$(dirname $$spec)); \ | |
21 | + cp $$spec obs/$$project/$@ && \ | |
22 | + cd obs/$$project/$@ && osc commit -m 'Update $@' | ... | ... |