-
Notifications
You must be signed in to change notification settings - Fork 16
/
6.20-chroot_ncurses.sh
104 lines (86 loc) · 2.89 KB
/
6.20-chroot_ncurses.sh
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
#!/bin/bash
CHAPTER_SECTION=20
INSTALL_NAME=ncurses
echo ""
echo "### ---------------------------"
echo "### NCURSES ###"
echo "### CHAPTER 6.$CHAPTER_SECTION ###"
echo "### Ncurses-6.0"
echo "### Must be run as \"chroot\" user"
echo ""
echo "### Time estimate:"
echo "### real 0m48.676s"
echo "### user 0m32.802s"
echo "### sys 0m5.680s"
echo "### ---------------------------"
echo ""
echo "... Loading commun functions and variables"
if [ ! -f ./script-all_commun-functions.sh ]
then
echo "!! Fatal Error 1: './script-all_commun-functions.sh' not found."
exit 1
fi
source ./script-all_commun-functions.sh
if [ ! -f ./script-all_commun-variables.sh ]
then
echo "!! Fatal Error 1: './script-all_commun-variables.sh' not found."
exit 1
fi
source ./script-all_commun-variables.sh
echo ""
echo "... Validating the environment"
is_user root
check_chroot
echo ""
echo "... Setup building environment"
LOG_FILE=$LFS_BUILD_LOGS_6$CHAPTER_SECTION-$INSTALL_NAME
cd /sources
check_tarball_uniqueness
extract_tarball
cd $(ls -d /sources/$INSTALL_NAME*/)
echo ""
echo "... Installation starts now"
time {
echo ".... Pre-Configuring $SOURCE_FILE_NAME"
sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in
echo ".... Configuring $SOURCE_FILE_NAME"
./configure \
--prefix=/usr \
--mandir=/usr/share/man \
--with-shared \
--without-debug \
--without-normal \
--enable-pc-files \
--enable-widec \
&> $LOG_FILE-configure.log
echo ".... Making $SOURCE_FILE_NAME"
make $PROCESSOR_CORES &> $LOG_FILE-make.log
echo ".... Installing $SOURCE_FILE_NAME"
make install $PROCESSOR_CORES &> $LOG_FILE-make-install.log
echo ".... Post-Installing $SOURCE_FILE_NAME"
mv -v /usr/lib/libncursesw.so.6* /lib &> $LOG_FILE-post-install.log
ln -sfv ../../lib/$(readlink /usr/lib/libncursesw.so) /usr/lib/libncursesw.so &>> $LOG_FILE-post-install.log
for lib in ncurses form panel menu ; do
rm -vf /usr/lib/lib${lib}.so &>> $LOG_FILE-post-install.log
echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
ln -sfv ${lib}w.pc /usr/lib/pkgconfig/${lib}.pc &>> $LOG_FILE-post-install.log
done
ln -sfv libncurses++w.a /usr/lib/libncurses++.a &>> $LOG_FILE-post-install.log
rm -vf /usr/lib/libcursesw.so &>> $LOG_FILE-post-install.log
echo "INPUT(-lncursesw)" > /usr/lib/libcursesw.so
ln -sfv libncurses.so /usr/lib/libcurses.so
mkdir -v /usr/share/doc/ncurses-6.0 &>> $LOG_FILE-post-install.log
cp -v -R doc/* /usr/share/doc/ncurses-6.0 &>> $LOG_FILE-post-install.log
}
echo ""
echo "... Cleaning up $SOURCE_FILE_NAME"
cd /sources
[ ! $SHOULD_NOT_CLEAN ] && rm -rf $(ls -d /sources/$INSTALL_NAME*/)
get_build_errors_6
echo ""
echo "######### END OF CHAPTER 6.$CHAPTER_SECTION ########"
echo "///// HUMAN REQUIRED \\\\\\\\\\\\\\\\\\\\"
echo "### Please run the next step:"
echo "### ./6.21-chroot_attr.sh"
echo ""
exit