|
From: Heiko Z. <he...@zu...> - 2010-01-06 14:20:15
|
Hey, > -----Original Message----- > From: Andrzej Odyniec [mailto:an...@ma...] > Sent: Wednesday, January 06, 2010 8:02 AM > To: dev...@li... > Subject: Re: [Devil-linux-develop] no more insserv in build system > > Heiko Zuerker wrote: > >>Good questions. :-) > > > > Yes correct, you need to change the Makefile.xxx > > This is obvious. > > > You need to add it twice per file: > > First you need to add it to one of the GROUP_xx entries, then you > need to > > add a line like this: > > conntrack-tools: | $(GROUP_17) > > > > The GOUP_17 in this case means that everything in GROUP_17 has to be > build > > first, before it compiles the script. > > This is obvious for me after lecture of particular makefiles and after > comparation of scriptc before and after Your changes. > > I think, moving dependencies from insserv to explicite declarations in > Makefile'a is good idea. It gives stability and there is no wait for > insserv > every build, so it is faster. Theoretically we can decide to build > particular > package and all it dependencies but not more. But branch experimental > builds > are harder. > > Look. I try to compile Asterisk. It builds. I'm now testing it. But > Asterisk > needs some number of other packages, libraries and drivers, i.e. dahdi, > OSP, > freetds, doxygen, jack, libogg, libpri, libresample, libvorbis, lua, > newt, > portaudio, radiusclient-ng, slang, spandsp, speex, sqlite2 (damn), > stunner, > unixODBC, etc. So I wrote scripts for all it. I hope, my work will be > inserted > into official D-L. > > And for now before experimental build I'm copying my scripts into > proper > directories and all rest do insserv. Dependencies was in insserv > headers in > scripts. > > Now I need every time I'm doing experimental build, insert my package > names > into rules in Makefile's. Manually it is horrible, so I need to do it > from script. > > And now I have headache, how to write script > InsertInto(Phase,Group,Before,Package) > > If You have ready function like this, please for it. > > > I wrote a script which basically create Makefiles from the insserv > > configuration. At some point I want to get away from that also and > have > > every script list the dependencies in the Makefile. > > For example: > > conntrack-tools: | depencency1 dependency2 dependency3 > > This way the adding of new functionality would be easier. > > But internal logic of Your script probably not need function like > InsertInto. > You start from total set of scripts. I need only add some positions > into > dependency hierarchy. But maybe? How about something like this: We add an additional include line to the Makefiles: Makefile.<phase>.custom -> Makefile.build.custom , Makefile.install.custom Then you can have your own custom Makefiles, which you just have to copy in there. You would only have to specify the dependencies within your own custom scripts: script1: | script2 script3 script2: | script5 Let me try adding that functionality to the Makefiles. Heiko |