We show how to correct an optical surface to transform an arbitrary incident light field into a desired irradiance pattern on a projection surface. Beam dilation errors and optical surface corrections are derived from the pullbacks of the actual and desired irradiances. Étendue effects — the principal obstacle to extended-source tailoring - are factored out by solving a sparse linear system. The method accommodates nontrivial projection surfaces, transport phenomena, and incident wavefronts, including those from multiple extended light sources. Numerical experiments achieve high fidelity and contrast ratios in as little as O(N log N)-time for a surface represented by N height values.