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
1 packages = $(shell basename --suffix=.spec specs/*/*.spec) 1 packages = $(shell basename --suffix=.spec specs/*/*.spec)
  2 +checkout_packages = $(patsubst %, checkout-%, $(packages))
2 3
3 all: 4 all:
4 @echo "Usage:" 5 @echo "Usage:"
5 @echo 6 @echo
6 @for pkg in $(packages); do printf 'make %-20s # uploads %s.spec to obs\n' $$pkg $$pkg; done 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 mkdir -p obs 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 $@'