No entiendo muy bien el problema que tienes (creo que te has liado un poco al explicar el problema), pero no veo el problema en usar condiciones del compilador en el momento de declarar las units.
Ejemplo chorra:
Código Delphi
[-]uses
{$IFDEF WIN32}
Windows,
{$ENDIF}
SysUtils, Classes, Forms;
En este ejemplo, si se estuviera compilando en Windows añadiría la unit "Windows".
Si puedes volver a explicarlo de una forma distinta, quizás te pueda ayudar, hehe.
Saludos.