Commit 520277de1b09728d1e44cf2047b0a004fba236dd

Authored by Antonio Terceiro
1 parent e51919dd

Build a colab RPM package

For now the RPM does not do anything other than installing the files to
/srv/softwarepublico/colab. It is missing at least proper dependencies,
configuration files and whatnot.
Showing 3 changed files with 67 additions and 0 deletions   Show diff stats
.gitignore
... ... @@ -2,3 +2,5 @@
2 2 /redmine
3 3 /.vagrant
4 4 /doc
  5 +/build
  6 +/rpm/*.spec
... ...
Makefile 0 → 100644
... ... @@ -0,0 +1,39 @@
  1 +PROJECT = softwarepublico
  2 +VERSION = 2014.07
  3 +COMPONENTS = colab
  4 +
  5 +TARBALL_FORMAT = tar.gz
  6 +TARBALLS = $(patsubst %,build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT),$(COMPONENTS))
  7 +RPMS = $(patsubst %.$(TARBALL_FORMAT),%-1.$(ARCH).rpm, $(TARBALLS))
  8 +GENERATED += $(TARBALLS) $(RPMS)
  9 +
  10 +ARCH = $(shell uname -m)
  11 +
  12 +all: sdist rpm
  13 +
  14 +sdist: $(TARBALLS)
  15 +
  16 +rpm: $(RPMS)
  17 +
  18 +$(TARBALLS): build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT): %
  19 + @echo "TAR $@"
  20 + @mkdir -p $$(dirname $@)
  21 + @tarball=$$(readlink -f $@); (cd ./$< && git archive --prefix=$(PROJECT)-$<-$(VERSION)/ HEAD | gzip - > $$tarball) || ($(RM) $@; false)
  22 +
  23 +$(RPMS): build/$(PROJECT)-%-$(VERSION)-1.$(ARCH).rpm: build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT)
  24 +
  25 +$(RPMS): build/$(PROJECT)-%-$(VERSION)-1.$(ARCH).rpm: rpm/%.spec
  26 + @echo "RPM $@"
  27 + @mkdir -p ~/rpmbuild/SOURCES
  28 + @component=$$(basename $< .spec) && \
  29 + ln -f build/$(PROJECT)-$$component-$(VERSION).$(TARBALL_FORMAT) ~/rpmbuild/SOURCES/ && \
  30 + rpmbuild --quiet -bb $< && \
  31 + ln -f ~/rpmbuild/RPMS/$(ARCH)/$(PROJECT)-$$component-$(VERSION)-1.$(ARCH).rpm $@
  32 +
  33 +%.spec: %.spec.in
  34 + @echo SPEC $@
  35 + @(sed -e 's/@@version@@/$(VERSION)/g' $^ > $@) || ($(RM) $@; false)
  36 +GENERATED += $(patsubst %.in,%,$(wildcard rpm/*.spec.in))
  37 +
  38 +clean:
  39 + $(RM) $(GENERATED)
... ...
rpm/colab.spec.in 0 → 100644
... ... @@ -0,0 +1,26 @@
  1 +Name: softwarepublico-colab
  2 +Version: @@version@@
  3 +Release: 1%{?dist}
  4 +Summary: Gamified software development collaboration platform
  5 +License: GPLv2
  6 +URL: http://github.com/colab-community
  7 +Source: %{name}-%{version}.tar.gz
  8 +
  9 +%description
  10 +
  11 +%prep
  12 +%autosetup
  13 +
  14 +%build
  15 +# nothing really
  16 +
  17 +%install
  18 +mkdir -p %{buildroot}/srv/softwarepublico/colab
  19 +cp -r * %{buildroot}/srv/softwarepublico/colab
  20 +# also nothing
  21 +
  22 +%files
  23 +%doc
  24 +/srv/softwarepublico/colab
  25 +
  26 +%changelog
... ...