При преобразовании приложения Mac в GNUstep необходимо создать шаблон Info-plist для GNUstep, который приблизительно отражает Info.plist (который предназначен только для Mac).
Во время сборки шаблон Info-plist используется для создания двух файлов: Info-gnustep.plist и файла приложения .desktop ( freedesktop.org desktop desktop ).
Info-gnustep.plist содержит записи Info, используемые во время загрузки / выполнения, такие как имя основного класса, загружаемый файл главного меню и т. Д.
Файл приложения .desktop содержит записи Info, используемые для регистрации приложения в desktop-environment / file-browser, такие как категория меню рабочего стола приложения, путь к исполняемому файлу, поддерживаемые типы MIME и т. Д. (Примечание: 'make install 'в настоящее время не регистрирует приложение GNUstep в среде рабочего стола; для того, чтобы установленное приложение GNUStep появилось в меню рабочего стола, его файл .desktop, находящийся в папке "Ресурсы", должен быть зарегистрирован вручную с помощью " инструмент командной строки desktop-file-install * .)
Шаблон Info-plist должен называться "{APP_NAME} Info.plist" и может содержать стандартный список XML-формата или простой формат текстового списка:
{
{KEY1} = {VALUE1};
{KEY2} = {VALUE2};
...
}
Для CurrencyConverter2 создайте текстовый файл с именем «CurrencyConverter2Info.plist» в том же каталоге, что и Makefile, с содержимым:
{
ApplicationName = CurrencyConverter2;
FreeDesktopCategories = ("Utility", "X-GNUstep");
NSExecutable = "CurrencyConverter2";
NSMainNibFile = "MainMenu.nib";
NSPrincipalClass = NSApplication;
NSRole = Application;
}
GNUstep-make автоматически найдет CurrencyConverter2Info.plist, поэтому ему не требуется запись в Makefile.
Вне зависимости от проблемы шаблона Info-plist вы также можете внести следующие изменения в свой Makefile:
- Info.plist предназначен только для Mac, поэтому его можно удалить из
CurrencyConverter2_RESOURCE_FILES
MainMenu.nib можно указать как локализованный ресурс (поэтому ему больше не нужен English.lproj в своем пути), удалив его из CurrencyConverter2_RESOURCE_FILES и добавив две эти строки в ваш Makefile:
CurrencyConverter2_LOCALIZED_RESOURCE_FILES = MainMenu.nib
CurrencyConverter2_LANGUAGES = английский