Как один из побочных эффектов подключения кучи проектов, в среде теперь слева развешаны сценарные переменные: Build RELEASE, Operating_System POSIX, Architecture x86_64, Ssl_Library_Type relocatable, Platform native, Library_Type static, Os unix. Мешают. Если что–то менять в проекте, в исходник проекта добавляется локальное объявление каждой переменной и для каждого изменённого параметра проекта здоровенная лестница из case'ов. Пробовал перед тем, как что–то менять в проекте, сначала проставить все галочки, чтоб безальтернативно применялось. GPS не только разбабахала это в case'ы, но на этот раз ещё и перебрала все возможные комбинации сценарных переменных. Теперь исходник проекта, кроме как руками, стараюсь не править. Library_Type выставлен по умолчанию на static, хотя вот как раз это я бы переключил на relocatable, но эта настройка нигде не сохраняется А что вы делаете со сценарными переменными? -- If you want to get to the top, you have to start at the bottom
On Wed, 30 Jan 2013 20:23:10 +0700, you wrote: > Мешают. Если что–то менять в проекте, в исходник проекта добавляется > локальное объявление каждой переменной и для каждого изменённого > параметра проекта здоровенная лестница из case'ов. Для редактирования проектов есть чудесная программа Notepad (gedit, vi...). > А что вы делаете со сценарными переменными? ВСЕ! Выбор цели (VxWorks, Windows, Linux), параметры, отладка или релиз, и т.п. Единственное, чего нельзя - условный "with" проектов, управляемый сценарием. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de
30.01.2013 20:46, Dmitry A. Kazakov пишет: > Для редактирования проектов есть чудесная программа Notepad (gedit, vi...). Ну я всё же имел в виду GPS >> А что вы делаете со сценарными переменными? > > ВСЕ! > > Выбор цели (VxWorks, Windows, Linux) И GNAT Programming Studio, не имея исходников GCC и GNAT, отрастит кросскомпилятор, догадается, как запустить конфигуратор, переконфигурирует и пересоберёт каждую зависимость под другую OS? Или, может быть, отрастит рядом с моим CPU FPGA и, как BORPH, зашьёт в него кастомную архитектуру portable_64_be? Ничего же нельзя поменять без конфигуратора. -- If you want to get to the top, you have to start at the bottom
On Thu, 31 Jan 2013 16:52:04 +0700, you wrote: > 30.01.2013 20:46, Dmitry A. Kazakov пишет: >> Выбор цели (VxWorks, Windows, Linux) > > И GNAT Programming Studio, не имея исходников GCC и GNAT, отрастит > кросскомпилятор, Его "отрастит" AdaCore, если Вы купите соответствующий GNAT Pro... > догадается, как запустить конфигуратор, > переконфигурирует и пересоберёт каждую зависимость под другую OS? Разумеется. Это делается примерно так: package Ide is case Platform is when "x86 Windows" => for Gnatlist use "gnatls"; for Gnat use "gnat"; for Compiler Command ("ada") use "gnatmake"; for Debugger Command use "gdb"; when "x86 VxWorks" => for Gnatlist use "i586-wrs-vxworks-gnatls"; for Gnat use "i586-wrs-vxworks-gnat"; for Compiler Command ("ada") use "i586-wrs-vxworks-gnatmake"; for Debugger Command use "i586-wrs-vxworks6-gdb"; ... case Platform is when "x86 Windows" => case Development is when "Debug" => for Source Dirs use Dirs & "os/Windows/i586"; for Object Dir use "lib/x86/Windows/Debug"; when "Release" => for Source Dirs use Dirs & "os/Windows/i586"; for Object Dir use "lib/x86/Windows/Release"; end case; when "x86 VxWorks" => for Source Dirs use Dirs & "os/vxworks" & "os/vxworks/i586" & "os/vxworks/i586/Native Real Time Clock"; case Development is when "Debug" => for Object Dir use "lib/x86/vxworks/Debug"; when "Release" => for Object Dir use "lib/x86/vxworks/Release"; end case; и т.п. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de
31.01.2013 17:18, Dmitry A. Kazakov пишет: >> догадается, как запустить конфигуратор, >> переконфигурирует и пересоберёт каждую зависимость под другую OS? > > Разумеется. Это делается примерно так: > > package Ide is > case Platform is > when "x86_Windows" => > for Gnatlist use "gnatls"; > for Gnat use "gnat"; > for Compiler_Command ("ada") use "gnatmake"; > for Debugger_Command use "gdb"; > when "x86_VxWorks" => > for Gnatlist use "i586-wrs-vxworks-gnatls"; > for Gnat use "i586-wrs-vxworks-gnat"; > for Compiler_Command ("ada") use "i586-wrs-vxworks-gnatmake"; > for Debugger_Command use "i586-wrs-vxworks6-gdb"; > ... А, понятно. И нашёл ответы на некоторые вопросы. gprbuild вводит несколько дополнительных типов проектов, и то, что мне нужно, называется aggregate project: http://docs.adacore.com/gprbuild-docs/html/gprbuild_ug.html#Define-a-build-environment Не знаю пока, как скормить это GPS, но посмотрим -- If you want to get to the top, you have to start at the bottom
Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти