blob: 4bfb1619d5db3029e5481652fe84bb231122e67c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
# configuration
# build platform (the host)
BUILD_ARCH=x86_64-pc-linux-gnu
# target architecture
TARGET_ARCH=i486-unknown-linux-gnu
# target cpu
TARGET_CPU=i486
# where to build the cross compiler
CROSS_HOME=/home/cross
# where is/are the cross compiler(s) installed
XTOOLS_HOME=$CROSS_HOME/x-tools
# where is the cross compiler of our target architecture installed
XTOOLS_ARCH=$XTOOLS_HOME/$TARGET_ARCH
# full prefix of the cross compilation tools
XTOOLS_ARCH_PREFIX=$XTOOLS_ARCH/bin/$TARGET_ARCH-
# kernel architecture
KERNEL_ARCH=i386
# the chroot of stage 1
# TODO: rename
STAGE1_CHROOT=$CROSS_HOME/$TARGET_CPU-root
# the place where we build stage 1
# TODO: rename
STAGE1_BUILD=$CROSS_HOME/$TARGET_CPU-build
# where packages are stored for stage 1
# TODO: rename
STAGE1_PACKAGES=$STAGE1_CHROOT/packages/$TARGET_CPU/
# where to store the directory which go to the ISO image
# TODO: rename
STAGE1_ISOLINUX=$CROSS_HOME/isolinux
# where is stage1 installed on the target architecture and reachable
STAGE1_MACHINE_IP=192.168.1.127
# where build results are stored for stage 2
STAGE2_BUILD=$CROSS_HOME/$TARGET_CPU-build-stage2
# the chroot of stage 2 (we don't use it acutally, we use a real
# machine to build the packages on), but it serves as storage
# location of final artifacts)
STAGE2_CHROOT=$CROSS_HOME/$TARGET_CPU-root-stage2
# where packages are stored for stage 2 (on the host)
STAGE2_PACKAGES=$STAGE2_CHROOT/packages/$TARGET_CPU/
# the chroot of stage 3
STAGE3_CHROOT=$CROSS_HOME/$TARGET_CPU-root-stage3
# where packages are stored for stage 3 (on the host)
STAGE3_PACKAGES=$STAGE3_CHROOT/packages/$TARGET_CPU/
# where build results are stored for stage 3
STAGE3_BUILD=$CROSS_HOME/$TARGET_CPU-build-stage3
# the chroot of stage 4
STAGE4_CHROOT=$CROSS_HOME/$TARGET_CPU-root-stage4
# where packages are stored for stage 4 (on the host)
STAGE4_PACKAGES=$STAGE4_CHROOT/packages/$TARGET_CPU/
# where build results are stored for stage 4
STAGE4_BUILD=$CROSS_HOME/$TARGET_CPU-build-stage4
# where to store the directory which go to the ISO image
STAGE4_ISOLINUX=$CROSS_HOME/isolinux-stage4
# the chroot of stage 5
STAGE5_CHROOT=$CROSS_HOME/$TARGET_CPU-root-stage5
# where packages are stored for stage 5 (on the host)
STAGE5_PACKAGES=$STAGE5_CHROOT/packages/$TARGET_CPU/
# where build results are stored for stage 5
STAGE5_BUILD=$CROSS_HOME/$TARGET_CPU-build-stage5
# git repository for PKGBUILD diffs and patches for the
# i686 architecture
GIT_URL_ARCHLINUX32_PACKAGES=https://github.com/archlinux32/packages.git
# the packages32 directory (where GIT_URL_ARCHLINUX32_PACKAGES is checked out)
ARCHLINUX32_PACKAGES=$CROSS_HOME/packages32
# uncomment to debug scripts
#set -x
# some default variables, not to be changed
SCRIPT=$(sudo realpath -s "$0")
SCRIPT_DIR=$(dirname "$SCRIPT")
# CPU we build on
BUILD_CPU=$(uname -m)
# the asp is different per platform
if test $BUILD_CPU = "x86_64"; then
ASP=asp
fi
if test $BUILD_CPU = "i686"; then
ASP=asp32
fi
|