Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Allow OBS build without explicit version tag
MCE has version information recorded in several files. To keep these
in sync, there is a script that will cause rpm builds to fail unless
all of the places have the same version.

While this is good for making sure releases do not end up using out
of sync version numbers, it also makes it impossible to build mce
in OBS without creating explicit version tag.

Relax the version checking for spec file so that versions constructed
from matching version + extra git hash identification are also accepted.
  • Loading branch information
spiiroin committed Sep 15, 2014
1 parent ca490b1 commit 0f12d12
Showing 1 changed file with 15 additions and 2 deletions.
17 changes: 15 additions & 2 deletions verify_version
Expand Up @@ -11,6 +11,15 @@ DEB_VERS=$(head -1 $DEB_PATH | sed -e 's/^.*(//' -e 's/).*$//')
RPM_PATH=${RPM_SOURCE_DIR:-rpm}/${RPM_PACKAGE_NAME:-mce}.spec
RPM_VERS=$(grep '^Version:' $RPM_PATH |sed -e 's/^.*:[[:space:]]*//')

# Remove initial part of rpm version that equals with version from Makefile
RPM_XTRA=${RPM_VERS#$MAK_VERS}
# From that remove initial part that equals with version from spec-file
RPM_XTRA=${RPM_XTRA#$RPM_VERS}
# If the result is non-empty string, then OBS is doing
# delta-after-matching-tag kind of build, which is ok.
# But empty string means that spec and Makefile are completely
# out of sync, which is bad.

RES=0

if [ "$DEB_VERS" != "$MAK_VERS" ]; then
Expand All @@ -19,8 +28,12 @@ if [ "$DEB_VERS" != "$MAK_VERS" ]; then
fi

if [ "$RPM_VERS" != "$MAK_VERS" ]; then
echo >&2 "$MAK_PATH $MAK_VERS vs $RPM_PATH $RPM_VERS"
RES=1
if [ -z "$RPM_XTRA" ]; then
echo >&2 "$MAK_PATH $MAK_VERS vs $RPM_PATH $RPM_VERS"
RES=1
else
echo "(ignoring patch level in spec file: $RPM_XTRA)"
fi
fi

if [ $RES != 0 ]; then
Expand Down

0 comments on commit 0f12d12

Please sign in to comment.