On 12/6/06, Jonas Karlsson <[EMAIL PROTECTED]> wrote: > On Wed, 06 Dec 2006 00:25:10 +0100, Hisham Muhammad <[EMAIL PROTECTED]> > wrote: > > > On 12/5/06, Jonas Karlsson <[EMAIL PROTECTED]> wrote: > >> On Tue, 05 Dec 2006 23:39:47 +0100, Hisham Muhammad > >> <[EMAIL PROTECTED]> > >> wrote: > >> > Won't work. PATH and LD_LIBRARY_PATH won't be enough. The proto stuff > >> > installs headers. Then you'll have to handle C_INCLUDE_PATH. And if > >> > something uses C++, then CPLUS_INCLUDE_PATH and so on and so on and so > >> > on. It's hackish. And then some other recipe in the future may look > >> > for share/ stuff which won't work unless properly symlinked. Doing > >> > this is asking for meta-recipes to break in mysterious ways. > >> > > >> "and so on and so on and so on." > >> I can only see that there are six variables to take care of (PATH, > >> MANPATH, INFOPATH, LD_LIBRARY_PATH, C_INCLUDE_PATH and > >> CPLUS_INCLUDE_PATH) > >> of which two have to have two entries bin/sbin and lib/libexec. > > > > No, the set of variables is unbounded: think of PkgConfig, Python, > > etc. Potentially, any program can create an environment variable that > > establishes a path dependency that can be necessary in a later step. > > > I still don't see the problem. The only problem I see with not symlinking > is that one has to update environmental variables so that the files > installed (and not symlinked) are found. If an app creates environmental > variables to resources outside of that dir, I can't see how that would > break things. Maybe I'm missing something.
I gave you an example already. Pkgconfig won't be able to find .pc files installed by subrecipes until they are symlinked. Ok, so then you could say "handle PKG_CONFIG_PATH too then". This breaks the earlier argument that "I can only see that there are six variables to take care of". Like I said, the set of variables is unbounded. Any app can come up with a scheme that requires an additional var to be handled, and then one would have to run after them as things break > >> Of cource shared messes things up, but one can choose only to symlink > >> that. And subdirs of lib, like in the pkgconfig case -- and soon we're back to where we started, with an added possibility of errors with perhaps little gain. > > In another email, you suggested for sub-recipes to have 200+ > > hand-maintained Dependencies files, while we removed Dependencies > > files from sub-recipes precisely because of the maintenance burden. > > I still think that dependencies should be in every sub-recipe. And who is going to figure out the dependencies for each of the 200+ subrecipes? Most importantly, how? Removing Dependencies from subrecipes was André's idea, which I agreed with. He may be able to provide more insights on the rationale for this decision. > Look at my > other thread, where one of the components of Xorg 7.1 needed another > component of Xorg 7.1 (but the latter wasn't installed due to an error by > me). I would like to be able to update sub apps separatly, when it's > possible. Not running the whole compilation in order opens the gate for errors like the one you had. When going against the recommended and tested behavior of compiling a meta-recipe all at once, there's the option of emulating Compile's own behavior by using Compile -n -e -k on the subrecipe at your own risk. > The difference, the way I see it, is that dependencies fail once in a > while, but your idea of add do_symlink=no had the possibility to fail > 200+ -#_of_proto times. Which is why I only advocated it for proto's. (Of course, I proposed it as an alternative to tweaking env vars, not as an alternative to subrecipe dependencies). -- Hisham _______________________________________________ gobolinux-devel mailing list gobolinux-devel@lists.gobolinux.org http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel