[lazarus] Components/Code needed

Peter Vreman pfv at cooldown.demon.nl
Wed Aug 11 17:53:41 EDT 1999


> >We need to move the Interfaces into their own directories. Are we close to
> >having that done? Otherwise, it is going to get confusing what code is generic
> >and what code is specific to each environment. I kind of like the way the FCL
> >stuff is organized. It is really easy. All the stuff in the inc directory is
> >generic and all the stuff specific to each environment is in its own directory
> >(linux, win32, etc). Instead of "linux" we would probably have "gtk", "qt",
> >etc. I think Michael was working on this. How close is it to being done?
> 
> I haven't even looked at it, yet.  I don't know about Michael.  I believe since until now there has been nothing but GTK, it hasn't been urgent.  All of the LCL code that is supposed to be gtk specific (other code still is that shouldn't be) is named gtk*.*, and all of the win32 code I am working on is named win32*.* which makes it easy to see what is what.  So for the immediate future, it doesn't need to be split.  
> 
> Tell me if this this feasable.  I don't know enough about how makefiles work to know for sure.   It would be very very nice to leave the generic functions in the LCL directory (not INC) and put the toolkit functions in subdirectories from the LCL with the toolkit name, and all of the files having the same names.  This would let the makefile choose the include directory based on the toolkit, so that, for example, to make the examples you could do MAKE WIN32_ALL to create the win32 files, or MAKE GTK_ALL to make the GTK files.  Could it work?
It's better to have one system independent inc/ directory and all the
toolkits in their own directory. This is needed if you want to have
multiple toolkit targets installed. You can't have a guiapi for every
toolkit and independent .ppu's which depend on the guiapi. So for every
toolkit you need to have their own Makefile (which can ofcourse include
generic parts) and will create their own .ppu's in their own directory. In
the main lcl directory you then place a general Makefile which will call
the makefiles in the toolkit directories which you specify. And maybe a
readme file.

Peter 






More information about the Lazarus mailing list