-- $Id: fntbuild-vars.lua 10763 2025-02-04 20:28:32Z cfrees $ -- fntbuild variables ------------------------------------------------- ------------------------------------------------- -- l3build variables needed before l3build defines them {{{ ------------------------------------------------- sourcefiledir = sourcefiledir or "." maindir = maindir or sourcefiledir -- builddir -- should be global? or local is better? builddir = builddir or maindir .. "/build" -- }}} ------------------------------------------------- -- l3build variables with changed defaults {{{ ------------------------------------------------- binaryfiles = {"*.pdf", "*.zip", "*.vf", "*.tfm", "*.pfb", "*.pfm", "*.ttf", "*.otf", "*.tar.gz"} -- also very easy for font files not to get installed properly and the old ones used -- note this overrides the l3build default checksearch = false -- maindir before checkdeps -- maindir = "../.." -- checkdeps = { maindir .. "/fnt-tests" } checkengines = { "pdftex" } checkformat = "latex" -- cleanfiles changed below installfiles = {"*.afm", "*.cls", "*.enc", "*.fd", "*.map", "*.otf", "*.pfb", "*.pfm", "*.sty", "*.tfm", "*.ttf", "*.vf"} -- need module test or default? sourcefiles = {"*.afm", "afm/*.afm", "*.pfb", "*.pfm", "*.dtx", "*.ins", "opentype/*.otf", "*.otf", "tfm/*.tfm", "truetype/*.ttf", "*.ttf", "type1/*.pfb", "type1/*.pfm"} -- tdslocations changed below typesetexe = "TEXMFDOTDIR=.:../local: pdflatex" typesetfiles = typesetfiles or {"*.dtx", "*-tables.tex", "*-example.tex"} -- typesetsourcefiles changed below -- }}} ------------------------------------------------- ------------------------------------------------- -- additional variables (inc. dependant changes) {{{ ------------------------------------------------- ------------------------------------------------- -- font definitions to use when auto-generating tests ---@see fnt_test() checkinit_hook() fnt.fnttestfds ---@usage public fnt.autotestfds = fnt.autotestfds or {} -- script containing commands to convert pl and vpl files to binary form ---@see fontinst() ---@usage public fnt.binmakers = fnt.binmakers or {"*-pltotf.sh"} ---@usage public -- it is way too easy to pick up the same package's files in the dist tree -- when that happens, some installation tools fail to generate duplicate files -- once the update goes to ctan, the files disappear ... fnt.buildsearch = false fnt.builddeps = fnt.builddeps or {} -- should use existing fnt variables, I think fnt.buildfiles = fnt.buildfiles or { "*.afm", "*.enc", "*.etx", "*.fd", "*.lig", "*.make", "*.map", "*.mtx", "*.nam", "*.otf", "*.pe", "*.tex" , "*.tfm" } fnt.buildsuppfiles_sys = fnt.buildsuppfiles_sys or {} -- sys replaces defaults; add ads to them fnt.checksuppfiles_sys = fnt.checksuppfiles_sys or {} fnt.checksuppfiles_add = fnt.checksuppfiles_add or {} -- \TeX{} files to compile to produce pl, vpl etc. ---@see fontinst() ---@usage public fnt.familymakers = fnt.familymakers or {"*-drv.tex"} fnt.fntdir = fnt.fntdir or builddir .. "/fnt" -- font definitions to use when auto-generating tests ---@see fnt_test() checkinit_hook() fnt.autotestfds ---@usage public fnt.fnttestfds = fnt.fnttestfds or {} fnt.mapfiles_sys = fnt.mapfiles_sys or {} fnt.mapfiles_add = fnt.mapfiles_add or {} -- sourcefiledir must be specified first -- directory to store build products ---@usage public fnt.keepdir = fnt.keepdir or sourcefiledir .. "/keep" -- directory to store keeptempfiles ---@usage public fnt.keeptempdir = fnt.keeptempdir or sourcefiledir .. "/keeptemp" -- build products ---@usage public fnt.keepfiles = fnt.keepfiles or {"*.enc", "*.fd", "*.map", "*.tfm", "*.vf"} -- files to keep for diagnostics, but which shouldn't be packaged ---@usage public fnt.keeptempfiles = fnt.keeptempfiles or {"*.mtx", "*.pl", "*-pltotf.sh", "*-rec.tex", "*.vpl", "*.zz"} cleanfiles = {fnt.keeptempfiles} -- ** changed default -- \TeX{} files to compile to produce map file fragments etc. ---@see fontinst() ---@usage public fnt.mapmakers = fnt.mapmakers or {"*-map.tex"} -- file containing regression tests ---@see check_init() in fntbuild-check.lua ---@usage public fnt.regress = fnt.regress or "fnt-tests.tex" ---@see fntsubsetter() ---@usage public ---@boolean ---@description whether to add fnt.subset defns to fd files for TC encodings fnt.subset = false ---@see fntsubsetter() ---@usage public ---@usage fnt.subsetdefns. = ---@description table: list of TC fds to insert fnt.subset defns into ---@description entry keys should be family names; entry values should be values ---@description for fnt.subsetdefns. = , ---@description will be substituted for $FONTFAMILY and ---@description will be substituted for $SUBSET into the fnt.subsettemplate fnt.subsetdefns = fnt.subsetdefns or {} ---@see fntsubsetter() ---@usage public ---@usage value should be list of filenames as table ---@description list of font defn files to insert fnt.subset defns into ---@description defaults to all fds matching [Tt][Ss]1.*\.fd fnt.subsetfiles = fnt.subsetfiles or {} ---@see fntsubsetter() ---@description $FONTFAMILY and $SUBSET may be used as placeholders ---@description template for inserted lines specifying TS1 encoding subsets in ---@description fnt.subsetfiles ---@usage public fnt.subsettemplate = fnt.subsettemplate or "\\DeclareEncodingSubset{TS1}{$FONTFAMILY}{$SUBSET}" -- file to use as template for tables ---@see doc_init() in fntbuild-doc.lua ---@usage public fnt.tablestemp = fnt.tablestemp or "fnt-tables.tex" -- file to use as template for tests ---@see check_init() in fntbuild-check.lua ---@usage public fnt.testtemp = fnt.testtemp or "fnt-test.lvt" ------------------------------------------------- -- fnt.vendor and module must be specified before tdslocations ---@usage public fnt.vendor = fnt.vendor or "public" tdslocations = { -- ** changed default "fonts/afm/" .. fnt.vendor .. "/" .. module .. "/" .. "*.afm", "fonts/enc/dvips/" .. module .. "/" .. "*.enc", "fonts/map/dvips/" .. module .. "/" .. "*.map", "fonts/opentype/" .. fnt.vendor .. "/" .. module .. "/" .. "*.otf", "fonts/tfm/" .. fnt.vendor .. "/" .. module .. "/" .. "*.tfm", "fonts/truetype/" .. fnt.vendor .. "/" .. module .. "/" .. "*.ttf", "fonts/type1/" .. fnt.vendor .. "/" .. module .. "/" .. "*.pfb", "fonts/type1/" .. fnt.vendor .. "/" .. module .. "/" .. "*.pfm", "fonts/vf/" .. fnt.vendor .. "/" .. module .. "/" .. "*.vf", "source/fonts/" .. module .. "/" .. "*.etx", "source/fonts/" .. module .. "/" .. "*.mtx", "source/fonts/" .. module .. "/" .. "*-drv.tex", "source/fonts/" .. module .. "/" .. "*-map.tex", "tex/latex/" .. module .. "/" .. "*.fd", "tex/latex/" .. module .. "/" .. "*.sty" } typesetsourcefiles = {fnt.keepdir .. "/*"} -- ** changed default -- }}} ------------------------------------------------- ------------------------------------------------- ------------------------------------------------- -- vim: ts=2:sw=2:et:foldmethod=marker: