Changes On Branch add-powerpc

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch add-powerpc Excluding Merge-Ins

This is equivalent to a diff from e451592ac8 to cda986483e

2016-12-21
19:53
Added support for SHA256 checksums check-in: 8e05e7b5e2 user: rkeene tags: trunk
2016-11-09
23:40
Added start of powerpc support from stage1 Leaf check-in: cda986483e user: rkeene tags: add-powerpc
2016-01-27
04:00
Build-CC 0.12 check-in: e451592ac8 user: rkeene tags: trunk, 0.12
03:57
Added support for using a helper application to download files check-in: 94769f000a user: rkeene tags: trunk

Changes to build-cc.

65
66
67
68
69
70
71

72
73
74
75
76
77
78
### Determine list of platforms
platforms=(
	armel-generic-linux-uclibc
	mipsel-generic-linux-uclibc
	mips-generic-linux-musl
	x86_64-generic-linux-musl
	x86_64-generic-linux-gnu

)

untested_platforms=(
	powerpc-generic-linux-gnu
	powerpc-generic-linux-uclibc
	mips64-ubnt-linux-gnu
)







>







65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
### Determine list of platforms
platforms=(
	armel-generic-linux-uclibc
	mipsel-generic-linux-uclibc
	mips-generic-linux-musl
	x86_64-generic-linux-musl
	x86_64-generic-linux-gnu
	powerpc-generic-linux-gnu
)

untested_platforms=(
	powerpc-generic-linux-gnu
	powerpc-generic-linux-uclibc
	mips64-ubnt-linux-gnu
)

Changes to scripts/common.

60
61
62
63
64
65
66

67
68
69
70
71
72
73
#    CCNAME
#    PREFIX
function multilib () {
	local arch
	local mode
	local archs host libdir cflags
	local addprefix


	mode='cflags'

	if [ "$1" = '--libdir' ]; then
		mode='libdir'

		shift







>







60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#    CCNAME
#    PREFIX
function multilib () {
	local arch
	local mode
	local archs host libdir cflags
	local addprefix
	local hostCode

	mode='cflags'

	if [ "$1" = '--libdir' ]; then
		mode='libdir'

		shift
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116

	# If no architecture is given, return the list of architectures
	if [ -z "${arch}" ]; then
		mode='list'
	else
		cflags=""
		if [ "${arch}" != '_' ]; then
			cflags="${arch}"
		fi
	fi

	case "${mode}" in
		list)
			archs="$(${CC} -print-multi-lib | grep -v '^[^;]*/' | sed 's/^.*;//;s/^@/-/;s@^ *$@_@')"
			if [ -z "${archs}" ]; then
				archs='_'
			fi

			echo "${archs}"

			return 0







|





|







97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117

	# If no architecture is given, return the list of architectures
	if [ -z "${arch}" ]; then
		mode='list'
	else
		cflags=""
		if [ "${arch}" != '_' ]; then
			cflags="$(echo "${arch}" | sed 's@_@ @g')"
		fi
	fi

	case "${mode}" in
		list)
			archs="$(${CC} -print-multi-lib | grep -v '^[^;]*/' | sed 's/^.*;//;s/@/ -/g;s@^ *$@_@;s@^  *@@;s@  *$@@;s@  *@_@g')"
			if [ -z "${archs}" ]; then
				archs='_'
			fi

			echo "${archs}"

			return 0
130
131
132
133
134
135
136

137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153

154
155
156
157
158
159
160
161
			libdir="$(cd "${libdir}" && pwd)" || exit 1

			if [ "${addprefix}" = '0' ]; then
				libdir="$(echo "${libdir}" | sed 's@^'"${PREFIX}"'/@/@')"
			fi

			echo "${libdir}"


			return 0
			;;
		host)
			if [ "${arch}" = '_' ]; then
				echo "${CCNAME}"
				return 0
			fi

			case "${arch}" in
				-m32)
					host="$(echo "${CCNAME}" | sed 's@^x86_64-@i486-@;s@^sparcv9-@sparc-@')"
					;;
				-m64)
					host="$(echo "${CCNAME}" | sed 's@^i.86-@x86_64-@;s@-x32-@-@;s@^x32-@x86_64-@;s@^sparc-@sparcv9-@')"
					;;
				*)

					host="${CCNAME}.${arch}"
					;;
			esac

			echo "${host}"

			return 0
			;;







>

















>
|







131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
			libdir="$(cd "${libdir}" && pwd)" || exit 1

			if [ "${addprefix}" = '0' ]; then
				libdir="$(echo "${libdir}" | sed 's@^'"${PREFIX}"'/@/@')"
			fi

			echo "${libdir}"
			echo "${libdir}" >> /tmp/libdir.log 

			return 0
			;;
		host)
			if [ "${arch}" = '_' ]; then
				echo "${CCNAME}"
				return 0
			fi

			case "${arch}" in
				-m32)
					host="$(echo "${CCNAME}" | sed 's@^x86_64-@i486-@;s@^sparcv9-@sparc-@')"
					;;
				-m64)
					host="$(echo "${CCNAME}" | sed 's@^i.86-@x86_64-@;s@-x32-@-@;s@^x32-@x86_64-@;s@^sparc-@sparcv9-@')"
					;;
				*)
					hostCode="$(echo "${arch}" | openssl dgst -md5 | sed 's@.*= *@@')"
					host="$(echo "${CCNAME}" | sed 's@-generic-@-md5'"${hostCode}"'-@g')"
					;;
			esac

			echo "${host}"

			return 0
			;;
177
178
179
180
181
182
183



184
		;;
	sparc*)
		arch=sparc
		;;
	i?86)
		arch=i386
		;;



esac







>
>
>

180
181
182
183
184
185
186
187
188
189
190
		;;
	sparc*)
		arch=sparc
		;;
	i?86)
		arch=i386
		;;
	powerpc*)
		arch=powerpc
		;;
esac

Changes to scripts/post/02-glibc.

1
2
3
4
5
6
7
8
9
10
11
12
#! /bin/bash

# URLs and versions
if [ -z "${GLIBC_VERS}" ]; then
	GLIBC_VERS='2.22'
fi
GLIBC_URL="http://ftp.gnu.org/gnu/glibc/glibc-${GLIBC_VERS}.tar.gz"
GLIBC_TARBALL="src/glibc-${GLIBC_VERS}.tar.gz"
GLIBC_DIR="glibc-${GLIBC_VERS}"

if [ -z "${GLIBC_PORTS_VERS}" ]; then
	GLIBC_PORTS_VERS='2.16.0'




|







1
2
3
4
5
6
7
8
9
10
11
12
#! /bin/bash

# URLs and versions
if [ -z "${GLIBC_VERS}" ]; then
	GLIBC_VERS='2.23'
fi
GLIBC_URL="http://ftp.gnu.org/gnu/glibc/glibc-${GLIBC_VERS}.tar.gz"
GLIBC_TARBALL="src/glibc-${GLIBC_VERS}.tar.gz"
GLIBC_DIR="glibc-${GLIBC_VERS}"

if [ -z "${GLIBC_PORTS_VERS}" ]; then
	GLIBC_PORTS_VERS='2.16.0'