# GlyphsLib/FontMake now support Glyphs feature variations syntax! Is there a way to build to VF \*and\* static fonts?

**URL:** <https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356>\
**Category:** Glyphs\
**Created:** [September 27, 2026, 9:06pm UTC](https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356 "2026-09-27T21:06:40Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![thundernixon](https://forum.glyphsapp.com/user_avatar/forum.glyphsapp.com/thundernixon/32/1579_2.png) [@thundernixon](https://forum.glyphsapp.com/u/thundernixon)\
**Post date:** [September 27, 2026, 9:06pm UTC](https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356/1 "2026-09-27T21:06:41Z")

</div>

Apologies in advance if this question falls a bit beyond the purview of this glyphs forum.

GlyphsLib/FontMake now support Glyphs feature variations syntax! But if I _am_ using “ifdef” feature syntax, is there a way to build to VF _and_ static fonts? I’ve asked this question in the [glyphsLib GitHub repo](https://github.com/googlefonts/glyphsLib/issues/1175), so an answer/discussion there might be ideal. But, I wanted to get a bit of extra visibility on the question, and I know there are a few experts here. 🙂

I assume a couple of Glyphs-centric answers to my question are:

1. **Yes – use bracket layers to swap shapes.** This works pretty well if I only need one area of shape switching, but I can’t get it to work for multiple areas, as needed in a current width+weight family I’m working on. So, thus my excitement about using feature variations.
2. **Yes – export from the app, or build with the recently released [Glyphs CLI tool](https://forum.glyphsapp.com/t/command-line-tool-for-glyphs/36022).** Those are both decent answers, and I may move towards the CLI tool. Still, I like having the ability to use FontMake and open-source tools in builds, when possible.

So, if I _am_ trying to build via FontMake, is there some approach that might work?

I’ve just realized I miiight be able to get there with some combination of setting up exports/instances using custom parameters “Add Features” or “Remove Features” (for variable vs static exports) as well as “Rename Glyphs” and “Remove Glyphs” (for static swaps).

I’ll try it out, and report back if I find a way!

Aside from that, I’d still love to know if there might be some kind of more automatic approach. I’m imagining something like:

- Some way to make FontMake or glyphsLib put the “ifdef” conditions into designspace rules, where multiple conditionsets can be used. I think this might be done for bracket layers, but my builds are failing if I have multiple conditions declared in bracket layers.
- Custom parameters to control features and glyph swaps in exports. This is what I’ll experiment with and share results on!

> <https://github.com/googlefonts/glyphsLib/issues/1175>
>
> It’s amazing to see that it is finally possible to use variable conditions in Gl…yphs sources, and have them translated into feature code in a fontmake build!
> 
> Many thanks to everyone who worked to make this possible.
> 
> (I’m currently trying to build a width+weight font where crossbars can fall into multiple conditions, so it’s great that this is now more approachable than before!)
> 
> However, according to @khaledhosny in https://github.com/googlefonts/glyphsLib/pull/1159:
> 
> \> We don’t have a way to tell if the font is going to be built as variable or static font, so we assume variable build.
> 
> That makes sense, I suppose, but leaves me uncertain on what to do next. 
> 
> Is there any way to build static fonts from such a source? 
> 
> If these conditions translated into designspace rules, I would understand how to proceed, but as it is, I’m unsure. It is nice that these are going to proper .fea syntax, as (I assume) we now have the ability to add variable conditions in any feature, which I don’t think Designspace rules allow. But, yeah, I’m a little unsure how to proceed, when I do want to export to both variable and static fonts from the same Glyphs source.
> 
> I suppose one possible approach might be to build a variable font, then generate instances from that using the FontTools Instancer... 
> 
> But, is there some simpler way to just build static fonts from Glyphs, using FontMake, with swaps made appropriately? If not, is this something in the works at all, or not so much, at the moment?
> 
> Thanks for any insights!

---

<div class="post-metadata">

**Author:** ![GeorgSeifert](https://forum.glyphsapp.com/user_avatar/forum.glyphsapp.com/georgseifert/32/259_2.png) [@GeorgSeifert](https://forum.glyphsapp.com/u/GeorgSeifert)\
**Post date:** [September 28, 2026, 3:33pm UTC](https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356/2 "2026-09-28T15:33:57Z")

</div>

I think you answered it yourself pretty well.

For statics, use Feature parameters per instance.

If the `#ifdef VARIABLE` is not in glyphLib/feaLib yet, this code needs to be in a “Add Feature” parameter in the variable export settings.

---

<div class="post-metadata">

**Author:** ![thundernixon](https://forum.glyphsapp.com/user_avatar/forum.glyphsapp.com/thundernixon/32/1579_2.png) [@thundernixon](https://forum.glyphsapp.com/u/thundernixon)\
**Post date:** [October 11, 2026, 6:59pm UTC](https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356/3 "2026-10-11T18:59:58Z")

</div>

Thanks for the reply!

Unfortunately, I can’t get any of my ideas to fully work.

The good news:

- FontMake will successfully build variable fonts from Glyphs sources with `ifdef VARIABLE` conditions in features, and these variable substitutions work in the exported fonts.
- (It’s not as new, but) FontMake will successfully process “Rename Glyphs” parameters for static instances. So, I can control glyph alts in exported static fonts.

But, there’s bad news:

- FontMake (/glyphsLib) doesn’t seem to support parameters for “Add Feature” or “Remove Feature.”
- A static build from FontMake fails if the feature code include `ifdef VARIABLE` conditions. (`Compiling UFO failed: :34:1: Cannot add feature variations to a font without an 'fvar' table`) And, because one cannot remove this feature in static exports, or add this in variable exports, there seems to be no current way to use FontMake to export both variable and static fonts from the same source, if semi-complex feature variations are desired.

---

<div class="post-metadata">

**Author:** ![GeorgSeifert](https://forum.glyphsapp.com/user_avatar/forum.glyphsapp.com/georgseifert/32/259_2.png) [@GeorgSeifert](https://forum.glyphsapp.com/u/GeorgSeifert)\
**Post date:** [October 13, 2026, 3:58pm UTC](https://forum.glyphsapp.com/t/glyphslib-fontmake-now-support-glyphs-feature-variations-syntax-is-there-a-way-to-build-to-vf-and-static-fonts/37356/4 "2026-10-13T15:58:58Z")

</div>

Wasn’t that discussed and fixed in the glyphsLib repo?
