#!/usr/bin/python

import os
import re

def file_replace (filename, source, dest):
	data = file (filename).read ()
	data = data.replace (source, dest)
	file (filename, 'w').write (data)

# Get current ABI
data = file ('src/server/CMakeLists.txt').read ()
r = re.search ('set\\s*\\(MIRSERVER_ABI\\s*(\\s*\\d+)\\s*\\)', data)
current_abi = int (r.groups()[0])
new_abi = current_abi + 1

# Update build system
file_replace ('src/server/CMakeLists.txt', r.string[r.start():r.end()], 'set(MIRSERVER_ABI %d)' % new_abi)

# Update packaging
os.system ('bzr mv debian/libmirserver%d.install debian/libmirserver%d.install' % (current_abi, new_abi))
file_replace ('debian/libmirserver%d.install' % new_abi, '.so.%d' % current_abi, '.so.%d' % new_abi)
file_replace ('debian/control', 'libmirserver%d' % current_abi, 'libmirserver%d' % new_abi)
