Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 67289 | Differences between
and this patch

Collapse All | Expand All

(-)modules/embedded_target.py (-12 / +19 lines)
Lines 1-6 Link Here
1
# Distributed under the GNU General Public License version 2
1
# Distributed under the GNU General Public License version 2
2
# Copyright 2003-2004 Gentoo Technologies, Inc.
2
# Copyright 2003-2004 Gentoo Technologies, Inc.
3
# $Header: /var/cvsroot/gentoo/src/catalyst/modules/embedded_target.py,v 1.1 2004/05/17 01:21:17 zhen Exp $
3
# $Header: /home/cvsroot/gentoo/src/catalyst/modules/embedded_target.py,v 1.1 2004/05/17 01:21:17 zhen Exp $
4
4
5
"""
5
"""
6
This class works like a 'stage3'.  A stage2 tarball is unpacked, but instead
6
This class works like a 'stage3'.  A stage2 tarball is unpacked, but instead
Lines 8-14 Link Here
8
inside the 'stage2' system.  This way we do not have to emerge gcc/portage
8
inside the 'stage2' system.  This way we do not have to emerge gcc/portage
9
into the staged system.
9
into the staged system.
10
10
11
It sounds real complicated but basically it's a it runs
11
It sounds real complicated but basically it runs
12
ROOT=/tmp/submerge emerge --blahblah foo bar
12
ROOT=/tmp/submerge emerge --blahblah foo bar
13
"""
13
"""
14
14
Lines 22-29 Link Here
22
    def __init__(self,spec,addlargs):
21
    def __init__(self,spec,addlargs):
23
        self.required_values=[]
22
        self.required_values=[]
24
        self.valid_values=[]
23
        self.valid_values=[]
25
	#self.required_values.extend(["embedded/packages"]);
24
        self.valid_values.extend(["embedded/empty","embedded/rm","embedded/unmerge","embedded/runscript","embedded/mergeroot","embedded/packages","embedded/use","embedded/fstype"])
26
        self.valid_values.extend(["embedded/empty","embedded/rm","embedded/unmerge","embedded/runscript","embedded/mergeroot","embedded/packages","embedded/use"])
25
26
        if addlargs.has_key("embedded/fstype"):
27
            self.valid_values.append("embedded/fsops")
27
28
28
        generic_stage_target.__init__(self,spec,addlargs)
29
        generic_stage_target.__init__(self,spec,addlargs)
29
	self.settings["image_path"]=self.settings["storedir"]+"/builds/"+self.settings["target_subpath"]+"/image"	
30
	self.settings["image_path"]=self.settings["storedir"]+"/builds/"+self.settings["target_subpath"]+"/image"	
Lines 50-55 Link Here
50
		    for x in self.settings["embedded/rm"]:
51
		    for x in self.settings["embedded/rm"]:
51
			    print "Removing "+x
52
			    print "Removing "+x
52
			    os.system("rm -rf "+self.settings["chroot_path"]+"/tmp/mergeroot"+x)
53
			    os.system("rm -rf "+self.settings["chroot_path"]+"/tmp/mergeroot"+x)
54
55
    def build_fs(self):
56
        try:
57
            if self.settings.has_key("embedded/fstype"):
58
                cmd("/bin/bash "+self.settings["sharedir"]+"/targets/embedded/embedded.sh package","filesystem packaging failed")
59
        except CatalystError:
60
                self.unbind()
61
                raise CatalystError, "embedded filesystem created aborting due to error."
62
63
53
    def run_local(self):
64
    def run_local(self):
54
	    mypackages=list_bashify(self.settings["embedded/packages"])
65
	    mypackages=list_bashify(self.settings["embedded/packages"])
55
	    print "Merging embedded image"
66
	    print "Merging embedded image"
Lines 60-72 Link Here
60
		    raise CatalystError, "Embedded build aborted due to error."
71
		    raise CatalystError, "Embedded build aborted due to error."
61
	    self.unmerge()
72
	    self.unmerge()
62
	    self.clean()
73
	    self.clean()
63
	    try:
74
            self.build_fs()
64
		    if self.settings.has_key("embedded/runscript"):
65
			    cmd("/bin/bash "+self.settings["embedded/runscript"]+" run ","runscript failed")
66
	    except CatalystError:
67
		    self.unbind()
68
		    raise CatalystError, "embedded runscript aborting due to error."
69
75
70
def register(foo):
76
def register(foo):
71
	foo.update({"embedded":embedded_target})
77
        foo.update({"embedded":embedded_target})
72
	return foo
78
        return foo
(-)targets/embedded/embedded-preclean-chroot.sh (-1 / +1 lines)
Lines 1-7 Link Here
1
#!/bin/bash
1
#!/bin/bash
2
# Copyright 1999-2003 Gentoo Technologies, Inc.
2
# Copyright 1999-2003 Gentoo Technologies, Inc.
3
# Distributed under the terms of the GNU General Public License v2
3
# Distributed under the terms of the GNU General Public License v2
4
# $Header: /var/cvsroot/gentoo/src/catalyst/targets/embedded/embedded-preclean-chroot.sh,v 1.3 2004/06/04 14:03:46 zhen Exp $
4
# $Header: /home/cvsroot/gentoo/src/catalyst/targets/embedded/embedded-preclean-chroot.sh,v 1.3 2004/06/04 14:03:46 zhen Exp $
5
5
6
/usr/sbin/env-update
6
/usr/sbin/env-update
7
source /etc/profile
7
source /etc/profile
(-)targets/embedded/embedded.sh (-6 / +12 lines)
Lines 1-7 Link Here
1
#!/bin/bash
1
#!/bin/bash
2
# Copyright 1999-2003 Gentoo Technologies, Inc.
2
# Copyright 1999-2003 Gentoo Technologies, Inc.
3
# Distributed under the terms of the GNU General Public License v2
3
# Distributed under the terms of the GNU General Public License v2
4
# $Header: /var/cvsroot/gentoo/src/catalyst/targets/embedded/embedded.sh,v 1.4 2004/04/14 22:35:29 zhen Exp $
4
# $Header: /home/cvsroot/gentoo/src/catalyst/targets/embedded/embedded.sh,v 1.4 2004/04/14 22:35:29 zhen Exp $
5
5
6
case $1 in
6
case $1 in
7
	enter)
7
	enter)
Lines 15-27 Link Here
15
	;;
15
	;;
16
16
17
	preclean)
17
	preclean)
18
		exit 0
18
		# currently this doesn't do much
19
		cp ${clst_sharedir}/targets/embedded/embedded-preclean-chroot.sh ${clst_chroot_path}
20
		${clst_CHROOT} ${clst_chroot_path} /tmp/embedded-preclean-chroot.sh || exit 1
21
		rm -rf ${clst_chroot_path}/tmp/embedded-preclean-chroot.sh
19
	;;
22
	;;
20
23
	package)
21
	clean)
24
		export root_fs_path="${clst_chroot_path}/tmp/mergeroot"
22
		exit 0
25
		install -d ${clst_image_path}
26
		${clst_sharedir}/targets/embedded/embedded-fs-runscript.sh ${clst_embedded_fstype} || exit 1
27
	imagesize=`du -sk $clst_image_path/root.img | cut -f1`
28
	echo "Created ${clst_embedded_fstype} image at ${clst_image_path}/root.img"
29
	echo "Image size: ${imagesize}k"
23
	;;
30
	;;
24
	
25
	*)
31
	*)
26
		exit 1
32
		exit 1
27
	;;
33
	;;

Return to bug 67289