Cross package maker. DEB/RPM generation or conversion. Derived from jordansissel/fpm.

⌈⌋ branch:  cross package maker


Hex Artifact Content

Artifact fc22f67cd8bc5452e548d8d1e2ddf1c9fd23053c:

  • File Makefile — part of check-in [387f421b10] at 2013-10-29 21:30:44 on branch trunk — 'make test' runs tests now... (user: jls size: 978) [more...]

0000: 47 45 4d 53 50 45 43 3d 24 28 73 68 65 6c 6c 20  GEMSPEC=$(shell 
0010: 6c 73 20 2a 2e 67 65 6d 73 70 65 63 29 0a 56 45  ls *.gemspec).VE
0020: 52 53 49 4f 4e 3d 24 28 73 68 65 6c 6c 20 61 77  RSION=$(shell aw
0030: 6b 20 2d 46 5c 22 20 27 2f 56 45 52 53 49 4f 4e  k -F\" '/VERSION
0040: 20 3d 2f 20 7b 20 70 72 69 6e 74 20 24 24 32 20   =/ { print $$2 
0050: 7d 27 20 6c 69 62 2f 66 70 6d 2f 76 65 72 73 69  }' lib/fpm/versi
0060: 6f 6e 2e 72 62 29 0a 4e 41 4d 45 3d 24 28 73 68  on.rb).NAME=$(sh
0070: 65 6c 6c 20 61 77 6b 20 2d 46 5c 22 20 27 2f 73  ell awk -F\" '/s
0080: 70 65 63 2e 6e 61 6d 65 2f 20 7b 20 70 72 69 6e  pec.name/ { prin
0090: 74 20 24 24 32 20 7d 27 20 24 28 47 45 4d 53 50  t $$2 }' $(GEMSP
00a0: 45 43 29 29 0a 47 45 4d 3d 24 28 4e 41 4d 45 29  EC)).GEM=$(NAME)
00b0: 2d 24 28 56 45 52 53 49 4f 4e 29 2e 67 65 6d 0a  -$(VERSION).gem.
00c0: 0a 2e 50 48 4f 4e 59 3a 20 74 65 73 74 0a 74 65  ..PHONY: test.te
00d0: 73 74 3a 0a 09 72 6d 20 2d 72 66 20 2e 79 61 72  st:..rm -rf .yar
00e0: 64 6f 63 0a 09 73 68 20 6e 6f 74 69 66 79 2d 66  doc..sh notify-f
00f0: 61 69 6c 75 72 65 2e 73 68 20 72 73 70 65 63 0a  ailure.sh rspec.
0100: 0a 2e 50 48 4f 4e 59 3a 20 74 65 73 74 6c 6f 6f  ..PHONY: testloo
0110: 70 0a 74 65 73 74 6c 6f 6f 70 3a 0a 09 77 68 69  p.testloop:..whi
0120: 6c 65 20 74 72 75 65 3b 20 64 6f 20 5c 0a 09 09  le true; do \...
0130: 24 28 4d 41 4b 45 29 20 74 65 73 74 3b 20 5c 0a  $(MAKE) test; \.
0140: 09 09 24 28 4d 41 4b 45 29 20 77 61 69 74 2d 66  ..$(MAKE) wait-f
0150: 6f 72 2d 63 68 61 6e 67 65 73 3b 20 5c 0a 09 64  or-changes; \..d
0160: 6f 6e 65 0a 0a 2e 50 48 4f 4e 59 3a 20 73 65 72  one...PHONY: ser
0170: 76 65 2d 63 6f 76 65 72 61 67 65 0a 73 65 72 76  ve-coverage.serv
0180: 65 2d 63 6f 76 65 72 61 67 65 3a 0a 09 63 64 20  e-coverage:..cd 
0190: 63 6f 76 65 72 61 67 65 3b 20 70 79 74 68 6f 6e  coverage; python
01a0: 20 2d 6d 53 69 6d 70 6c 65 48 54 54 50 53 65 72   -mSimpleHTTPSer
01b0: 76 65 72 0a 0a 2e 50 48 4f 4e 59 3a 20 77 61 69  ver...PHONY: wai
01c0: 74 2d 66 6f 72 2d 63 68 61 6e 67 65 73 0a 77 61  t-for-changes.wa
01d0: 69 74 2d 66 6f 72 2d 63 68 61 6e 67 65 73 3a 0a  it-for-changes:.
01e0: 09 2d 69 6e 6f 74 69 66 79 77 61 69 74 20 2d 2d  .-inotifywait --
01f0: 65 78 63 6c 75 64 65 20 27 5c 2e 73 77 70 27 20  exclude '\.swp' 
0200: 2d 65 20 6d 6f 64 69 66 79 20 24 24 28 66 69 6e  -e modify $$(fin
0210: 64 20 24 28 44 49 52 53 29 20 2d 6e 61 6d 65 20  d $(DIRS) -name 
0220: 27 2a 2e 72 62 27 3b 20 66 69 6e 64 20 24 28 44  '*.rb'; find $(D
0230: 49 52 53 29 20 2d 74 79 70 65 20 64 29 0a 0a 2e  IRS) -type d)...
0240: 50 48 4f 4e 59 3a 20 70 61 63 6b 61 67 65 0a 70  PHONY: package.p
0250: 61 63 6b 61 67 65 3a 20 7c 20 24 28 47 45 4d 29  ackage: | $(GEM)
0260: 0a 0a 2e 50 48 4f 4e 59 3a 20 67 65 6d 0a 67 65  ...PHONY: gem.ge
0270: 6d 3a 20 24 28 47 45 4d 29 0a 0a 24 28 47 45 4d  m: $(GEM)..$(GEM
0280: 29 3a 0a 09 67 65 6d 20 62 75 69 6c 64 20 24 28  ):..gem build $(
0290: 47 45 4d 53 50 45 43 29 0a 0a 2e 50 48 4f 4e 59  GEMSPEC)...PHONY
02a0: 3a 20 74 65 73 74 2d 70 61 63 6b 61 67 65 0a 74  : test-package.t
02b0: 65 73 74 2d 70 61 63 6b 61 67 65 3a 20 24 28 47  est-package: $(G
02c0: 45 4d 29 0a 09 23 20 53 6f 6d 65 74 69 6d 65 73  EM)..# Sometimes
02d0: 20 27 67 65 6d 20 62 75 69 6c 64 27 20 6d 61 6b   'gem build' mak
02e0: 65 73 20 61 20 66 61 75 6c 74 79 20 67 65 6d 2e  es a faulty gem.
02f0: 0a 09 67 65 6d 20 75 6e 70 61 63 6b 20 24 28 47  ..gem unpack $(G
0300: 45 4d 29 0a 09 72 6d 20 2d 72 66 20 66 74 77 2d  EM)..rm -rf ftw-
0310: 24 28 56 45 52 53 49 4f 4e 29 2f 0a 0a 2e 50 48  $(VERSION)/...PH
0320: 4f 4e 59 3a 20 70 75 62 6c 69 73 68 0a 70 75 62  ONY: publish.pub
0330: 6c 69 73 68 3a 20 74 65 73 74 2d 70 61 63 6b 61  lish: test-packa
0340: 67 65 0a 09 67 65 6d 20 70 75 73 68 20 24 28 47  ge..gem push $(G
0350: 45 4d 29 0a 0a 2e 50 48 4f 4e 59 3a 20 69 6e 73  EM)...PHONY: ins
0360: 74 61 6c 6c 0a 69 6e 73 74 61 6c 6c 3a 20 24 28  tall.install: $(
0370: 47 45 4d 29 0a 09 67 65 6d 20 69 6e 73 74 61 6c  GEM)..gem instal
0380: 6c 20 24 28 47 45 4d 29 0a 0a 2e 50 48 4f 4e 59  l $(GEM)...PHONY
0390: 3a 0a 63 6c 65 61 6e 3a 0a 09 72 6d 20 2d 72 66  :.clean:..rm -rf
03a0: 20 70 61 63 6b 61 67 65 2d 2a 2f 20 2a 2e 72 70   package-*/ *.rp
03b0: 6d 20 2a 2e 64 65 62 20 2a 2e 67 7a 20 2a 2e 74  m *.deb *.gz *.t
03c0: 61 72 20 2a 2e 67 65 6d 20 2e 79 61 72 64 6f 63  ar *.gem .yardoc
03d0: 2f 0a                                            /.