summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buildtools/wafsamba/samba_dist.py20
-rw-r--r--source4/wscript5
2 files changed, 25 insertions, 0 deletions
diff --git a/buildtools/wafsamba/samba_dist.py b/buildtools/wafsamba/samba_dist.py
index 0586550814..30e82620af 100644
--- a/buildtools/wafsamba/samba_dist.py
+++ b/buildtools/wafsamba/samba_dist.py
@@ -5,6 +5,7 @@ import Utils, os, sys, tarfile, stat, Scripting, Logs
from samba_utils import *
dist_dirs = None
+dist_blacklist = None
def add_symlink(tar, fname, abspath, basedir):
'''handle symlinks to directories that may move during packaging'''
@@ -88,6 +89,7 @@ def dist(appname='',version=''):
dist_name = '%s.tar.gz' % (dist_base)
tar = tarfile.open(dist_name, 'w:gz')
+ blacklist = dist_blacklist.split()
for dir in dist_dirs.split():
if dir.find(':') != -1:
@@ -106,6 +108,17 @@ def dist(appname='',version=''):
abspath = os.path.join(srcdir, f)
if dir != '.':
f = f[len(dir)+1:]
+
+ # Remove files in the blacklist
+ if f in dist_blacklist:
+ continue
+ blacklisted = False
+ # Remove directories in the blacklist
+ for d in blacklist:
+ if f.startswith(d):
+ blacklisted = True
+ if blacklisted:
+ continue
if destdir != '.':
f = destdir + '/' + f
fname = dist_base + '/' + f
@@ -124,4 +137,11 @@ def DIST_DIRS(dirs):
if not dist_dirs:
dist_dirs = dirs
+@conf
+def DIST_BLACKLIST(blacklist):
+ '''set the directories to package, relative to top srcdir'''
+ global dist_blacklist
+ if not dist_blacklist:
+ dist_blacklist = blacklist
+
Scripting.dist = dist
diff --git a/source4/wscript b/source4/wscript
index f018094f1c..3645ad4788 100644
--- a/source4/wscript
+++ b/source4/wscript
@@ -15,6 +15,11 @@ VERSION=version.STRING
samba_dist.DIST_DIRS('.')
+#This is a list of files that we don't want in the package, for
+#whatever reason. Directories should be listed with a trailing / to
+#avoid over-exclusion.
+samba_dist.DIST_BLACKLIST('README Manifest Read-Manifest-Now Roadmap source3/ ' +
+ 'packaging/ docs-xml/ examples/ swat/ WHATSNEW.txt MAINTAINERS')
# install in /usr/local/samba by default
Options.default_prefix = '/usr/local/samba'