cudabgsegm module was not compiling.  Changing all references of opencv2/legacy.hpp to opencv2/cudalegacy.hpp seemed to work.
I'm new at this so it would be good to have someone familiar with the build system confirm the change.
cuda::DisparityBilateralFilter no longer uses constant memory for parameters

Now multiple filters can be used in the same context without stepping on each other.
cdata_weight always positive; fewer multiplications.
Move shared interface to header file rather than repeating.
Move shared interface to header file rather than repeating.
Pass in images and scratch space so that multiple copies can run concurrently.
Constify cuda csbp
No longer use constant memory for image step.
ndisp no longer constant
Pass max_disc_term as kernel parameter.
Change struct with single static function to function.
More constant removal.
Deconstify minimum disparity.
Last of csbp load_constants() gone.
Remove compute_disp()'s use of constant memory.
remove use of constant memory in calc_all_iterations/compute_message/message_per_pixel
init_message no longer uses constant memory.
remove constant memory from init_data_cost
remove constant memory use in compute_data_cost
And remove final vestiges.