Skip to content

Commit

Permalink
s4-waf: get the version number right on private libraries
Browse files Browse the repository at this point in the history
use the first digit of the version number for the library version

Pair-Programmed-With: Jelmer Vernooij <[email protected]>
  • Loading branch information
Andrew Tridgell committed Dec 8, 2010
1 parent 18177f1 commit d5bf525
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 18 deletions.
13 changes: 13 additions & 0 deletions buildtools/wafsamba/samba_version.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import os
import Utils
import samba_utils

def bzr_version_summary(path):
try:
Expand Down Expand Up @@ -246,3 +247,15 @@ def samba_version_file(version_file, path, env=None):
raise

return SambaVersion(version_dict, path, env=env)



def load_version(env=None):
'''load samba versions either from ./VERSION or git
return a version object for detailed breakdown'''
if not env:
env = samba_utils.LOAD_ENVIRONMENT()

version = samba_version_file("./VERSION", "..", env)
Utils.g_module.VERSION = version.STRING
return version
2 changes: 1 addition & 1 deletion buildtools/wafsamba/wafsamba.py
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ def SAMBA_LIBRARY(bld, libname, source,
if vnum:
Logs.error("vnum is invalid for private libraries")
sys.exit(1)
vnum = Utils.g_module.VERSION
vnum = Utils.g_module.VERSION[0]

features = 'cc cshlib symlink_lib install_lib'
if target_type == 'PYTHON':
Expand Down
22 changes: 5 additions & 17 deletions source4/wscript
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,7 @@ VERSION=None

import sys, os
sys.path.insert(0, srcdir+"/buildtools/wafsamba")
import wafsamba, Options, samba_dist, Scripting, Utils


def load_version(env=None):
'''load samba versions either from ./VERSION or git
return a version object for detailed breakdown'''
import samba_utils, Utils
if not env:
env = samba_utils.LOAD_ENVIRONMENT()

version = wafsamba.samba_version_file("./VERSION", "..", env)
Utils.g_module.VERSION = version.STRING
return version
import wafsamba, Options, samba_dist, Scripting, Utils, samba_version


samba_dist.DIST_DIRS('.')
Expand Down Expand Up @@ -61,7 +49,7 @@ def set_options(opt):


def configure(conf):
version = load_version(env=conf.env)
version = samba_version.load_version(env=conf.env)

conf.DEFINE('CONFIG_H_IS_FROM_SAMBA', 1)
conf.DEFINE('_SAMBA_BUILD_', version.MAJOR, add_to_cflags=True)
Expand Down Expand Up @@ -152,7 +140,7 @@ def ctags(ctx):
# of commands in --help
def build(bld):
'''build all targets'''
load_version(env=bld.env)
samba_version.load_version(env=bld.env)
pass


Expand All @@ -178,12 +166,12 @@ def wafdocs(ctx):

def dist():
'''makes a tarball for distribution'''
load_version(env=None)
samba_version.load_version(env=None)
samba_dist.dist()

def distcheck():
'''test that distribution tarball builds and installs'''
load_version(env=None)
samba_version.load_version(env=None)
import Scripting
d = Scripting.distcheck
d(subdir='source4')
Expand Down
3 changes: 3 additions & 0 deletions source4/wscript_build
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,14 @@
import os
srcdir = ".."

import samba_version

# create separate build groups for building the asn1 and et compiler, then
# building the C from ASN1 and IDL, and finally the main build process
bld.SETUP_BUILD_GROUPS()
bld.AUTOCLEANUP_STALE_FILES()

samba_version.load_version(bld.env)
bld.SAMBA_MKVERSION('version.h')

# bld.ENABLE_MAGIC_ORDERING()
Expand Down

0 comments on commit d5bf525

Please sign in to comment.