mirror of
https://github.com/open-source-parsers/jsoncpp.git
synced 2024-12-28 20:15:24 +08:00
63860617b3
This change adds explicit copyright information too python files files. The copyright year used in each case is the date of the first git commit of each file. The goal is to allow jsoncpp to be integrated into the chromium source tree which requires license information in each source file. fixes #234
59 lines
1.8 KiB
Python
59 lines
1.8 KiB
Python
# Copyright 2009 Baptiste Lepilleur
|
|
# Distributed under MIT license, or public domain if desired and
|
|
# recognized in your jurisdiction.
|
|
# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
|
|
|
|
import fnmatch
|
|
import os
|
|
|
|
def generate(env):
|
|
def Glob(env, includes = None, excludes = None, dir = '.'):
|
|
"""Adds Glob(includes = Split('*'), excludes = None, dir = '.')
|
|
helper function to environment.
|
|
|
|
Glob both the file-system files.
|
|
|
|
includes: list of file name pattern included in the return list when matched.
|
|
excludes: list of file name pattern exluced from the return list.
|
|
|
|
Example:
|
|
sources = env.Glob(("*.cpp", '*.h'), "~*.cpp", "#src")
|
|
"""
|
|
def filterFilename(path):
|
|
abs_path = os.path.join(dir, path)
|
|
if not os.path.isfile(abs_path):
|
|
return 0
|
|
fn = os.path.basename(path)
|
|
match = 0
|
|
for include in includes:
|
|
if fnmatch.fnmatchcase(fn, include):
|
|
match = 1
|
|
break
|
|
if match == 1 and not excludes is None:
|
|
for exclude in excludes:
|
|
if fnmatch.fnmatchcase(fn, exclude):
|
|
match = 0
|
|
break
|
|
return match
|
|
if includes is None:
|
|
includes = ('*',)
|
|
elif type(includes) in (type(''), type(u'')):
|
|
includes = (includes,)
|
|
if type(excludes) in (type(''), type(u'')):
|
|
excludes = (excludes,)
|
|
dir = env.Dir(dir).abspath
|
|
paths = os.listdir(dir)
|
|
def makeAbsFileNode(path):
|
|
return env.File(os.path.join(dir, path))
|
|
nodes = filter(filterFilename, paths)
|
|
return map(makeAbsFileNode, nodes)
|
|
|
|
from SCons.Script import Environment
|
|
Environment.Glob = Glob
|
|
|
|
def exists(env):
|
|
"""
|
|
Tool always exists.
|
|
"""
|
|
return True
|