discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reorganization of Info.plist


From: Fred Kiefer
Subject: Re: Reorganization of Info.plist
Date: Sat, 01 May 2004 19:07:50 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.2) Gecko/20040220

Nicola Pero wrote:
Hi

looking at some problems we have with the current way of generating
Info.plist files, I'd like to consider a pretty radical change in the way
our makefiles deal with those files.

Consider an application.

At the moment, you have a GNUmakefile which contains lines such as
  Nicola_MAIN_MODEL_FILE = Nicola.gorm
  Nicola_APPLICATION_ICON = HappyProgram.png
  Nicola_PRINCIPAL_CLASS = MainController
and if you want to set more stuff in your Info.plist, you add a
xxxInfo.plist file.

gnustep-make will read your GNUmakefile variables, generate an Info.plist
fragment using those variables, then run plmerge to merge your
xxxInfo.plist file into that one.


Now if you think about it, this is pretty stupid. :-)

The process is complex, and it's generating something which ... is always
the same!  So why generating it?  The process is not even adding much
value, because for a programmer, writing

{
  NSExecutable = Nicola;
  NSMainNibFile = Nicola.gorm;
  NSIcon = HappyProgram.png;
  NSPrincipalClass = MainController;
}

is more or less the same amount of work than writing the equivalent lines
in the GNUmakefile, but it's more transparent, as what you write is what
you get.

I am all in favour to this proposal, reducing complexity is something we should always strive for. Still there is one problem, we should address. ProjectCenter does produce GNUmakefiles and adds all this settings there (PCLib/PCMakefileFactory.m). So I would expect that this spilt was there to support ProjectCenter. If we change the recommended mechanism we should also change ProjectCenter to use it. Looking at the code there, this should not be to difficult.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]