1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/addon-sdk/copy_source.py Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,63 @@ 1.4 +# This Source Code Form is subject to the terms of the Mozilla Public 1.5 +# License, v. 2.0. If a copy of the MPL was not distributed with this 1.6 +# file, You can obtain one at http://mozilla.org/MPL/2.0/. 1.7 + 1.8 +import os 1.9 +import sys 1.10 + 1.11 +if len(sys.argv) != 5: 1.12 + print >> sys.stderr, "Usage: copy_source.py " \ 1.13 + "<topsrcdir> <source directory> <target directory> <isb2g>" 1.14 + sys.exit(1) 1.15 + 1.16 +topsrcdir = sys.argv[1] 1.17 +source_dir = sys.argv[2] 1.18 +target_dir = sys.argv[3] 1.19 +isB2G = int(sys.argv[4]) 1.20 + 1.21 +print """ 1.22 +DEPTH = .. 1.23 +topsrcdir = %(topsrcdir)s 1.24 +srcdir = %(topsrcdir)s/addon-sdk 1.25 +VPATH = %(topsrcdir)s/addon-sdk 1.26 + 1.27 +include $(topsrcdir)/config/config.mk 1.28 +""" % {'topsrcdir': topsrcdir} 1.29 + 1.30 +real_source = source_dir.replace('/', os.sep) 1.31 +if not os.path.exists(real_source): 1.32 + print >> sys.stderr, "Error: Missing source file %s" % real_source 1.33 + sys.exit(1) 1.34 +elif not os.path.isdir(real_source): 1.35 + print >> sys.stderr, "Error: Source %s is not a directory" % real_source 1.36 + sys.exit(1) 1.37 +for dirpath, dirnames, filenames in os.walk(real_source): 1.38 + if not filenames: 1.39 + continue 1.40 + dirpath = dirpath.replace(os.sep, '/') 1.41 + relative = dirpath[len(source_dir):] 1.42 + if isB2G and relative in [ 1.43 + '/method/test', 1.44 + '/sdk/ui', 1.45 + '/sdk/ui/button', 1.46 + '/sdk/ui/sidebar', 1.47 + '/sdk/places', 1.48 + '/sdk/places/host', 1.49 + '/sdk/tabs', 1.50 + '/sdk/panel', 1.51 + '/sdk/frame', 1.52 + '/sdk/test', 1.53 + '/sdk/window', 1.54 + '/sdk/windows', 1.55 + '/sdk/deprecated', 1.56 + ]: 1.57 + continue 1.58 + varname = "COMMONJS%s" % relative.replace('/', '_') 1.59 + print "%s_FILES = \\" % varname 1.60 + for name in filenames: 1.61 + print " %s/%s \\" % (dirpath, name) 1.62 + print " $(NULL)" 1.63 + print "%s_DEST = %s%s" % (varname, target_dir, relative) 1.64 + print "INSTALL_TARGETS += %s\n" % varname 1.65 + 1.66 +print "include $(topsrcdir)/config/rules.mk"