FTDI based Xilinx JTAG
You'll want a look at Xilinx app note 453, title "The 3.3V Configuration of Spartan-3 FPGAs". Basically the advice is putting resistors in series to limit the current through the protection diodes, and one over the 2.5V to sink the remaining current. Using level shifting circuitry instead would also work.