     for each ( feature in FEATURES.feature )
         s += undefDefines(feature);
     s += "\n";
+    for each ( feature in FEATURES.tweak )
+        s += undefDefines(feature);
+    s += "\n";
     for each ( feature in FEATURES.feature )
         s += testDefined(feature);
     s += "\n";
+    for each ( feature in FEATURES.tweak )
+        s += testDefined(feature);
+    s += "\n";
     for each ( feature in FEATURES.feature )
         s += checkRequirements(feature);
     s += "\n";
+    for each ( feature in FEATURES.tweak )
+        s += checkRequirements(feature);
+    s += "\n";
     for each ( x in FEATURES["at-least-one"] )
         s += atLeastOne(x);
     s += "\n";

    s += "const char * const avmfeatures = \"\"\n"
    for each ( feature in FEATURES.feature )
        s += showFeature(feature);
    s += ";\n\n"
    s += "#endif // AVMSHELL_BUILD\n";
    print('writing avmfeatures.cpp');

        s += exactlyOne(x);
    s += "\n";
    for each ( feature in FEATURES.feature )
        s += defineResults(feature);
    s += "\n";
    for each ( feature in FEATURES.tweak )
        s += defineResults(feature);
    s += "\n";
    s += "#ifdef AVMSHELL_BUILD\n";
