Add support for packaging SUSE RPMs.

This patch adds a new spec file for SUSE distribution and modifies the
Makefile to learn which platform is building the RPMs for.

Change-Id: Ic8ee0ddf978042cc1785ebc28bd1a6c9faf9bb74
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
This commit is contained in:
Marco Varlese
2017-10-10 12:23:03 +02:00
committed by Dave Wallace
parent de706084f6
commit 34acce2574
2 changed files with 384 additions and 0 deletions

View File

@@ -11,6 +11,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
ifneq ($(shell uname),Darwin)
OS_ID = $(shell grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
OS_VERSION_ID= $(shell grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
endif
TARBALL=$(shell realpath ../../build-root/vpp-latest.tar.xz)
@@ -21,6 +25,31 @@ PC=%
all: RPM
ifeq ($(filter opensuse,$(OS_ID)),$(OS_ID))
srpm:
@echo $(TARBALL)
mkdir -p rpmbuild/{RPMS,SRPMS,BUILD,SOURCES,SPECS}
cp $(TARBALL) rpmbuild/SOURCES/vpp-$(VERSION)-$(RELEASE).tar.xz
cp vpp.spec rpmbuild/SOURCES
sed -i '1s/^/$(PC)define _version $(VERSION)\n/' rpmbuild/SOURCES/vpp-suse.spec
sed -i '1s/^/$(PC)define _release $(RELEASE)\n/' rpmbuild/SOURCES/vpp-suse.spec
sed -i '/define _topdir/d' rpmbuild/SOURCES/vpp-suse.spec
rpmbuild -bs \
--define "_topdir rpmbuild" \
rpmbuild/SOURCES/vpp-suse.spec
mv $$(find rpmbuild/SRPMS -name \*.src.rpm -type f) .
RPM:
@echo $(TARBALL)
mkdir -p RPMS SOURCES
cp $(TARBALL) SOURCES/vpp-$(VERSION)-$(RELEASE).tar.xz
rpmbuild -bb \
--define "_topdir $(PWD)" \
--define "_version $(VERSION)" \
--define "_release $(RELEASE)" \
vpp-suse.spec
mv $$(find RPMS -name \*.rpm -type f) .
else
srpm:
@echo $(TARBALL)
mkdir -p rpmbuild/{RPMS,SRPMS,BUILD,SOURCES,SPECS}
@@ -44,3 +73,4 @@ RPM:
--define "_release $(RELEASE)" \
vpp.spec
mv $$(find RPMS -name \*.rpm -type f) .
endif

354
extras/rpm/vpp-suse.spec Normal file

File diff suppressed because it is too large Load Diff