Built-in packages and scripting defines

I disabled various built-in packages in the hope to reduce application startup time. For example, I removed the “Terrain” package:

However, scripts are still compiled with the ENABLE_TERRAIN scripting define, as I was able to find in Editor.log:
4974776--484817--upload_2019-9-18_8-48-49.png

I assumed if I remove a package, its scripting define would be removed. Which would allow our code to be able to remove package related code in our framework via #ifdef. At the moment, I’m unable to tell in code if a certain package is enabled to #ifdef code in our framework, causing the project to have compile errors.

Is this the expected behavior, that ENABLE_TERRAIN is set even if I disable the Terrain built-in package?

I’m using Unity 2018.4.6f1.

1 Like

bump

bump

bump