Commit 455cf3155cfb377ebbe1688834373b8bd367a259

Authored by Antonio Terceiro
1 parent e5cc19a0

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 $@'
... ...