From 5d9ea1718230f7705e5aba6f17989d5415e28cad Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 19 May 2017 21:04:11 +0000 Subject: l3build (19may17) git-svn-id: svn://tug.org/texlive/trunk@44426 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/l3build/l3build.lua | 49 ++++++++++++++++--------- 1 file changed, 31 insertions(+), 18 deletions(-) (limited to 'Master/texmf-dist/tex/latex/l3build') diff --git a/Master/texmf-dist/tex/latex/l3build/l3build.lua b/Master/texmf-dist/tex/latex/l3build/l3build.lua index f514429cf7d..da1283b6302 100644 --- a/Master/texmf-dist/tex/latex/l3build/l3build.lua +++ b/Master/texmf-dist/tex/latex/l3build/l3build.lua @@ -23,7 +23,7 @@ for those people who are interested. --]] -- Version information -release_date = "2017/05/13" +release_date = "2017/05/19" -- "module" is a deprecated function in Lua 5.2: as we want the name -- for other purposes, and it should eventually be 'free', simply @@ -99,6 +99,7 @@ installfiles = installfiles or {"*.sty"} makeindexfiles = makeindexfiles or {"*.ist"} sourcefiles = sourcefiles or {"*.dtx", "*.ins"} textfiles = textfiles or {"*.md", "*.txt"} +typesetdemofiles = typesetdemofiles or { } typesetfiles = typesetfiles or {"*.dtx"} typesetsuppfiles = typesetsuppfiles or { } unpackfiles = unpackfiles or {"*.ins"} @@ -1798,6 +1799,8 @@ function bundlectan() -- Generate a list of individual file names excluding those in the second -- argument: the latter is a table local function excludelist(include, exclude) + local include = include or { } + local exclude = exclude or { } local includelist = { } local excludelist = { } for _,i in ipairs(exclude) do @@ -1824,6 +1827,12 @@ function bundlectan() for _,i in ipairs(typesetfiles) do insert(pdffiles, (gsub(i, "%.%w+$", ".pdf"))) end + -- For the purposes here, any typesetting demo files need to be + -- part of the main typesetting list + local typesetfiles + for _,v in pairs(typesetdemofiles) do + insert(typesetfiles, v) + end typesetlist = excludelist(typesetfiles, {sourcefiles}) sourcelist = excludelist( sourcefiles, {bstfiles, installfiles, makeindexfiles} @@ -1839,7 +1848,9 @@ end function doc(files) -- Set up cleandir(typesetdir) - for _,i in ipairs({bibfiles, docfiles, sourcefiles, typesetfiles}) do + for _,i in ipairs( + {bibfiles, docfiles, sourcefiles, typesetfiles, typesetdemofiles} + ) do for _,j in ipairs(i) do cp(j, ".", typesetdir) end @@ -1850,24 +1861,26 @@ function doc(files) depinstall(typesetdeps) unpack() -- Main loop for doc creation - for _,i in ipairs(typesetfiles) do - for _, dir in ipairs({unpackdir, typesetdir}) do - for _,j in ipairs(filelist(dir, i)) do - -- Allow for command line selection of files - local typeset = true - if files and next(files) then - typeset = false - for _,k in ipairs(files) do - if k == stripext(j) then - typeset = true - break + for _, typesetfiles in ipairs({typesetdemofiles, typesetfiles}) do + for _,i in ipairs(typesetfiles) do + for _, dir in ipairs({unpackdir, typesetdir}) do + for _,j in ipairs(filelist(dir, i)) do + -- Allow for command line selection of files + local typeset = true + if files and next(files) then + typeset = false + for _,k in ipairs(files) do + if k == stripext(j) then + typeset = true + break + end end end - end - if typeset then - local errorlevel = typesetpdf(abspath(dir) .. "/" .. j) - if errorlevel ~= 0 then - return errorlevel + if typeset then + local errorlevel = typesetpdf(abspath(dir) .. "/" .. j) + if errorlevel ~= 0 then + return errorlevel + end end end end -- cgit v1.2.3