Cleanup and simplify 29/9629/2
authorMarco Varlese <marco.varlese@suse.com>
Wed, 29 Nov 2017 15:13:04 +0000 (16:13 +0100)
committerDamjan Marion <dmarion.lists@gmail.com>
Thu, 30 Nov 2017 08:48:49 +0000 (08:48 +0000)
This patch addresses two things:
1) It simplifies the Makefile to build RPMs by removing duplication and
use environment variables instead;
2) It aligns openSUSE with others with regards to invoke "pkg-rpm" by
the build.sh for Vagrant

Change-Id: I51557f54e4ddf49d83bb69fa0035c8fff122857e
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
extras/rpm/Makefile
extras/vagrant/build.sh

index 4ec1e62..5d965f9 100644 (file)
@@ -26,41 +26,24 @@ 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 $(CURDIR)" \
-         --define "_version $(VERSION)" \
-         --define "_release $(RELEASE)" \
-         vpp-suse.spec
-       mv $$(find RPMS -name \*.rpm -type f) .
+TOPDIR=$(CURDIR)
+SPEC_FILE='vpp-suse.spec'
 else
+TOPDIR=$(PWD)
+SPEC_FILE='vpp.spec'
+endif
+
 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.spec
-       sed -i '1s/^/$(PC)define _release $(RELEASE)\n/' rpmbuild/SOURCES/vpp.spec
-       sed -i '/define _topdir/d' rpmbuild/SOURCES/vpp.spec
+       cp $(SPEC_FILE) rpmbuild/SOURCES
+       sed -i '1s/^/$(PC)define _version $(VERSION)\n/' rpmbuild/SOURCES/$(SPEC_FILE)
+       sed -i '1s/^/$(PC)define _release $(RELEASE)\n/' rpmbuild/SOURCES/$(SPEC_FILE)
+       sed -i '/define _topdir/d' rpmbuild/SOURCES/$(SPEC_FILE)
        rpmbuild -bs \
          --define "_topdir rpmbuild" \
-         rpmbuild/SOURCES/vpp.spec
+         rpmbuild/SOURCES/$(SPEC_FILE)
        mv $$(find rpmbuild/SRPMS -name \*.src.rpm -type f) .
 
 RPM:
@@ -68,9 +51,8 @@ RPM:
        mkdir -p RPMS SOURCES
        cp $(TARBALL) SOURCES/vpp-$(VERSION)-$(RELEASE).tar.xz
        rpmbuild -bb \
-         --define "_topdir $(PWD)" \
+         --define "_topdir $(TOPDIR)" \
          --define "_version $(VERSION)" \
          --define "_release $(RELEASE)" \
-         vpp.spec
+         $(SPEC_FILE)
        mv $$(find RPMS -name \*.rpm -type f) .
-endif
index d317c31..86ed4cd 100755 (executable)
@@ -67,6 +67,6 @@ elif [ "$OS_ID" == "centos" ]; then
     (cd $VPP_DIR/vnet ;$SUDOCMD aclocal;$SUDOCMD automake -a)
     $SUDOCMD make pkg-rpm
 elif [ "$OS_ID" == "opensuse" ]; then
-    $SUDOCMD make build-release
+    $SUDOCMD make pkg-rpm
 fi