Re: [MeeGo-dev] howto prevent unrequired build dependency remove when doing local osc builds?

2011-04-12 Thread David Greaves

On 06/04/11 13:15, Mika Laitio wrote:

I have setted in my .oscrc
build-root = /var/tmp/%(repo)s-%(arch)s

If I first build mce locally with osc build armv8el Trunk_Testing, I
have in my build root all packages that were required for building the
mce on /var/tmp/Trunk_Testing-armv8el

But If I will after that build kernel locally again with same osc build
armv8el Trunk_Testing, osc will now install all additional dependencies
required by the kernel build to this same /var/tmp/Trunk_Testing-armv8el
directory.
That's fine, but for some reason it seems also be removing all
dependencies that were required by the MCE but are not required for the
kernel build.


The reasonong behind this is that OBS (and osc) are designed to build in clean 
chroots that are specified by the dependency chain initiated in the .spec. This 
ensures you have the correct package dependencies and don't inadvertantly ship 
code that FTBFS.



Is there any method for preventing this?
I know that one solution is to configure in oscrc a package specific
build roots, but as each chroot takes about 1 gb of harddrive,
I would rather try to have just arch specific chroots that contains all
non-conflicting build dependencies for many different pacakages
simultaneously.


That pretty much defeats the purpose of osc build - but, if you want rope:
  osc build --extra-pkgs=PAC
and repeat that for the build-deps for mce when building a kernel. Maye use a 
PAC==a meta-pkg to manage that list. That extra-pkgs can even go into your 
.oscrc ... this may or may not do what you want :)


David

--
Don't worry, you'll be fine; I saw it work in a cartoon once...
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


Re: [MeeGo-dev] howto prevent unrequired build dependency remove when doing local osc builds?

2011-04-12 Thread Anas Nashif

On 6 Apr 2011, at 15:15, Mika Laitio wrote:

 I have setted in my .oscrc
build-root = /var/tmp/%(repo)s-%(arch)s
 
 If I first build mce locally with osc build armv8el Trunk_Testing, I have 
 in my build root all packages that were required for building the mce on 
 /var/tmp/Trunk_Testing-armv8el
 
 But If I will after that build kernel locally again with same osc build 
 armv8el Trunk_Testing, osc will now install all additional dependencies 
 required by the kernel build to this same /var/tmp/Trunk_Testing-armv8el 
 directory.
 That's fine, but for some reason it seems also be removing all dependencies 
 that were required by the MCE but are not required for the kernel build.
 
 ...
   warning: /etc/gconf/2/path saved as /etc/gconf/2/path.rpmsave
   deleting GConf-dbus-devel
   deleting dbus-devel
   deleting dbus-glib-devel
   deleting glib2-devel
   deleting libdsme
 ...
 
 Is there any method for preventing this?

Why do you want MCE build dependencies when building the kernel?
The packages are removed from the chroot, but they are still cached locally for 
the next MCE build, meaning you will not be pulling them again from the repos.
If you want to jump straight to building without removing anything, you can try 
--noinit option

   --noinit, --no-init
Skip initialization of build root and start with build
immediately.

Anas


 I know that one solution is to configure in oscrc a package specific build 
 roots, but as each chroot takes about 1 gb of harddrive,
 I would rather try to have just arch specific chroots that contains all 
 non-conflicting build dependencies for many different pacakages 
 simultaneously.
 
 Mika
 ___
 MeeGo-dev mailing list
 MeeGo-dev@meego.com
 http://lists.meego.com/listinfo/meego-dev
 http://wiki.meego.com/Mailing_list_guidelines

___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


Re: [MeeGo-dev] howto prevent unrequired build dependency remove when doing local osc builds?

2011-04-12 Thread Carsten Munk
2011/4/12 Anas Nashif nas...@linux.intel.com:

 On 6 Apr 2011, at 15:15, Mika Laitio wrote:

 I have setted in my .oscrc
    build-root = /var/tmp/%(repo)s-%(arch)s

 If I first build mce locally with osc build armv8el Trunk_Testing, I have 
 in my build root all packages that were required for building the mce on 
 /var/tmp/Trunk_Testing-armv8el

 But If I will after that build kernel locally again with same osc build 
 armv8el Trunk_Testing, osc will now install all additional dependencies 
 required by the kernel build to this same /var/tmp/Trunk_Testing-armv8el 
 directory.
 That's fine, but for some reason it seems also be removing all dependencies 
 that were required by the MCE but are not required for the kernel build.

 ...
       warning: /etc/gconf/2/path saved as /etc/gconf/2/path.rpmsave
       deleting GConf-dbus-devel
       deleting dbus-devel
       deleting dbus-glib-devel
       deleting glib2-devel
       deleting libdsme
 ...

 Is there any method for preventing this?

 Why do you want MCE build dependencies when building the kernel?
 The packages are removed from the chroot, but they are still cached locally 
 for the next MCE build, meaning you will not be pulling them again from the 
 repos.
 If you want to jump straight to building without removing anything, you can 
 try --noinit option

   --noinit, --no-init
                        Skip initialization of build root and start with build
                        immediately.

 Anas


 I know that one solution is to configure in oscrc a package specific build 
 roots, but as each chroot takes about 1 gb of harddrive,
 I would rather try to have just arch specific chroots that contains all 
 non-conflicting build dependencies for many different pacakages 
 simultaneously.

I use --clean, personally

/Carsten
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


Re: [MeeGo-dev] howto prevent unrequired build dependency remove when doing local osc builds?

2011-04-12 Thread Mika Laitio

Why do you want MCE build dependencies when building the kernel?


Because quite often when I am developing and testing some packages, I 
will first do manual editing, building and copying binaries for N900  in 
the chrooted environment.


# /usr/sbin/qemu-binfmt-conf.sh
# cd /var/tmp/Trunk_Testing-armv7el
# chroot .
# cd mce
# make
... then scp the binaries build on non-chrooted terminal which has 
network access to n900 for testing


Once I am happy with that, I will usually do the patches and then run 
local obs build for final testing before committing changes to obs server.


So now what happens is that if I do local obs kernel build, it has 
removed all mce related devel-headers and before I can continue with 
that I must re-install all mce packages by doing a local obs build for mce.


I have worked around this now by collecting a huge list of packages 
under extra-pkgs option in .oscrc



The packages are removed from the chroot, but they are still cached locally for 
the next MCE build, meaning you will not be pulling them again from the repos.
If you want to jump straight to building without removing anything, you can try 
--noinit option

--noinit, --no-init
 Skip initialization of build root and start with build
 immediately.


What I would like to have is some kind of option update existing rpm's 
and install only a new dependencies without uninstalling anything.


Mika
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


[MeeGo-dev] howto prevent unrequired build dependency remove when doing local osc builds?

2011-04-06 Thread Mika Laitio

I have setted in my .oscrc
build-root = /var/tmp/%(repo)s-%(arch)s

If I first build mce locally with osc build armv8el Trunk_Testing, I 
have in my build root all packages that were required for building the 
mce on /var/tmp/Trunk_Testing-armv8el


But If I will after that build kernel locally again with same osc build 
armv8el Trunk_Testing, osc will now install all additional dependencies 
required by the kernel build to this same /var/tmp/Trunk_Testing-armv8el 
directory.
That's fine, but for some reason it seems also be removing all 
dependencies that were required by the MCE but are not required for the 
kernel build.


...
   warning: /etc/gconf/2/path saved as /etc/gconf/2/path.rpmsave
   deleting GConf-dbus-devel
   deleting dbus-devel
   deleting dbus-glib-devel
   deleting glib2-devel
   deleting libdsme
...

Is there any method for preventing this?
I know that one solution is to configure in oscrc a package specific 
build roots, but as each chroot takes about 1 gb of harddrive,
I would rather try to have just arch specific chroots that contains all 
non-conflicting build dependencies for many different pacakages 
simultaneously.


Mika
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines