diff options
author | Kevin Smith <git@kismith.co.uk> | 2014-07-15 14:45:28 (GMT) |
---|---|---|
committer | Swift Review <review@swift.im> | 2014-10-01 12:15:02 (GMT) |
commit | a2296b00c88df201b0eb58e867aeb17a87e6332c (patch) | |
tree | 9fdebba1b5e9202ca669786a41dd94f080ba5807 /Documentation/SwiftenDevelopersGuide/SConscript | |
parent | a24d8c0e93d70312fc90d5fdf6214ade9a475e92 (diff) | |
download | swift-contrib-a2296b00c88df201b0eb58e867aeb17a87e6332c.zip swift-contrib-a2296b00c88df201b0eb58e867aeb17a87e6332c.tar.bz2 |
Port many of Isode's local fixes upstream
Includes fixes to:
Build with new Visual Studio and Boost
Avoid error caused when Avahi is present but Qt is not
Make declaration of XMPPRosterImpl::addContact consistent with implementation
Includes enhancements to:
Allow user-configurable mt.exe
Allow splitting openssl paths
Allow disabling gconf lookup
Make idn support optional
Allow disabling various library detections
Remove use of non-Python2.4 features in sconscripts
Test-Information:
Builds
Change-Id: Iee91ee80291a8bdf87cc169c915e4dad1cc1055b
Diffstat (limited to 'Documentation/SwiftenDevelopersGuide/SConscript')
-rw-r--r-- | Documentation/SwiftenDevelopersGuide/SConscript | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Documentation/SwiftenDevelopersGuide/SConscript b/Documentation/SwiftenDevelopersGuide/SConscript index c50641f..ba0eb0b 100644 --- a/Documentation/SwiftenDevelopersGuide/SConscript +++ b/Documentation/SwiftenDevelopersGuide/SConscript @@ -2,73 +2,75 @@ Import("env") env.Tool("DocBook", toolpath = ["#/BuildTools/DocBook/SCons"]) ################################################################################ # Code generation helper ################################################################################ import sys, re, os.path def generateDocBookCode(env, target, source) : # Strips empty lines from the beginning & end of a program def stripEmptyLines(program) : programLines = program.split('\n') newProgramLines = [] inProgram = False for line in programLines : if not re.match("^\s*$", line) or inProgram : inProgram = True newProgramLines.append(line) return '\n'.join(newProgramLines).rstrip() def createCallouts(program, calloutPrefix) : newProgramLines = [] calloutLines = [] nextID = 0 for line in program.split("\n") : # FIXME: Takes the largest match m = re.match(".*\/* \(\*\) (.*) \*/.*", line) if m : cobID = "cob-" + calloutPrefix + "-" + str(nextID) coID = "co-" + calloutPrefix + "-" + str(nextID) nextID += 1 line = re.sub("/\*.*\*/", "]]><co id=\"%(cobID)s\" linkends=\"%(coID)s\"/><![CDATA[" % {"cobID" : cobID, "coID" : coID}, line) calloutLines.append("<callout arearefs=\"%(cobID)s\" id=\"%(coID)s\"><para>%(text)s</para></callout>" % {"cobID": cobID, "coID": coID, "text": m.group(1)}) newProgramLines.append(line) - callouts = "<calloutlist>" + "\n".join(calloutLines) + "</calloutlist>" if len(calloutLines) > 0 else "" + callouts = "" + if len(calloutLines) > 0 : + callouts = "<calloutlist>" + "\n".join(calloutLines) + "</calloutlist>" return ("\n".join(newProgramLines), callouts) - + # Parse program filename = source[0].abspath filenameBase = os.path.basename(filename).replace(".cpp", "") inputfile = open(filename) program = "" programs = {} programName = "" inEllipsis = False for line in inputfile.readlines() : if inEllipsis : if "//..." in line : inEllipsis = False else : if line.startswith("/*") or line.startswith(" *") : continue if "//..." in line : inEllipsis = True line = line.replace("//...", "]]>…<![CDATA[") else : m = re.match("^/// (.*)", line) if m : if programName : programs[programName] = program program = "" programName = m.group(1).strip().replace(" ", "") continue line = re.sub("\t", " ", line) program += line programs[programName] = program inputfile.close() for programName, program in programs.items() : program = stripEmptyLines(program) (program, callouts) = createCallouts(program, filenameBase + "-" + programName) |