/[d-i]/trunk/scripts/buildscript
ViewVC logotype

Contents of /trunk/scripts/buildscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 12374 - (hide annotations) (download)
Fri Apr 2 19:27:24 2004 UTC (9 years, 1 month ago) by ths-guest
File size: 4566 byte(s)
Build dir for choose-mirror moved.
1 ths-guest 10387 #! /bin/sh
2     #
3     # Build debian-installer packages.
4    
5     # First, some shell functions.
6    
7     # build debs and udebs
8     build ()
9     {
10     local _dir=$1
11     local _pkg=$(grep -sh "^Package: " ${_dir}/debian/control |sed -e 's/^Package: //' |xargs echo -n)
12     [ -n "$ROOTCMD" ] && local _rootcmd="-r$ROOTCMD"
13    
14     pushd $_dir >/dev/null
15     for i in ${_pkg}; do
16     rm -f ../${i}*.*
17     done
18     dpkg-buildpackage -b -us -uc $_rootcmd #-nc
19     popd >/dev/null
20     return 0
21     }
22    
23     # install debs
24     install_deb ()
25     {
26     local _dir=$1
27    
28     shift
29     pushd $_dir >/dev/null
30     while [ ${#} -ne 0 ]; do
31     [ -f ${1}_*_${ARCH}.deb ] && $REALROOTCMD dpkg -i ${1}_*_${ARCH}.deb
32     [ -f ${1}_*_all.deb ] && $REALROOTCMD dpkg -i ${1}_*_all.deb
33     shift
34     done
35     popd >/dev/null
36     return 0
37     }
38    
39 ths-guest 11687 # copy sucessfully built udebs into installer/build/localudebs
40 ths-guest 10387 supply_udeb ()
41     {
42     local _dir=$1
43     local _pkg=$(grep -sh "^Package: " ${_dir}/debian/control |sed -e 's/^Package: //' |xargs echo -n)
44     for i in ${_pkg}; do
45     [ -f ${_dir}/../${i}_*_${ARCH}.udeb ] && {
46 ths-guest 11687 rm -f installer/build/localudebs/${i}_*_${ARCH}.udeb
47     cp -f ${_dir}/../${i}_*_${ARCH}.udeb installer/build/localudebs/
48 ths-guest 10387 }
49     [ -f ${_dir}/../${i}_*_all.udeb ] && {
50 ths-guest 11687 rm -f installer/build/localudebs/${i}_*_all.udeb
51     cp -f ${_dir}/../${i}_*_all.udeb installer/build/localudebs/
52 ths-guest 10387 }
53     done
54     return 0
55     }
56    
57     # Iterate over subdirs.
58     do_subdir ()
59     {
60     while [ $# -ge 1 ]; do
61     [ -d $1 ] && {
62     build $1
63     supply_udeb $1
64     }
65     shift
66     done
67     return 0
68     }
69    
70     # Guess what.
71     usage ()
72     {
73     echo "Usage: $0 [-r root_command] [-rr real_root_command]"
74     exit 1
75     }
76    
77     # Here we go.
78     #set -x
79     set -e
80    
81     MAKETARGET=all_images
82    
83     while [ ${#} -ge 1 ]; do
84     case "$1" in
85     -r)
86     ROOTCMD=$2
87     shift
88     ;;
89     -rr)
90     REALROOTCMD=$2
91     shift
92     ;;
93     esac
94     shift
95     done
96    
97     # directory sanity check
98 ths-guest 11687 [ -d installer/build/pkg-lists ] || { echo "Not in source dir"; exit 1; }
99 ths-guest 10387
100     [ -z "$REALROOTCMD" ] && REALROOTCMD=$ROOTCMD
101    
102     ARCH="$(dpkg-architecture -qDEB_BUILD_ARCH)"
103    
104     # Build and install packages with debs first, others build-depend on it.
105     #
106 ths-guest 11772 build packages/packages-build
107     install_deb packages di-packages-build
108 ths-guest 10387
109     # build d-i library
110 ths-guest 11772 build packages/libdebian-installer
111     install_deb packages libdebian-installer4 libdebian-installer-extra4 libdebian-installer4-dev
112 ths-guest 11774 supply_udeb packages/libdebian-installer
113 ths-guest 10387
114     # build cdebconf
115 ths-guest 11772 build packages/cdebconf
116     install_deb packages libdebconfclient0 libdebconfclient0-dev
117     supply_udeb packages/cdebconf
118 ths-guest 10387
119 ths-guest 10936 # build kernel-wedge
120 ths-guest 11772 build packages/kernel/kernel-wedge
121     install_deb packages/kernel kernel-wedge
122 ths-guest 10936
123 ths-guest 10387 # Build all other udebs.
124 ths-guest 11772 do_subdir packages/kernel/linux-kernel-di-$ARCH
125 ths-guest 10387
126 ths-guest 11772 do_subdir packages/partman/partman packages/partman/partman-auto \
127     packages/partman/partman-basicfilesystems \
128     packages/partman/partman-basicmethods \
129     packages/partman/partman-ext3 packages/partman/partman-lvm \
130     packages/partman/partman-reiserfs packages/partman/partman-xfs \
131     packages/partman/partman-partitioning \
132     packages/partman/partman-target
133 ths-guest 10387
134 ths-guest 11772 [ "$ARCH" = "hppa" ] && do_subdir packages/partman/partman-palo
135 ths-guest 10387
136 ths-guest 12374 do_subdir packages/retriever/cdrom \
137 ths-guest 11772 packages/retriever/floppy packages/retriever/net
138 ths-guest 10387
139 ths-guest 11772 do_subdir packages/anna packages/autopartkit packages/base-installer \
140     packages/baseconfig-udeb packages/bterm-unifont \
141     packages/bugreporter-udeb packages/cdrom-checker \
142 ths-guest 12374 packages/cdrom-detect packages/choose-mirror \
143     packages/countrychooser \
144 ths-guest 11772 packages/ddetect packages/debian-installer-utils \
145     packages/iso-scan packages/kbd-chooser \
146     packages/languagechooser packages/lowmem \
147     packages/lvmcfg packages/main-menu packages/netcfg packages/nobootloader \
148     packages/partconf packages/partitioner \
149     packages/prebaseconfig packages/rootskel packages/udpkg \
150     packages/usb-discover packages/userdevfs
151 ths-guest 10387
152     # Arch dependent udebs, which may not build cleanly elsewhere.
153 ths-guest 11772 [ "$ARCH" = "alpha" ] && do_subdir packages/arch/alpha/aboot-installer \
154     packages/arch/alpha/srm-reader
155     [ "$ARCH" = "powerpc" ] && do_subdir packages/arch/powerpc/yaboot-installer
156     [ "$ARCH" = "hppa" ] && do_subdir packages/arch/hppa/palo-installer
157     [ "$ARCH" = "i386" ] && do_subdir packages/arch/i386/grub-installer \
158     packages/arch/i386/lilo-installer
159     [ "$ARCH" = "ia64" ] && do_subdir packages/arch/ia64/efi-reader \
160     packages/arch/ia64/elilo-installer
161     [ "$ARCH" = "mips" ] && do_subdir packages/arch/mips/arcboot-installer
162     [ "$ARCH" = "mipsel" ] && do_subdir packages/arch/mipsel/delo-installer
163     [ "$ARCH" = "s390" ] && do_subdir packages/arch/s390/dasd \
164     packages/arch/s390/netdevice packages/arch/s390/zipl-installer
165     [ "$ARCH" = "sparc" ] && do_subdir packages/arch/sparc/silo-installer
166 ths-guest 10387
167     # Build the installer boot image.
168 ths-guest 11687 build installer
169 ths-guest 10387
170     exit 0

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.5