diff options
-rw-r--r-- | .travis.yml | 2 | ||||
-rw-r--r-- | BUILD.txt | 10 | ||||
-rw-r--r-- | Makefile.am | 20 | ||||
-rwxr-xr-x | makerpms.sh | 10 |
4 files changed, 39 insertions, 3 deletions
diff --git a/.travis.yml b/.travis.yml index d95eb25db..54b9ce6de 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,4 +13,4 @@ script: - > docker run -v $PWD:/freeipa -w /freeipa martbab/freeipa-fedora-builder:${TRAVIS_BRANCH}-latest - /bin/bash -c 'dnf builddep -y -D "with_lint 1" --spec freeipa.spec.in && make rpms' + /bin/bash -c 'dnf builddep -y -D "with_lint 1" --spec freeipa.spec.in && ./makerpms.sh' @@ -32,14 +32,20 @@ Building -------- From the root of the source tree run: -$ make rpms +$ ./makerpms.sh The resulting rpm packages are in dist/rpms: # yum --nogpgcheck localinstall dist/rpms/* # ipa-server-install -It may be possible to do a simple make all install but this has not been +You might tweak the build and run steps separatelly: +$ autoreconf -i +$ ./configure +$ make +$ make install + +It may be possible to do a simple make install but this has not been well-tested. Additional work is done in pre/post install scripts in the ipa spec file. diff --git a/Makefile.am b/Makefile.am index 79d607d88..eed7d9ffd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -24,3 +24,23 @@ EXTRA_DIST = .mailmap \ doc \ pylintrc \ pytest.ini + +# convenience targets for RPM build +RPMBUILD ?= $(abs_builddir)/rpmbuild +TARBALL = $(PACKAGE)-$(VERSION).tar.gz +rpmroot: + mkdir -p $(RPMBUILD)/BUILD + mkdir -p $(RPMBUILD)/RPMS + mkdir -p $(RPMBUILD)/SOURCES + mkdir -p $(RPMBUILD)/SPECS + mkdir -p $(RPMBUILD)/SRPMS + +rpmdistdir: + mkdir -p $(top_builddir)/dist/rpms + mkdir -p $(top_builddir)/dist/srpms + +rpms: dist-gzip rpmroot rpmdistdir + cp $(top_builddir)/$(TARBALL) $(RPMBUILD)/SOURCES/ + rpmbuild --define "_topdir $(RPMBUILD)" -ba $(top_builddir)/$(PACKAGE).spec + cp $(RPMBUILD)/RPMS/*/*.rpm $(top_builddir)/dist/rpms/ + cp $(RPMBUILD)/SRPMS/*.src.rpm $(top_builddir)/dist/srpms/ diff --git a/makerpms.sh b/makerpms.sh new file mode 100755 index 000000000..775d18f67 --- /dev/null +++ b/makerpms.sh @@ -0,0 +1,10 @@ +#!/usr/bin/bash +set -o errexit + +pushd "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +test ! -x "configure" && autoreconf -i +test ! -f "Makefile" && ./configure "$@" +make rpms + +popd |