aboutsummaryrefslogtreecommitdiffstats
path: root/tools/scripts/install_sdk
blob: 7de60230f669c9a60ff55b13d004014e5647b2d3 (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
#!/bin/bash

INSTALLER=$1
[[ -f $INSTALLER ]] || { echo "Usage: $(basename $0) <sdk_installer>" >&2; exit 1; }

. /etc/xdtrc

# run the snapshot build procedure 
rm -rf $XDT_SDK &>/dev/null || { echo "$XDT_SDK already exists but can't be removed. Using sudo..."; sudo rm -rf $XDT_SDK || exit 1 ; }
mkdir -p $XDT_SDK 2>/dev/null || { echo "Giving rights on /xdt to $USER"; sudo chown -R $DEVUSER:$DEVUSER $XDT_DIR; mkdir -p $XDT_SDK; }
$INSTALLER -y -d $XDT_SDK

#### create a link at SDK default location
# extract script part of installer
offset=$(grep -na -m1 "^MARKER:$" $INSTALLER | cut -d':' -f1)
eval $(head -n $offset $INSTALLER | grep ^DEFAULT_INSTALL_DIR= )

PARENT_INSTALL_DIR=$(dirname $DEFAULT_INSTALL_DIR)

mkdir -p $PARENT_INSTALL_DIR 2>/dev/null || sudo mkdir -p $PARENT_INSTALL_DIR
ln -sf $XDT_SDK $DEFAULT_INSTALL_DIR 2>/dev/null || sudo ln -sf $XDT_SDK $DEFAULT_INSTALL_DIR


# remove proprietary files installed in /usr/local/ (arm sysroot)
rm -rfv $XDT_SDK/sysroots/cortex*/usr/local

# cleanup
pushd $XDT_SDK/sysroots/*-poky-*

	find . -type d -name "*.debug" | while read dir; do
		echo "Removing debug dir: $dir"
		rm -rf $dir
	done

	echo "Removing sources in /usr/src"
	rm -rf usr/src

	for dir in bin sbin usr/bin usr/local/bin usr/sbin; do
		echo "Removing binaries in $dir"
		find $dir -type f -exec file -i '{}' \; | grep 'x-executable;' | grep 'charset=binary' | cut -f1 -d':' | while read file; do
			rm -fv $file
		done
	done

popd