-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
Apparently the presence of a ttf file (at least if it has the same file name as a built ttf) confuses smith.
Example:
- Clone Lateef
- Build just the Regular font by executing
smith distclean; smith configure; smith build -v -j1 --regOnly
Note the first step of the build is psfcreateinstances, as it should be:
[ 1/14] source/instances/Lateef-Regular.ufo: source/lateef.designspace -> results/source/instances/Lateef-Regular.ufo
13:54:27 runner " psfcreateinstances -q ...
For this analysis, the pertinent build steps include, in order:
-- psfcreateinstances
-- psfufo2ttf
-- psfexportanchors
-- psfmakefea
-- psfbuildfea
-- psfchangettfglyphnames
- Copy the built ttf to the root:
cp results/Lateef-Regular.ttf .
- Now build again with the same distclean/configure/build -v -j1 --regOnly as above
- Notice that the build fails
- Notice also how the build does not start with psfcreateinstances:
[ 1/15] tmp/Lateef-Regular.ttf: Lateef-Regular.ttf -> results/tmp/Lateef-Regular.ttf
13:56:52 runner ['cp', '../Lateef-Regular.ttf', 'tmp/Lateef-Regular.ttf']
[ 2/15] source/instances/Lateef-Regular.ufo: source/lateef.designspace -> results/source/instances/Lateef-Regular.ufo
13:56:52 runner " psfcreateinstances -q -l ...
It appears to be copying the ttf file from the root into the results tree.
Worse, the sequence of build steps are now:
-- psfcreateinstances
-- psfufo2ttf
-- psfexportanchors
-- psfmakefea
-- psfchangettfglyphnames
-- psfbuildfea
Those last two steps are in the reverse order -- it renames the glyphs to production names and then tries to compile the fea, which of course fails.
Metadata
Metadata
Assignees
Labels
No labels