Skip to content

Conversation

@steven-johnson
Copy link
Contributor

This makes the use of the build() method in Generators unsupported by default in Halide 14. The newer, generate() based approach has been preferred for quite some time, and it is believed that very few downstream users still have any code in that form. (Halide itself only has a couple of remaining uses, and they exist only to verify that the build() method still works.)

This hides all support for build() behind the HALIDE_ALLOW_GENERATOR_BUILD_METHOD preprocessor flag, which defaults to undefined -- Generators with build() methods won't compile in this state.

To allow downstream users time to adapt any remaining code, they can #define HALIDE_ALLOW_GENERATOR_BUILD_METHOD in their build system, which will allow the old code to compile (with deprecation warnings).

The intent here is to ship Halide 14 with this deprecation in place, then remove the support entirely in Halide 15.

(At this time LLVM 14 is scheduled to go final in roughly mid-March 2022, so it's likely that Halide 14 will follow in early April 2022 or so.)

@steven-johnson steven-johnson added the release_notes For changes that may warrant a note in README for official releases. label Jan 24, 2022
@steven-johnson steven-johnson merged commit 91ad522 into master Jan 26, 2022
@steven-johnson steven-johnson deleted the srj/no-build branch January 26, 2022 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release_notes For changes that may warrant a note in README for official releases.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants