OLD | NEW |
1 #!/bin/bash -e | 1 #!/bin/bash -e |
2 | 2 |
3 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 # Script to install everything needed to build chromium (well, ideally, anyway) | 7 # Script to install everything needed to build chromium (well, ideally, anyway) |
8 # See http://code.google.com/p/chromium/wiki/LinuxBuildInstructions | 8 # See http://code.google.com/p/chromium/wiki/LinuxBuildInstructions |
9 # and http://code.google.com/p/chromium/wiki/LinuxBuild64Bit | 9 # and http://code.google.com/p/chromium/wiki/LinuxBuild64Bit |
10 | 10 |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 sudo mv /usr/bin/ld /usr/bin/ld.orig | 122 sudo mv /usr/bin/ld /usr/bin/ld.orig |
123 sudo strip /usr/local/gold/bin/ld | 123 sudo strip /usr/local/gold/bin/ld |
124 sudo ln -fs /usr/local/gold/bin/ld /usr/bin/ld.gold | 124 sudo ln -fs /usr/local/gold/bin/ld /usr/bin/ld.gold |
125 sudo ln -fs /usr/bin/ld.gold /usr/bin/ld | 125 sudo ln -fs /usr/bin/ld.gold /usr/bin/ld |
126 else | 126 else |
127 echo "make install failed, not installing gold" | 127 echo "make install failed, not installing gold" |
128 fi | 128 fi |
129 } | 129 } |
130 | 130 |
131 if ! egrep -q \ | 131 if ! egrep -q \ |
132 'Ubuntu (8\.04|8\.10|9\.04|9\.10|10\.04|10\.10|karmic|lucid|maverick)' \ | 132 'Ubuntu (10\.04|10\.10|11\.04|lucid|maverick|natty)' \ |
133 /etc/issue; then | 133 /etc/issue; then |
134 echo "Only Ubuntu 8.04 (hardy) through 10.10 (maverick) are currently" \ | 134 echo "Only Ubuntu 10.04 (lucid) through 11.04 (natty) are currently" \ |
135 "supported" >&2 | 135 "supported" >&2 |
136 exit 1 | 136 exit 1 |
137 fi | 137 fi |
138 | 138 |
139 if ! uname -m | egrep -q "i686|x86_64"; then | 139 if ! uname -m | egrep -q "i686|x86_64"; then |
140 echo "Only x86 architectures are currently supported" >&2 | 140 echo "Only x86 architectures are currently supported" >&2 |
141 exit | 141 exit |
142 fi | 142 fi |
143 | 143 |
144 if [ "x$(id -u)" != x0 ]; then | 144 if [ "x$(id -u)" != x0 ]; then |
145 echo "Running as non-root user." | 145 echo "Running as non-root user." |
146 echo "You might have to enter your password one or more times for 'sudo'." | 146 echo "You might have to enter your password one or more times for 'sudo'." |
147 echo | 147 echo |
148 fi | 148 fi |
149 | 149 |
150 # Packages needed for chromeos only | 150 # Packages needed for chromeos only |
151 chromeos_dev_list="libpulse-dev" | 151 chromeos_dev_list="libpulse-dev" |
152 | 152 |
153 # Packages need for development | 153 # Packages need for development |
154 dev_list="bison fakeroot flex g++ gperf libapache2-mod-php5 libasound2-dev | 154 dev_list="apache2.2-bin bison fakeroot flex g++ gperf libapache2-mod-php5 |
155 libbz2-dev libcairo2-dev libdbus-glib-1-dev libgconf2-dev | 155 libasound2-dev libbz2-dev libcairo2-dev |
| 156 libdbus-glib-1-dev libgconf2-dev |
156 libgl1-mesa-dev libglu1-mesa-dev libglib2.0-dev libgnome-keyring-dev | 157 libgl1-mesa-dev libglu1-mesa-dev libglib2.0-dev libgnome-keyring-dev |
157 libgtk2.0-dev libjpeg62-dev libnspr4-dev libnss3-dev libpam0g-dev | 158 libgtk2.0-dev libjpeg62-dev libnspr4-dev libnss3-dev libpam0g-dev |
158 libsctp-dev libsqlite3-dev libxslt1-dev libxss-dev libxtst-dev | 159 libsctp-dev libsqlite3-dev libxslt1-dev libxss-dev libxtst-dev |
159 mesa-common-dev msttcorefonts patch perl php5-cgi pkg-config python | 160 mesa-common-dev msttcorefonts patch perl php5-cgi pkg-config python |
160 python-dev rpm subversion ttf-dejavu-core ttf-kochi-gothic | 161 python-dev rpm subversion ttf-dejavu-core ttf-kochi-gothic |
161 ttf-kochi-mincho wdiff libcurl4-gnutls-dev ttf-indic-fonts | 162 ttf-kochi-mincho wdiff libcurl4-gnutls-dev ttf-indic-fonts |
162 ttf-thai-tlwg | 163 ttf-thai-tlwg |
163 $chromeos_dev_list" | 164 $chromeos_dev_list" |
164 | 165 |
165 # Run-time libraries required by chromeos only | 166 # Run-time libraries required by chromeos only |
166 chromeos_lib_list="libpulse0 libbz2-1.0 libcurl4-gnutls-dev" | 167 chromeos_lib_list="libpulse0 libbz2-1.0 libcurl4-gnutls-dev" |
167 | 168 |
168 # Full list of required run-time libraries | 169 # Full list of required run-time libraries |
169 lib_list="libatk1.0-0 libc6 libasound2 libcairo2 libdbus-glib-1-2 libexpat1 | 170 lib_list="libatk1.0-0 libc6 libasound2 libcairo2 libdbus-glib-1-2 libexpat1 |
170 libfontconfig1 libfreetype6 libglib2.0-0 libgnome-keyring0 libgtk2.0-0 | 171 libfontconfig1 libfreetype6 libglib2.0-0 libgnome-keyring0 libgtk2.0-0 |
171 libnspr4-0d libnss3-1d libpam0g libpango1.0-0 libpcre3 libpixman-1-0 | 172 libpam0g libpango1.0-0 libpcre3 libpixman-1-0 |
172 libpng12-0 libstdc++6 libsqlite3-0 libx11-6 libxau6 libxcb1 | 173 libpng12-0 libstdc++6 libsqlite3-0 libx11-6 libxau6 libxcb1 |
173 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 | 174 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 |
174 libxi6 libxinerama1 libxrandr2 libxrender1 libxtst6 zlib1g | 175 libxi6 libxinerama1 libxrandr2 libxrender1 libxtst6 zlib1g |
175 $chromeos_lib_list" | 176 $chromeos_lib_list" |
176 | 177 |
177 # Debugging symbols for all of the run-time libraries | 178 # Debugging symbols for all of the run-time libraries |
178 dbg_list="libatk1.0-dbg libc6-dbg libcairo2-dbg | 179 dbg_list="libatk1.0-dbg libc6-dbg libcairo2-dbg |
179 libfontconfig1-dbg libglib2.0-0-dbg libgtk2.0-0-dbg libnspr4-0d-dbg | 180 libfontconfig1-dbg libglib2.0-0-dbg libgtk2.0-0-dbg |
180 libnss3-1d-dbg libpango1.0-0-dbg libpcre3-dbg libpixman-1-0-dbg | 181 libpango1.0-0-dbg libpcre3-dbg libpixman-1-0-dbg |
181 libsqlite3-0-dbg | 182 libsqlite3-0-dbg |
182 libx11-6-dbg libxau6-dbg libxcb1-dbg libxcomposite1-dbg | 183 libx11-6-dbg libxau6-dbg libxcb1-dbg libxcomposite1-dbg |
183 libxcursor1-dbg libxdamage1-dbg libxdmcp6-dbg libxext6-dbg | 184 libxcursor1-dbg libxdamage1-dbg libxdmcp6-dbg libxext6-dbg |
184 libxfixes3-dbg libxi6-dbg libxinerama1-dbg libxrandr2-dbg | 185 libxfixes3-dbg libxi6-dbg libxinerama1-dbg libxrandr2-dbg |
185 libxrender1-dbg libxtst6-dbg zlib1g-dbg" | 186 libxrender1-dbg libxtst6-dbg zlib1g-dbg" |
186 | 187 |
187 # CUPS package changed its name from hardy to the next version. Include | 188 # Some NSS packages were renamed in Natty. |
188 # proper package here depending on the system. | 189 if egrep -q 'Ubuntu (10\.04|10\.10)' /etc/issue; then |
189 if egrep -q 'Ubuntu (8\.04|8\.10)' /etc/issue; then | 190 dbg_list="${dbg_list} libnspr4-0d-dbg libnss3-1d-dbg" |
190 dev_list="${dev_list} libcupsys2-dev" | 191 lib_list="${lib_list} libnspr4-0d libnss3-1d" |
191 else | 192 else |
192 dev_list="${dev_list} libcups2-dev" | 193 dbg_list="${dbg_list} libnspr4-dbg libnss3-dbg" |
193 fi | 194 lib_list="${lib_list} libnspr4 libnss3" |
194 | |
195 # apache2.2-bin package was introduced in karmic. | |
196 if egrep -q 'Ubuntu (8\.04|8\.10|9\.04)' /etc/issue; then | |
197 dev_list="${dev_list} apache2" | |
198 else | |
199 dev_list="${dev_list} apache2.2-bin" | |
200 fi | 195 fi |
201 | 196 |
202 # Waits for the user to press 'Y' or 'N'. Either uppercase of lowercase is | 197 # Waits for the user to press 'Y' or 'N'. Either uppercase of lowercase is |
203 # accepted. Returns 0 for 'Y' and 1 for 'N'. If an optional parameter has | 198 # accepted. Returns 0 for 'Y' and 1 for 'N'. If an optional parameter has |
204 # been provided to yes_no(), the function also accepts RETURN as a user input. | 199 # been provided to yes_no(), the function also accepts RETURN as a user input. |
205 # The parameter specifies the exit code that should be returned in that case. | 200 # The parameter specifies the exit code that should be returned in that case. |
206 # The function will echo the user's selection followed by a newline character. | 201 # The function will echo the user's selection followed by a newline character. |
207 # Users can abort the function by pressing CTRL-C. This will call "exit 1". | 202 # Users can abort the function by pressing CTRL-C. This will call "exit 1". |
208 yes_no() { | 203 yes_no() { |
209 local c | 204 local c |
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
508 sed -e 's/[.]so[.][0-9].*/.so/' | | 503 sed -e 's/[.]so[.][0-9].*/.so/' | |
509 sort -u); do | 504 sort -u); do |
510 [ "x${i##*/}" = "xld-linux.so" ] && continue | 505 [ "x${i##*/}" = "xld-linux.so" ] && continue |
511 [ -r "$i" ] && continue | 506 [ -r "$i" ] && continue |
512 j="$(ls "$i."* | sed -e 's/.*[.]so[.]\([^.]*\)$/\1/;t;d' | | 507 j="$(ls "$i."* | sed -e 's/.*[.]so[.]\([^.]*\)$/\1/;t;d' | |
513 sort -n | tail -n 1)" | 508 sort -n | tail -n 1)" |
514 [ -r "$i.$j" ] || continue | 509 [ -r "$i.$j" ] || continue |
515 sudo ln -s "${i##*/}.$j" "$i" | 510 sudo ln -s "${i##*/}.$j" "$i" |
516 done | 511 done |
517 fi | 512 fi |
OLD | NEW |