The mce-dev version information is 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 do builds in OBS without creating explicit version tag. The same way as mce itself already does, relax the version checking for spec file so that versions constructed from matching version + extra git hash identification are also accepted.
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
# Check that all files that should have the current version agree on it
 | 
						|
 | 
						|
PC_PATH=mce.pc
 | 
						|
PC_VERS=$(grep '^Version:' $PC_PATH |sed -e 's/^.*:[[:space:]]*//')
 | 
						|
 | 
						|
DEB_PATH=debian/changelog
 | 
						|
DEB_VERS=$(head -1 $DEB_PATH | sed -e 's/^.*(//' -e 's/).*$//')
 | 
						|
 | 
						|
RPM_PATH=${RPM_SOURCE_DIR:-rpm}/${RPM_PACKAGE_NAME:-mce-headers}.spec
 | 
						|
RPM_VERS=$(grep '^Version:' $RPM_PATH |sed -e 's/^.*:[[:space:]]*//')
 | 
						|
 | 
						|
# Remove initial part of rpm version  that equals with version from pkgconfig
 | 
						|
RPM_XTRA=${RPM_VERS#$PC_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" != "$PC_VERS" ]; then
 | 
						|
  echo >&2 "$PC_PATH $PC_VERS vs $DEB_PATH $DEB_VERS"
 | 
						|
  RES=1
 | 
						|
fi
 | 
						|
 | 
						|
if [ "$RPM_VERS" != "$PC_VERS" ]; then
 | 
						|
  if [ -z "$RPM_XTRA" ]; then
 | 
						|
    echo >&2 "$PC_PATH $PC_VERS vs $RPM_PATH $RPM_VERS"
 | 
						|
    RES=1
 | 
						|
  else
 | 
						|
    echo "(ignoring patch level in spec file: $RPM_XTRA)"
 | 
						|
  fi
 | 
						|
fi
 | 
						|
 | 
						|
if [ $RES != 0 ]; then
 | 
						|
  echo >&2 "Conflicting package versions"
 | 
						|
fi
 | 
						|
 | 
						|
exit $RES
 |