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

Re: Requires & Provides on -devel packages (Continued)



Dag,

Sorry for the late reply.

> Axel Thimm forwarded me here about something I'm implementing in my
> buildsystem. I was fed up with Makefiles writing outside the buildroot
> and I wrote a library yesterday that overloads the glibc functions
> (systemcalls) and checks some conditions before executing. It's called
> Soapbox. http://dag.wieers.com/home-made/soapbox/

I'm using a dedicated machine (in a VMware) to do this at the moment. A
normal user performs the rebuilding, so damage to the system should be
limited.

When Jeff Garzik was still employed at Mandrakesoft we discussed using a
chroot() environment to build packages. The idea was to install a stripped
system (basesystem + rpm-build + BuildRequires) for every package to be
rebuilt in a chroot environment. In the end we didn't go through with the
idea.

> If a process is doing something outside the buildroot, it can fake
> succesful completion without messing up my (clean) build environment.
True.

> Axel told me that this (overloading glibc functions) would be something
> that should be included in rpmbuild for generating build requirements,
> which I agree with. If it can be done safeproof ofc. If we could use it
> also to prevent builds to pollute the build environment, I would be even
> more happy.
True. What I've noticed (at least at MDK) that people aren't interested in
a clean build environment. They just want their packages to build and not
to worry about (useless?) stuff like BuildRequires.

> I'm not a real C programmer, ie. it's been a couple of years and I never
> did anything useful with my C education ;) I think this might be the
> first thing worth mentioning and I'm really interested in people's
> opinion of Soapbox and the implementation.
Would such an application really need to be a C application? The build
scripts I've made are bash script, with some perl bits and they work fine.

> I'd like to help get this thing inside rpmbuild (and in debugging it
> more). As far as I can see, what rpmbuild needs is easier for collecting
> build requirements, than what I'm doing in Soapbox. But reality bites...

It would be cool if rpmbuild would be able to build in a clean
environment, but do you think this should be mandatory for rpmbuild, or
should such a mode be turned on by an option?

Before something like this is implemented, the current FUNDEMENTAL
breakage in the dependancies of the -devel packages needs to be resolved.
My experience with finding the right BuildRequires is that due to the fact
that the dependancies for -devel packages are not automatically found it's
difficult (if not impossible) to maintain.

Example:

recently the libart_lgpl2-devel has been created. I beleive that the files
in this package used to be part of the kdelibs-devel or kdebase-devel
packages. Now the package is split off. Now quite some packages that
BuildRequire kdebase-devel or kdelibs-devel are not compiling due to the
fact that the dependancies have been broken.

See:
http://eijk.homelinux.org/build/cooker/i586/problem/kdeartwork-3.1-3mdk.src.rpm.txt

with kind regards,

Stefan van der Eijk






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