1 |
commit: 98a488a3d379a2e2b2826ceed617c6cd8a3c33ab |
2 |
Author: Yuta SATOH <nigoro <AT> gentoo <DOT> gr <DOT> jp> |
3 |
AuthorDate: Fri Nov 23 12:58:47 2012 +0000 |
4 |
Commit: Yuta SATOH <nigoro.gentoo <AT> 0x100 <DOT> com> |
5 |
CommitDate: Fri Nov 23 12:58:47 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-bsd.git;a=commit;h=98a488a3 |
7 |
|
8 |
gfbsd stages builder, added WORKDATE=remote, local, resume support |
9 |
|
10 |
--- |
11 |
scripts/mkstages/minimal-fbsd-list | 8 +++- |
12 |
scripts/mkstages/stages_builder.sh | 83 ++++++++++++++++++++++++++++-------- |
13 |
2 files changed, 72 insertions(+), 19 deletions(-) |
14 |
|
15 |
diff --git a/scripts/mkstages/minimal-fbsd-list b/scripts/mkstages/minimal-fbsd-list |
16 |
index 2787328..ad8d73c 100644 |
17 |
--- a/scripts/mkstages/minimal-fbsd-list |
18 |
+++ b/scripts/mkstages/minimal-fbsd-list |
19 |
@@ -2,7 +2,9 @@ app-admin/eselect ~x86-fbsd |
20 |
app-arch/libarchive ~x86-fbsd |
21 |
dev-libs/libedit ~x86-fbsd |
22 |
dev-libs/libelf ~x86-fbsd |
23 |
+dev-libs/libexecinfo ~x86-fbsd |
24 |
dev-libs/libiconv ~x86-fbsd |
25 |
+dev-libs/libvolume_id ~x86-fbsd |
26 |
net-misc/openssh ~x86-fbsd |
27 |
sys-apps/baselayout ~x86-fbsd |
28 |
sys-apps/more ~x86-fbsd |
29 |
@@ -15,11 +17,15 @@ sys-freebsd/freebsd-lib ~x86-fbsd |
30 |
sys-freebsd/freebsd-libexec ~x86-fbsd |
31 |
sys-freebsd/freebsd-mk-defs ~x86-fbsd |
32 |
sys-freebsd/freebsd-pam-modules ~x86-fbsd |
33 |
+sys-freebsd/freebsd-pf ~x86-fbsd |
34 |
+sys-freebsd/freebsd-rescue ~x86-fbsd |
35 |
sys-freebsd/freebsd-sbin ~x86-fbsd |
36 |
-sys-freebsd/freebsd-shar ~x86-fbsd |
37 |
sys-freebsd/freebsd-share ~x86-fbsd |
38 |
sys-freebsd/freebsd-sources ~x86-fbsd |
39 |
sys-freebsd/freebsd-ubin ~x86-fbsd |
40 |
sys-freebsd/freebsd-usbin ~x86-fbsd |
41 |
+sys-freebsd/ubin-wrappers ~x86-fbsd |
42 |
+sys-freebsd/virtio-kmod ~x86-fbsd |
43 |
+sys-fs/fuse4bsd ~x86-fbsd |
44 |
sys-process/fuser-bsd ~x86-fbsd |
45 |
sys-process/pidof-bsd ~x86-fbsd |
46 |
|
47 |
diff --git a/scripts/mkstages/stages_builder.sh b/scripts/mkstages/stages_builder.sh |
48 |
index edf4410..51b2721 100755 |
49 |
--- a/scripts/mkstages/stages_builder.sh |
50 |
+++ b/scripts/mkstages/stages_builder.sh |
51 |
@@ -1,18 +1,27 @@ |
52 |
#!/bin/bash |
53 |
export TARGETVER="${TARGETVER:-9.1}" |
54 |
export MKSRC="${MKSRC:-rc3}" |
55 |
-export WORKDATE="`date +%Y%m%d`" |
56 |
+export WORKDATE="${WORKDATE:-local}" |
57 |
export WORKARCH="`uname -m`" |
58 |
OLDVER="${OLDVER:-9.0}" |
59 |
OVERLAY_SNAPSHOT="http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-bsd.git;a=snapshot;h=HEAD;sf=tgz" |
60 |
|
61 |
prepare(){ |
62 |
+ if [ -n "${STABLE}" ] ; then |
63 |
+ local MAJORVER=`echo ${TARGETVER} | awk -F \. '{ print $1 }'` |
64 |
+ fi |
65 |
+ if [ -n "${MAJORVER}" ] ; then |
66 |
+ local CHOSTVER="${MAJORVER}.0" |
67 |
+ else |
68 |
+ local CHOSTVER="${TARGETVER}" |
69 |
+ fi |
70 |
+ |
71 |
if [ "$1" = "x86" ] || [ "${WORKARCH}" = "i386" ] ; then |
72 |
- export CATALYST_CHOST="i686-gentoo-freebsd${TARGETVER}" |
73 |
+ export CATALYST_CHOST="i686-gentoo-freebsd${CHOSTVER}" |
74 |
export TARGETARCH="x86" |
75 |
export TARGETSUBARCH="i686" |
76 |
else |
77 |
- export CATALYST_CHOST="x86_64-gentoo-freebsd${TARGETVER}" |
78 |
+ export CATALYST_CHOST="x86_64-gentoo-freebsd${CHOSTVER}" |
79 |
export TARGETARCH="amd64" |
80 |
export TARGETSUBARCH="amd64" |
81 |
fi |
82 |
@@ -93,17 +102,46 @@ prepare(){ |
83 |
ls -1 /usr/portage/sys-freebsd/freebsd-lib/freebsd-lib-${TARGETVER}*.ebuild > /dev/null 2>&1 |
84 |
if [ $? -eq 0 ] ; then |
85 |
create_manifest /usr/portage/sys-freebsd |
86 |
+ export WORKDATE="local" |
87 |
fi |
88 |
create_manifest ${WORKDIR}/portage.bsd-overlay/sys-freebsd |
89 |
fi |
90 |
|
91 |
+ if [ "${WORKDATE}" = "remote" ] ; then |
92 |
+ wget -q -O ${WORKDIR}/snapshot_list.html http://distfiles.gentoo.org/snapshots/ |
93 |
+ export WORKDATE=`grep -e 'portage-[0-9]\+.*bz2' ${WORKDIR}/snapshot_list.html | tail -n 1 | gsed 's:.*portage-\([0-9]\+\).*:\1:g'` |
94 |
+ mkdir -p /var/tmp/catalyst/snapshots |
95 |
+ if [ ! -e "/var/tmp/catalyst/snapshots/portage-${WORKDATE}.tar.bz2" ] ; then |
96 |
+ wget -q -P /var/tmp/catalyst/snapshots "http://distfiles.gentoo.org/snapshots/portage-${WORKDATE}.tar.bz2" |
97 |
+ if [ $? -ne 0 ] ; then |
98 |
+ export WORKDATE="`date +%Y%m%d`" |
99 |
+ fi |
100 |
+ fi |
101 |
+ elif [ "${WORKDATE}" = "resume" ] ; then |
102 |
+ ls -1 /var/tmp/catalyst/snapshots/*bz2 > /dev/null 2>&1 |
103 |
+ if [ $? -eq 0 ] ; then |
104 |
+ export WORKDATE="`ls -1 /var/tmp/catalyst/snapshots/*bz2 | tail -n 1 | gsed 's:.*portage-\([0-9]\+\).*:\1:g'`" |
105 |
+ else |
106 |
+ export WORKDATE="`date +%Y%m%d`" |
107 |
+ fi |
108 |
+ else |
109 |
+ export WORKDATE="`date +%Y%m%d`" |
110 |
+ fi |
111 |
+ |
112 |
if [ -n "${STABLE}" ] ; then |
113 |
echo "create stages, mixed stable ${TARGETARCH} and minimal ${TARGETARCH}-fbsd flag on" |
114 |
mkdir -p ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile |
115 |
cp -a ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/minimal-fbsd-list ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/package.keywords |
116 |
- echo "ACCEPT_KEYWORDS=\"-${TARGETARCH}-fbsd -~${TARGETARCH}-fbsd ${TARGETARCH}\"" > ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile/make.defaults |
117 |
+ echo "ACCEPT_KEYWORDS=\"-${TARGETARCH}-fbsd -~${TARGETARCH}-fbsd ${TARGETARCH}\"" >> ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile/make.defaults |
118 |
+ echo "CHOST=\"${CATALYST_CHOST}\"" >> ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile/make.defaults |
119 |
echo "FEATURES=\"preserve-libs\"" >> ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile/make.defaults |
120 |
- echo "sys-apps/portage python3" > ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/package.use |
121 |
+ echo "sys-apps/portage python2" >> ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/package.use |
122 |
+ |
123 |
+ #fixes bug 443810 |
124 |
+ grep "app-editors/nano" /usr/portage/profiles/default/bsd/fbsd/packages > /dev/null 2>&1 |
125 |
+ if [ $? -ne 0 ] ; then |
126 |
+ echo "*app-editors/nano" >> ${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage/profile/packages |
127 |
+ fi |
128 |
fi |
129 |
} |
130 |
|
131 |
@@ -201,24 +239,29 @@ run_catalyst() { |
132 |
local C_APPEND_VERSION="$3" |
133 |
local C_APPEND_OPT="" |
134 |
|
135 |
- if [ "${C_TARGET}" != "stage3" ] ; then |
136 |
- C_APPEND_OPT="${C_APPEND_OPT} chost=${CATALYST_CHOST}" |
137 |
- fi |
138 |
- if [ -n "${STABLE}" ] ; then |
139 |
- C_APPEND_OPT="${C_APPEND_OPT} portage_confdir=${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage" |
140 |
- fi |
141 |
+ if [ ! -e /var/tmp/catalyst/builds/default/${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}.tar.bz2 ] ; then |
142 |
+ if [ "${C_TARGET}" != "stage3" ] ; then |
143 |
+ C_APPEND_OPT="${C_APPEND_OPT} chost=${CATALYST_CHOST}" |
144 |
+ fi |
145 |
+ if [ -n "${STABLE}" ] ; then |
146 |
+ C_APPEND_OPT="${C_APPEND_OPT} portage_confdir=${WORKDIR}/portage.bsd-overlay/scripts/mkstages/etc/portage" |
147 |
+ fi |
148 |
|
149 |
- catalyst -C target=${C_TARGET} version_stamp=fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION} profile=default/bsd/fbsd/${TARGETARCH}/${TARGETVER} snapshot=${WORKDATE} source_subpath=default/${C_SOURCE} subarch=${TARGETSUBARCH} rel_type=default portage_overlay=${WORKDIR}/portage.bsd-overlay ${C_APPEND_OPT} |
150 |
+ catalyst -C target=${C_TARGET} version_stamp=fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION} profile=default/bsd/fbsd/${TARGETARCH}/${TARGETVER} snapshot=${WORKDATE} source_subpath=default/${C_SOURCE} subarch=${TARGETSUBARCH} rel_type=default portage_overlay=${WORKDIR}/portage.bsd-overlay ${C_APPEND_OPT} |
151 |
|
152 |
- if [ $? -ne 0 ] ; then |
153 |
- check_ecompressdir "${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}/usr/local/portage" |
154 |
if [ $? -ne 0 ] ; then |
155 |
- catalyst -C target=${C_TARGET} version_stamp=fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION} profile=default/bsd/fbsd/${TARGETARCH}/${TARGETVER} snapshot=${WORKDATE} source_subpath=default/${C_SOURCE} subarch=${TARGETSUBARCH} rel_type=default portage_overlay=${WORKDIR}/portage.bsd-overlay ${C_APPEND_OPT} || exit 1 |
156 |
+ check_ecompressdir "${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}/usr/local/portage" |
157 |
+ if [ $? -ne 0 ] ; then |
158 |
+ catalyst -C target=${C_TARGET} version_stamp=fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION} profile=default/bsd/fbsd/${TARGETARCH}/${TARGETVER} snapshot=${WORKDATE} source_subpath=default/${C_SOURCE} subarch=${TARGETSUBARCH} rel_type=default portage_overlay=${WORKDIR}/portage.bsd-overlay ${C_APPEND_OPT} || exit 1 |
159 |
+ fi |
160 |
fi |
161 |
- fi |
162 |
|
163 |
- if [ ! -e /var/tmp/catalyst/builds/default/${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}.tar.bz2 ] ; then |
164 |
- exit 1 |
165 |
+ if [ ! -e /var/tmp/catalyst/builds/default/${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}.tar.bz2 ] ; then |
166 |
+ exit 1 |
167 |
+ fi |
168 |
+ else |
169 |
+ echo "${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}.tar.bz2 is exist." |
170 |
+ echo "skip the creation of ${C_TARGET}-${TARGETSUBARCH}-fbsd-${TARGETVER}-${WORKDATE}${C_APPEND_VERSION}" |
171 |
fi |
172 |
} |
173 |
|
174 |
@@ -248,6 +291,10 @@ mk_stages() { |
175 |
|
176 |
} |
177 |
|
178 |
+if [ -e /etc/catalyst/catalystrc ] ; then |
179 |
+ source /etc/catalyst/catalystrc |
180 |
+fi |
181 |
+ |
182 |
prepare $1 |
183 |
|
184 |
if [ ! -e "/var/tmp/catalyst/snapshots/portage-${WORKDATE}.tar.bz2" ] ; then |