WebGL builds ignore build profile define symbols?

Hi,

  1. I have my webgl editor settings with define symbol FOO
  2. I have my webgl_bar build profile with define symbol BAR

On build, expected define symbols:

  1. FOO
  2. BAR

Actually got:

  1. FOO

Works fine in other platforms: Just webgl. Is this a known bug? Does anyone have a link to an article or thread?

How are you setting symbol BAR? Via the Scripting Define Symbols list in Player Settings? Via a script?

Does the symbol show up under scriptingDefineSymbols in the .asset file corresponding to the build profile configuration (i.e. Assets/Settings/Build Profiles/webgl_bar.asset)?

Where is the symbol needed? In Editor code or runtime code?

Perhaps this documentation page will help: Unity - Manual: Custom scripting symbols

How are you setting symbol BAR ?

BAR is defined in the webgl_bar build profile:

Does the symbol show up under scriptingDefineSymbols in the .asset file corresponding to the build profile configuration (i.e. Assets/Settings/Build Profiles/webgl_bar.asset )?

Yes: I see it listed in m_ScriptingDefines

Where is the symbol needed? In Editor code or runtime code?

Runtime code. For example, USE_STEAM for Steam builds. Works fine with other build profiles that are not webgl (eg, Windows).

Evidence currently points to be a breaking Unity 6 webgl bug regarding how it resolves scriptingDefine inheritance with build profiles.

Rather: The build profile defines are completely ignored – only the parent build settings defines apply.

Thanks for the extra info. That behavior is surprising. Would you mind filing a bug report that includes a project we can use the reproduce the bug?

EDIT: Apologies, I had a bad serve script that was pointing to a stale build in a nested dir!

Ah! Sounds like this issue is resolved, then?