I am using batch scripts for each build job.
Each script is able to set different environment variables. Basically I set the content of Delphi's rsvars.bat in my specific build scripts (Delphi paths, path to MSBuild depending on Delphi version etc.).
So the build script for a distinct build job contains the call to MSBuild (thus I have not set up MSBuild through Jenkins).
Could look something like this for you:
set BDS=C:\PathToDelphiLib
set FrameworkDir=C:\Windows\Microsoft.NET\Framework\v3.5
set FrameworkVersion=v3.5
set PATH=%FrameworkDir%;%BDS%\bin;%PATH%
set LANGDIR=EN
// set other variables
echo @@@ building the project
MSBuild.exe %WORKSPACE%\YourApp\YourApp.dproj "/p:Win32LibraryPath=$(BDS)\lib" /target:Build /p:config=%AConfigVariable% /p:Platform=Win32 /p:DCC_ExeOutput=%OutputDirVariable% /verbosity:quiet
In Jenkins then I can set up the Build using Windows Batch
call %WORKSPACE%\YourApp\ContinuousIntegration\DelphiXE2_Build_Release.bat
An advantage is that you can cascade batch scripts and keep all that logic away from Jenkins. I have also put my build scripts under version control. Everything is inside the repository and under control.