условная компиляция, DEFINE в lpr

Делаю модуль который надо подключить в разные проекты и необходимо условной компиляцией исключить некоторые куски кода в разных проектах, для этого определил в модуле проекта символы и проверяю их существование в модуле, но их не видит модуль, хоть определяй, хоть нет 
Сделал тестовый проект, с одной единственной формой и кнопкой на ней,
в lpr стоит следующее
в модуле формы, Unit1, соответственно
отрабатывает ветка
Button1.Caption:='not defined';
Почему?? что я делаю не так??

Сделал тестовый проект, с одной единственной формой и кнопкой на ней,
в lpr стоит следующее
- Код: Выделить всё
program project1;
{$mode objfpc}{$H+}
{$DEFINE MYTEST}
uses
...
unit1;
в модуле формы, Unit1, соответственно
- Код: Выделить всё
....
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
{$IFDEF MYTEST}
Button1.Caption:='defined';
{$ELSE}
Button1.Caption:='not defined';
{$ENDIF}
end;
....
отрабатывает ветка
Button1.Caption:='not defined';
Почему?? что я делаю не так??