Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.04.13;
Скачать: CL | DM;

Вниз

Условное компилирование модулей   Найти похожие ветки 

 
SpellCaster   (2008-03-17 19:59) [0]

Возможна ли управлять компилированием модулей через DEFINE-ы в главном модуле, который их подключает? Есть сильное подозрение, что DEFINE распространяется исключительно на свой модуль, но, может, я ошибаюсь?
P.S. Т.е. хочется иметь нечто вроде Сишных инклюдов, в которые не компилилась бы лишняя шняга.


 
Семеныч   (2008-03-17 20:40) [1]

> Есть сильное подозрение, что DEFINE распространяется исключительно на
> свой модуль

Если условие написано в самом модуле - то да. Но если его задать в опциях проекта, то оно будет действовать на весь проект.


 
Германн ©   (2008-03-18 02:30) [2]


> SpellCaster   (17.03.08 19:59)
>
> Возможна ли управлять компилированием модулей через DEFINE-
> ы в главном модуле, который их подключает? Есть сильное
> подозрение, что DEFINE распространяется исключительно на
> свой модуль, но, может, я ошибаюсь?
> P.S. Т.е. хочется иметь нечто вроде Сишных инклюдов, в которые
> не компилилась бы лишняя шняга.
>

Либо через "опции проекта", как сказано в Семеныч   (17.03.08 20:40) [1], либо через дополнительный файл, в котором перечислены нужные DEFINE, и которые добавляются при необходимости в любой файл/модуль директивой {$I
Кстати, в старом добром ТП так т делали.


 
SpellCaster   (2008-03-18 10:50) [3]

Ага, я подозревал это... а опции проекта можно как-то менять из исходных файлов? В файле *.bdsproj есть раздел Conditionals, но он пуст... где ж они хранят этот дефайн?
Фишка с общим инклюдом не подходит, т.к. хочу сделать один модуль на несколько проектов, и в каждом иметь возможность компилить по-своему. Есть еще одна идея - в каждом проекте делать отдельный файл MyUnit.pas такого вида:

{$DEFINE stuff}
{$I ..\MyUnit.pas} // это полноценный модуль



Страницы: 1 вся ветка

Текущий архив: 2008.04.13;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.007 c
2-1205529536
greg123
2008-03-15 00:18
2008.04.13
Добавление записей и отображение в dbgrid


2-1205927037
asdf2
2008-03-19 14:43
2008.04.13
Как сделать MultiSelect в TCheckListBox?


2-1205773453
Александр Ч.
2008-03-17 20:04
2008.04.13
Обратная совместимость программ с Vista на XP


6-1184911760
plotn
2007-07-20 10:09
2008.04.13
TCPClient


15-1204017202
Правильный_Вася
2008-02-26 12:13
2008.04.13
FireBird - альтернатива





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский