debian/0000775000000000000000000000000012313051734007167 5ustar debian/source/0000775000000000000000000000000012165300313010462 5ustar debian/source/options0000664000000000000000000000003312165300313012074 0ustar extend-diff-ignore=.repo/* debian/source/format0000664000000000000000000000001412165300313011670 0ustar 3.0 (quilt) debian/copyright0000664000000000000000000002653612165532453011145 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: gcc-arm-linux-androideabi Files: android/bionic/linker Copyright: 2005-2010 The Android Open Source Project License: BSD-2-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: android/bionic/linker/dlfcn.c android/bionic/libdl/libdl.c Copyright: 2007 The Android Open Source Project License: Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Files: android/bionic/libthread_db android/bionic/libstdc++ android/bionic/libdl Copyright: 2007 The Android Open Source Project License: BSD-3-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the project nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: android/bionic/libm Copyright: 2003, Steven G. Kargl 2003 Mike Barcroft 2002-2005 David Schultz 2004 Stefan Farfeleder 2003 Dag-Erling Co�dan Sm�rgrav 1996 The NetBSD Foundation, Inc. 1993,94 Winning Strategies, Inc. 1993 by Sun Microsystems, Inc. All rights reserved. 2004 by Sun Microsystems, Inc. All rights reserved. 2003, Steven G. Kargl 1991 The Regents of the University of California. License: BSD-2-clause and BSD-3-clause and BSD-4-clause For all notices see copyright.libm Files: android/bionic/libc Copyright: 2005-2010, The Android Open Source Project 2004 by Internet Systems Consortium, Inc. ("ISC") 1995,1996,1999 by Internet Software Consortium. 1995 by International Business Machines, Inc. 1997, 1998, 1999, 2004 The NetBSD Foundation, Inc. 1993 Christopher G. Demetriou 1983, 1985, 1993 The Regents of the University of California. All rights reserved. 2000 Ben Harris. 1995, 1996, 1997, and 1998 WIDE Project. 2003 Networks Associates Technology, Inc. 1993 by Digital Equipment Corporation. 1997 Mark Brinicombe 1993 Martin Birgmeier 1996 David Mazieres . 1999 Kungliga Tekniska Högskolan 1993 by Sun Microsystems, Inc. All rights reserved. 1997, 2005 Todd C. Miller 1995, 1996 Carnegie-Mellon University. 2003 Networks Associates Technology, Inc. License: BSD-2-clause and BSD-3-clause and BSD-4-clause For all notices see copyright.libc Files: android/build android/Makefile Copyright: The Android Open Source Project License: Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Files: android/device/linaro/common Copyright: 2011-2012 Linaro Limited License: Apache-2.0 These files are Copyright (C) 2011-2012 Linaro Limited and they are licensed under the Apache License, Version 2.0. You may obtain a copy of this license at http://www.apache.org/licenses/LICENSE-2.0 License: Files: android/device/linaro/pandaboard Copyright: 20122 Linaro Limited License: Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Files: android/frameworks/native Copyright: 2005-2010 The Android Open Source Project 1999-2006 The Apache Software Foundation 2007 Nuance Communications 1998 - 2009 PacketVideo 2002-2008 by John Cowan 2003-2010 VisualOn 2004-2010 NXP Software 1991-2008 Unicode, Inc License: Apache-2.0 For all notices see copyright.frameworks.native Files: android/hardware/ti/omap4xxx Copyright: 2010, Texas Instruments Incorporated 2011 Trusted Logic License: BSD-3-clause and Apache-2.0 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. . * Neither the name of Texas Instruments Incorporated nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: android/system/core Copyright: 2005-2012 The Android Open Source Project 1989 The Regents of the University of California 1994-1998 Brini 2001 Ben Harris 1994-1997 Mark Brinicombe 1997 Causality Limited 1997 Christos Zoulas 1998 Robert Nordier 2001-2008 Miklos Szeredi 2003 The NetBSD Foundation, Inc 2006, Brian Swetland 2011-2012 Google, Inc 2010, Salvatore Sanfilippo License: BSD-2-clause and BSD-3-clause and BSD-4-clause and Apache-2.0 Files: android/system/core/sh/arith.c Copyright: 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc License: A Bison parser, made by GNU Bison 1.875d. . Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. . This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ . As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. Files: debian/* Copyright: 2013 Canonical Ltd License: Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. debian/changelog0000664000000000000000000000433112313051726011043 0ustar gcc-arm-linux-androideabi (0.20130705.1-0ubuntu7) trusty; urgency=medium * Rebuild against gcc-4.7 (4.7.3-12ubuntu1): - Update to SVN 20140320 (r208693) from the gcc-4_7-branch. - Update the Linaro support to the 4.7-2014.01 release. * Change build-dependency from libppl0.12-dev to libppl-dev. * Change build-dependency from libcloog-isl-dev to libcloog-ppl-dev. * Change enable-cloog-backend from isl to ppl. * Pass --with-cloog configure option. -- Dimitri John Ledkov Fri, 21 Mar 2014 14:59:34 +0000 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu6) trusty; urgency=medium * Rebuild against gcc-4.7 (4.7.3-10ubuntu1) trusty: - Update to SVN 20140112 (r206563) from the gcc-4_7-branch. - Update the Linaro support to the 4.7-2013.12 release. * Enable support for -fuse-ld=gold compiler option. -- Dimitri John Ledkov Wed, 29 Jan 2014 23:37:52 +0000 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu5) saucy; urgency=low * Rebuild against gcc-4.7 (4.7.3-7): - Update to SVN 20130821 (r201895) from the gcc-4_7-branch. - Update the Linaro support to the 4.7-2013.08 release. -- Dmitrijs Ledkovs Fri, 06 Sep 2013 12:24:29 +0100 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu4) saucy; urgency=low * Build against Linaro support to the 4.7-2013.07 release. * Drop spurious patch and stub documentation. * Build without binutils patches. -- Dmitrijs Ledkovs Mon, 15 Jul 2013 17:47:44 +0100 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu3) saucy; urgency=low * Ship bionic libc and headers. -- Dmitrijs Ledkovs Mon, 08 Jul 2013 16:58:36 +0100 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu2) saucy; urgency=low * Use /usr/lib, instead of /usr/libexec * Remove unneeded .la files * Remove versioned gcc-4.x.y symlink * Build shared binutils * Use xz compression on debian package -- Dmitrijs Ledkovs Fri, 05 Jul 2013 19:50:17 +0100 gcc-arm-linux-androideabi (0.20130705.1-0ubuntu1) saucy; urgency=low * Initial release, android cross-toolchain. -- Dmitrijs Ledkovs Fri, 05 Jul 2013 10:12:24 +0100debian/control0000664000000000000000000000154112313051267010574 0ustar Source: gcc-arm-linux-androideabi Section: devel Priority: extra Maintainer: Dmitrijs Ledkovs Build-Depends: debhelper (>= 9), g++-multilib, binutils-multiarch, binutils-source, gcc-4.7-source, libppl-dev, bison, flex, python, zlib1g-dev, libcloog-ppl-dev, libgmp-dev, libmpfr-dev, libmpc-dev, patchutils, quilt, lsb-release, texinfo, autogen, dh-exec Standards-Version: 3.9.4 Package: gcc-arm-linux-androideabi Architecture: amd64 i386 Depends: ${shlibs:Depends}, ${misc:Depends}, binutils-multiarch Description: cross toolchain and binutils for Android/Bionic on ARM Cross toolchain targetting Android/Bionic on ARM such as Android, ClockWorkMod, Ubuntu Touch recovery image, Ubuntu Tounch android containers. . This package include gcc toolchain for C/C++ languages and binutils. . Libionic is not included in this package. debian/rules0000775000000000000000000001767212313051633010262 0ustar #!/usr/bin/make -f # -*- makefile -*- export DH_VERBOSE=1 # This has to be exported to make some magic below work. export DH_OPTIONS d = debian/gcc-arm-linux-androideabi DESTDIR = $(CURDIR)/tmp include /usr/share/dpkg/default.mk TARGET = arm-linux-androideabi TARGET_TOOLS_PATH = $(DESTDIR)/usr TARGET_TOOLS_PREFIX = $(TARGET_TOOLS_PATH)/bin/$(TARGET)- SYSROOT=$(CURDIR)/sys-root SET_PATH = PATH=$(DESTDIR)/usr/bin:$(PATH) CFLAGS_FOR_TARGET = -O2 -Os -g -DTARGET_POSIX_IO -fno-short-enums -isystem $(CURDIR)/android/bionic/libc/include -isystem $(CURDIR)/android/bionic/libc/kernel/common -isystem $(CURDIR)/android/bionic/libc/kernel/arch-arm -isystem $(CURDIR)/android/bionic/libc/arch-arm/include -isystem $(CURDIR)/android/bionic/libm/include -isystem $(CURDIR)/android/bionic/libm/include/arm -isystem $(CURDIR)/android/bionic/libm/arm -include $(CURDIR)/android/bionic/libc/include/sys/limits.h CFLAGS=-O2 stamps/binutils-prepare: rm -rf binutils mkdir -p binutils tar -C binutils -x -f /usr/src/binutils/binutils-*.tar.* cd binutils && ln -sf binutils-* binutils #cd binutils/binutils && QUILT_PATCHES=$(CURDIR)/debian/patches/binutils quilt --quiltrc - push -a mkdir -p stamps && touch $@ stamps/gcc-prepare: rm -rf gcc cp -a /usr/src/gcc-4.7 gcc mkdir -p gcc/stamps cd gcc && debian/rules series cp debian/patches/gcc/* gcc/debian/patches/ cd gcc && debian/rules patch mkdir -p stamps && touch $@ stamps/binutils1: stamps/binutils-prepare mkdir -p binutils/build1 cd binutils/build1 && \ ../binutils/configure \ --prefix=/usr \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_BUILD_GNU_TYPE) \ --target=$(TARGET) \ --disable-docs \ --disable-nls \ --disable-werror \ --disable-ppl-version-check \ --enable-gold=default \ --with-cloog \ --disable-cloog-version-check \ --enable-cloog-backend=ppl \ --enable-plugins \ --enable-threads \ --disable-shared dh_auto_build --parallel -Bbinutils/build1 dh_auto_build --parallel -Bbinutils/build1 -- install DESTDIR=$(DESTDIR) mkdir -p stamps && touch $@ stamps/gcc-stage1: stamps/binutils1 stamps/gcc-prepare rm -rf gcc/stage1 mkdir -p gcc/stage1 cd gcc/stage1 && \ $(SET_PATH) CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CFLAGS)" ../src/configure \ --prefix=$(DESTDIR)/usr \ --libexecdir=$(DESTDIR)/usr/lib \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_BUILD_GNU_TYPE) \ --target=$(TARGET) \ --disable-multilib \ --with-gnu-as \ --with-gnu-ld \ --enable-languages=c,c++ \ --with-cloog \ --disable-ppl-version-check \ --disable-cloog-version-check \ --enable-cloog-backend=ppl \ --disable-libssp --disable-nls \ --disable-libmudflap \ --disable-shared \ --disable-sjlj-exceptions \ --disable-libquadmath \ --disable-libitm \ --disable-libatomic \ --with-float=soft \ --with-fpu=vfp \ --with-arch=armv5te \ --enable-target-optspace \ --disable-docs \ --disable-nls \ --enable-threads \ --enable-tls \ --disable-libgomp \ --disable-libstdc__-v3 \ --disable-libitm \ --disable-libatomic $(SET_PATH) dh_auto_build --parallel -Bgcc/stage1 -- CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" $(SET_PATH) dh_auto_build --parallel -Bgcc/stage1 -- install touch $@ stamps/bionic1: stamps/gcc-stage1 ONE_SHOT_MAKEFILE=build/libs/host/Android.mk dh_auto_build --parallel -B$(CURDIR)/android -- all_modules TARGET_TOOLS_PREFIX=$(TARGET_TOOLS_PREFIX) TARGET_PRODUCT=pandaboard showcommands ONE_SHOT_MAKEFILE=build/tools/acp/Android.mk dh_auto_build --parallel -B$(CURDIR)/android -- all_modules TARGET_TOOLS_PREFIX=$(TARGET_TOOLS_PREFIX) TARGET_PRODUCT=pandaboard showcommands ONE_SHOT_MAKEFILE=bionic/Android.mk dh_auto_build --parallel -B$(CURDIR)/android -- all_modules out/target/product/pandaboard/obj/lib/crtbegin_dynamic.o TARGET_TOOLS_PREFIX=$(TARGET_TOOLS_PREFIX) TARGET_PRODUCT=pandaboard showcommands ./debian/build-sysroot.sh $(CURDIR)/android/out/target/product/pandaboard/ $(SYSROOT) touch dummy.c $(SET_PATH) $(TARGET)-gcc -O2 -o dummy.o -c dummy.c $(SET_PATH) $(TARGET)-ar cru $(SYSROOT)/usr/lib/libpthread.a dummy.o $(SET_PATH) $(TARGET)-ranlib $(SYSROOT)/usr/lib/libpthread.a rm -f dummy.[co] touch $@ stamps/gcc-stage2: stamps/binutils1 stamps/bionic1 rm -rf gcc/stage2 mkdir -p gcc/stage2 # FIXME should use --prefix=/usr & --with-build-sysroot ? cd gcc/stage2 && \ $(SET_PATH) CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET) -fexceptions" CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET) -frtti" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CFLAGS)" ../src/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_BUILD_GNU_TYPE) \ --target=$(TARGET) \ --with-build-sysroot=$(SYSROOT) \ --disable-multilib \ --with-gnu-as \ --with-gnu-ld \ --enable-languages=c,c++ \ --disable-ppl-version-check \ --disable-cloog-version-check \ --enable-cloog-backend=isl \ --disable-libssp \ --disable-nls \ --disable-libmudflap \ --disable-shared \ --disable-sjlj-exceptions \ --disable-libquadmath \ --disable-libitm \ --disable-libatomic \ --with-float=soft \ --with-fpu=vfp \ --with-arch=armv5te \ --enable-target-optspace \ --disable-docs \ --disable-nls \ --enable-threads \ --enable-tls \ --enable-libgomp \ --disable-libitm \ --disable-libatomic \ --disable-libstdc__-v3 $(SET_PATH) dh_auto_build --parallel -Bgcc/stage2 -- CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET) -fexceptions" CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET) -frtti" $(SET_PATH) dh_auto_build --parallel -Bgcc/stage2 -- install DESTDIR=$(DESTDIR) touch $@ # Build shared binutils2 stamps/binutils2: stamps/binutils-prepare mkdir -p binutils/build2 cd binutils/build2 && \ ../binutils/configure \ --prefix=/usr \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_BUILD_GNU_TYPE) \ --target=$(TARGET) \ --disable-docs \ --disable-nls \ --disable-werror \ --disable-ppl-version-check \ --enable-gold=default \ --disable-cloog-version-check \ --enable-cloog-backend=isl \ --enable-plugins \ --enable-threads \ --enable-shared dh_auto_build --parallel -Bbinutils/build2 dh_auto_build --parallel -Bbinutils/build2 -- install DESTDIR=$(DESTDIR) mkdir -p stamps && touch $@ build: build-arch build-indep build-arch: stamps/gcc-stage2 stamps/binutils2 build-indep: clean: dh_testdir dh_testroot rm -rf stamps rm -rf binutils gcc android/out tmp $(SYSROOT) dh_clean install: install-indep install-arch install-indep: install-arch: dh_testdir dh_testroot dh_prep -s dh_installdirs -s tar -C $(DESTDIR) -c -f - . | tar -C $(d) -x -f - cp -a $(SYSROOT)/usr/lib/* $(d)/usr/$(TARGET)/lib/ cp -a $(SYSROOT)/usr/include $(d)/usr/$(TARGET) find $(d) -name "*.la" -delete rm -rf $(d)/usr/bin/$(TARGET)-gcc-* rm -rf $(d)/usr/lib/libiberty.a rm -rf $(d)/usr/share/locale rm -rf $(d)/usr/share/man/man7 rm -rf $(d)/usr/share/info binary-indep: build-indep install-indep dh_testdir dh_testroot binary-arch: build-arch install-arch dh_testdir dh_testroot mkdir -p debian/$(DEB_SOURCE)/usr/share/doc/$(DEB_SOURCE) cp android/bionic/libm/NOTICE debian/$(DEB_SOURCE)/usr/share/doc/$(DEB_SOURCE)/copyright.libm cp android/bionic/libc/NOTICE debian/$(DEB_SOURCE)/usr/share/doc/$(DEB_SOURCE)/copyright.libc cp android/frameworks/native/NOTICE debian/$(DEB_SOURCE)/usr/share/doc/$(DEB_SOURCE)/copyright.frameworks.native dh_installchangelogs -s dh_installdocs -s dh_installexamples -s dh_installman -s dh_strip -s dh_compress -s dh_fixperms -s dh_installdeb -s dh_shlibdeps -s -X.so dh_gencontrol -s dh_md5sums -s dh_builddeb -s -- -Zxz get-orig-source: fakeroot ./debian/rules clean -quilt pop -a -f tar --exclude-vcs --transform='s,^,$(DEB_SOURCE)-$(DEB_VERSION_UPSTREAM)/,S' -caf ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig.tar.xz android binary: binary-arch binary-indep .PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure debian/build-sysroot.sh0000775000000000000000000000443012166505002012344 0ustar #!/bin/sh # # snatched from http://android.git.linaro.org/gitweb?p=toolchain/build.git;a=blob_plain;f=build-sysroot.sh;hb=refs/heads/linaro-master # # build-sysroot.sh # # collect files from an Android tree to assemble a sysroot suitable for # building a standable toolchain. # PRODUCT_DIR=$1 SYSROOT=$2 LIB_ROOT=$SYSROOT/usr/lib INCLUDE_ROOT=$SYSROOT/usr/include install_file () { mkdir -p $2/`dirname $1` cp -fp $1 $2/$1 } install_helper () { (cd $1 && find . -type f | while read ff; do install_file $ff $2; done) } TOP=$1/../../../.. # CRT objects that need to be copied CRT_OBJS_DIR=$PRODUCT_DIR/obj/lib CRT_OBJS="$CRT_OBJS_DIR/crtbegin_static.o \ $CRT_OBJS_DIR/crtbegin_dynamic.o \ $CRT_OBJS_DIR/crtend_android.o" # static libraries that need to be copied. STATIC_LIBS_DIR=$PRODUCT_DIR/obj/STATIC_LIBRARIES STATIC_LIBS="$STATIC_LIBS_DIR/libc_intermediates/libc.a \ $STATIC_LIBS_DIR/libm_intermediates/libm.a \ $STATIC_LIBS_DIR/libstdc++_intermediates/libstdc++.a $STATIC_LIBS_DIR/libthread_db_intermediates/libthread_db.a" # dynamic libraries that need to be copied. DYNAMIC_LIBS_DIR=$PRODUCT_DIR/symbols/system/lib DYNAMIC_LIBS="$DYNAMIC_LIBS_DIR/libdl.so \ $DYNAMIC_LIBS_DIR/libc.so \ $DYNAMIC_LIBS_DIR/libm.so \ $DYNAMIC_LIBS_DIR/libstdc++.so \ $DYNAMIC_LIBS_DIR/libthread_db.so" # Copy all CRT objects and librarires rm -rf $LIB_ROOT mkdir -p $LIB_ROOT cp -f $CRT_OBJS $STATIC_LIBS $DYNAMIC_LIBS $LIB_ROOT # Copy headers. This need to be done in the reverse order of inclusion # in case there are different headers with the same name. INCLUDE_ROOT=$SYSROOT/usr/include rm -rf $INCLUDE_ROOT # Check $TOP/bioinc to see if this is new lay-out in cupcake. if [ -d $TOP/bionic ] ;then BIONIC_ROOT=$TOP/bionic LIBC_ROOT=$BIONIC_ROOT/libc else BIONIC_ROOT=$TOP/system LIBC_ROOT=$BIONIC_ROOT/bionic fi install_helper $BIONIC_ROOT/libthread_db/include $INCLUDE_ROOT # for libm, just copy math.h and fenv.h install $BIONIC_ROOT/libm/include/math.h $INCLUDE_ROOT install $BIONIC_ROOT/libm/include/arm/fenv.h $INCLUDE_ROOT install_helper $LIBC_ROOT/kernel/arch-arm $INCLUDE_ROOT install_helper $LIBC_ROOT/kernel/common $INCLUDE_ROOT install_helper $BIONIC_ROOT/libstdc++/include $INCLUDE_ROOT install_helper $LIBC_ROOT/include $INCLUDE_ROOT install_helper $LIBC_ROOT/arch-arm/include $INCLUDE_ROOT debian/patches/0000775000000000000000000000000012165372211010617 5ustar debian/patches/gcc/0000775000000000000000000000000012272242466011362 5ustar debian/patches/gcc/ANDROID-libgomp.diff0000664000000000000000000000023712165372110014714 0ustar --- a/src/libgomp/env.c +++ b/src/libgomp/env.c @@ -42,6 +42,7 @@ # endif # endif #endif +#include #include #include debian/patches/gcc/linaro-13.06-1.diff0000664000000000000000000013242312165373447014315 0ustar Only in gcc/src/: autom4te.cache Only in gcc/src/boehm-gc: autom4te.cache diff -r -U 4 gcc-compare/gcc-current/ChangeLog.linaro gcc/src/ChangeLog.linaro --- gcc-compare/gcc-current/ChangeLog.linaro 2013-07-04 23:23:28.516639571 +0100 +++ gcc/src/ChangeLog.linaro 2013-07-04 23:25:29.996642581 +0100 @@ -1,7 +1,7 @@ -2013-06-14 Rob Savoye +2013-06-11 Rob Savoye - GCC Linaro 4.7-2013.06-1 released. + GCC Linaro 4.7-2013.06 released. gcc/ * LINARO-VERSION: Update. diff -r -U 4 gcc-compare/gcc-current/contrib/gcc_build gcc/src/contrib/gcc_build --- gcc-compare/gcc-current/contrib/gcc_build 2013-07-04 23:23:28.176639562 +0100 +++ gcc/src/contrib/gcc_build 2013-07-04 23:25:29.996642581 +0100 @@ -145,9 +145,9 @@ changedir ${OBJDIR} # Bootstrap the compiler echo "Building: ${MAKE} ${MAKE_BOOTSTRAP_OPTIONS} bootstrap" - eval ${MAKE} ${MAKE_BOOTSTRAP_OPTIONS} bootstrap || \ + eval ${MAKE} -j8 ${MAKE_BOOTSTRAP_OPTIONS} bootstrap || \ error "Could not bootstrap the compiler" } # Test GCC. @@ -158,10 +158,10 @@ # Go to the object directory. changedir ${OBJDIR} echo "Running tests... This will take a while." - eval \${MAKE} -k ${MAKE_CHECK_OPTIONS} check - ${DESTINATION}/contrib/test_summary + #eval \${MAKE} -k ${MAKE_CHECK_OPTIONS} check + #${DESTINATION}/contrib/test_summary } # Export the GCC source tree. diff -r -U 4 gcc-compare/gcc-current/fixincludes/fixincl.x gcc/src/fixincludes/fixincl.x --- gcc-compare/gcc-current/fixincludes/fixincl.x 2013-07-04 23:23:28.496639570 +0100 +++ gcc/src/fixincludes/fixincl.x 2013-07-04 23:25:30.000000000 +0100 @@ -1,13 +1,13 @@ /* -*- buffer-read-only: t -*- vi: set ro: - * + * * DO NOT EDIT THIS FILE (fixincl.x) - * - * It has been AutoGen-ed March 26, 2012 at 10:53:21 AM by AutoGen 5.10 + * + * It has been AutoGen-ed July 4, 2013 at 11:25:30 PM by AutoGen 5.17.3 * From the definitions inclhack.def * and the template file fixincl */ -/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Mar 26 10:53:21 EDT 2012 +/* DO NOT SVN-MERGE THIS FILE, EITHER Thu Jul 4 23:25:30 BST 2013 * * You must regenerate it. Use the ./genfixes script. * * Only in gcc/src/gcc: autom4te.cache diff -r -U 4 gcc-compare/gcc-current/gcc/BASE-VER gcc/src/gcc/BASE-VER --- gcc-compare/gcc-current/gcc/BASE-VER 2013-07-04 23:23:26.948639532 +0100 +++ gcc/src/gcc/BASE-VER 2012-09-20 10:39:50.000000000 +0100 @@ -1 +1 @@ -4.7.4 +4.7.3 diff -r -U 4 gcc-compare/gcc-current/gcc/ChangeLog gcc/src/gcc/ChangeLog --- gcc-compare/gcc-current/gcc/ChangeLog 2013-07-04 23:23:26.804639528 +0100 +++ gcc/src/gcc/ChangeLog 2013-07-04 23:25:30.120642584 +0100 @@ -1,4 +1,32 @@ +2013-06-07 Uros Bizjak + + Backport from mainline + 2013-06-10 Uros Bizjak + + * config/alpha/alpha.c (alpha_emit_xfloating_compare): Also use + cmp_code to construct REG_EQUAL note. + + Backport from mainline + 2013-06-05 Uros Bizjak + + * config/alpha/alpha.c (alpha_emit_conditional_move): Swap all + GE, GT, GEU and GTU compares, modulo DImode compares with zero. + + Backport from mainline + 2013-05-23 Uros Bizjak + + PR target/57379 + * config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE. + * config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct + REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec. + +2013-06-09 Jakub Jelinek + + PR target/57568 + * config/i386/i386.md (TARGET_READ_MODIFY_WRITE peepholes): Ensure + that operands[2] doesn't overlap with operands[0]. + 2013-05-22 Uros Bizjak PR target/57356 * config/i386/i386.md (*movti_internal_rex64): Emit movaps/movups @@ -214,13 +242,8 @@ PR target/55487 * config/pa/pa.c (legitimize_pic_address): Before incrementing label nuses, make sure we have a label. -2013-04-11 Richard Biener - - * BASE-VER: Set to 4.7.4. - * DEV-PHASE: Set to prerelease. - 2013-04-11 Release Manager * GCC 4.7.3 released. diff -r -U 4 gcc-compare/gcc-current/gcc/config/alpha/alpha.c gcc/src/gcc/config/alpha/alpha.c --- gcc-compare/gcc-current/gcc/config/alpha/alpha.c 2013-07-04 23:23:26.884639530 +0100 +++ gcc/src/gcc/config/alpha/alpha.c 2013-07-04 23:25:30.124642584 +0100 @@ -2657,14 +2657,14 @@ cmov_code = EQ; break; case GE: case GT: case GEU: case GTU: - /* These must be swapped. */ - if (op1 != CONST0_RTX (cmp_mode)) - { - code = swap_condition (code); - tem = op0, op0 = op1, op1 = tem; - } + /* These normally need swapping, but for integer zero we have + special patterns that recognize swapped operands. */ + if (cmp_mode == DImode && op1 == const0_rtx) + break; + code = swap_condition (code); + tem = op0, op0 = op1, op1 = tem; break; default: gcc_unreachable (); @@ -3024,14 +3024,11 @@ operands[0] = op0; operands[1] = op1; out = gen_reg_rtx (DImode); - /* What's actually returned is -1,0,1, not a proper boolean value, - so use an EXPR_LIST as with a generic libcall instead of a - comparison type expression. */ - note = gen_rtx_EXPR_LIST (VOIDmode, op1, NULL_RTX); - note = gen_rtx_EXPR_LIST (VOIDmode, op0, note); - note = gen_rtx_EXPR_LIST (VOIDmode, func, note); + /* What's actually returned is -1,0,1, not a proper boolean value. */ + note = gen_rtx_fmt_ee (cmp_code, VOIDmode, op0, op1); + note = gen_rtx_UNSPEC (DImode, gen_rtvec (1, note), UNSPEC_XFLT_COMPARE); alpha_emit_xfloating_libcall (func, out, operands, 2, note); return out; } diff -r -U 4 gcc-compare/gcc-current/gcc/config/alpha/alpha.md gcc/src/gcc/config/alpha/alpha.md --- gcc-compare/gcc-current/gcc/config/alpha/alpha.md 2013-07-04 23:23:26.884639530 +0100 +++ gcc/src/gcc/config/alpha/alpha.md 2013-07-04 23:25:30.124642584 +0100 @@ -24,8 +24,9 @@ ;; Uses of UNSPEC in this file: (define_c_enum "unspec" [ + UNSPEC_XFLT_COMPARE UNSPEC_ARG_HOME UNSPEC_LDGP1 UNSPEC_INSXH UNSPEC_MSKXH diff -r -U 4 gcc-compare/gcc-current/gcc/config/i386/i386.md gcc/src/gcc/config/i386/i386.md --- gcc-compare/gcc-current/gcc/config/i386/i386.md 2013-07-04 23:23:26.908639531 +0100 +++ gcc/src/gcc/config/i386/i386.md 2013-07-04 23:25:30.128642584 +0100 @@ -17193,8 +17193,9 @@ (set (reg FLAGS_REG) (compare (match_dup 0) (const_int 0)))] "(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ()) && peep2_reg_dead_p (4, operands[0]) && !reg_overlap_mentioned_p (operands[0], operands[1]) + && !reg_overlap_mentioned_p (operands[0], operands[2]) && (mode != QImode || immediate_operand (operands[2], QImode) || q_regs_operand (operands[2], QImode)) && ix86_match_ccmode (peep2_next_insn (3), @@ -17257,8 +17258,9 @@ && (mode != QImode || immediate_operand (operands[2], SImode) || q_regs_operand (operands[2], SImode)) && !reg_overlap_mentioned_p (operands[0], operands[1]) + && !reg_overlap_mentioned_p (operands[0], operands[2]) && ix86_match_ccmode (peep2_next_insn (3), (GET_CODE (operands[3]) == PLUS || GET_CODE (operands[3]) == MINUS) ? CCGOCmode : CCNOmode)" diff -r -U 4 gcc-compare/gcc-current/gcc/DATESTAMP gcc/src/gcc/DATESTAMP --- gcc-compare/gcc-current/gcc/DATESTAMP 2013-07-04 23:23:26.876639530 +0100 +++ gcc/src/gcc/DATESTAMP 2013-07-04 23:25:30.120642584 +0100 @@ -1 +1 @@ -20130603 +20130614 diff -r -U 4 gcc-compare/gcc-current/gcc/DEV-PHASE gcc/src/gcc/DEV-PHASE --- gcc-compare/gcc-current/gcc/DEV-PHASE 2013-07-04 23:23:26.932639531 +0100 +++ gcc/src/gcc/DEV-PHASE 2013-04-11 08:57:28.000000000 +0100 @@ -1 +0,0 @@ -prerelease Only in gcc/src/gcc/doc: aot-compile.1 Only in gcc/src/gcc/doc: cpp.1 Only in gcc/src/gcc/doc: cpp.info Only in gcc/src/gcc/doc: cppinternals.info diff -r -U 4 gcc-compare/gcc-current/gcc/doc/extend.texi gcc/src/gcc/doc/extend.texi --- gcc-compare/gcc-current/gcc/doc/extend.texi 2013-07-04 23:23:26.916639531 +0100 +++ gcc/src/gcc/doc/extend.texi 2013-03-30 11:10:22.000000000 +0000 @@ -8574,19 +8574,14 @@ Similar to @code{__builtin_powi}, except the argument and return types are @code{long double}. @end deftypefn -@deftypefn {Built-in Function} int16_t __builtin_bswap16 (int16_t x) +@deftypefn {Built-in Function} int32_t __builtin_bswap32 (int32_t x) Returns @var{x} with the order of the bytes reversed; for example, -@code{0xaabb} becomes @code{0xbbaa}. Byte here always means +@code{0xaabbccdd} becomes @code{0xddccbbaa}. Byte here always means exactly 8 bits. @end deftypefn -@deftypefn {Built-in Function} int32_t __builtin_bswap32 (int32_t x) -Similar to @code{__builtin_bswap16}, except the argument and return types -are 32-bit. -@end deftypefn - @deftypefn {Built-in Function} int64_t __builtin_bswap64 (int64_t x) Similar to @code{__builtin_bswap32}, except the argument and return types are 64-bit. @end deftypefn @@ -13470,8 +13465,9 @@ float __builtin_rsqrtf (float); double __builtin_recipdiv (double, double); double __builtin_rsqrt (double); long __builtin_bpermd (long, long); +int __builtin_bswap16 (int); @end smallexample The @code{vec_rsqrt}, @code{__builtin_rsqrt}, and @code{__builtin_rsqrtf} functions generate multiple instructions to diff -r -U 4 gcc-compare/gcc-current/gcc/doc/fragments.texi gcc/src/gcc/doc/fragments.texi --- gcc-compare/gcc-current/gcc/doc/fragments.texi 2013-07-04 23:23:26.920639531 +0100 +++ gcc/src/gcc/doc/fragments.texi 2013-01-14 16:32:37.000000000 +0000 @@ -126,31 +126,8 @@ @smallexample *mthumb/*mhard-float* @end smallexample -@findex MULTILIB_REQUIRED -@item MULTILIB_REQUIRED -Sometimes when there are only a few combinations are required, it would -be a big effort to come up with a @code{MULTILIB_EXCEPTIONS} list to -cover all undesired ones. In such a case, just listing all the required -combinations in @code{MULTILIB_REQUIRED} would be more straightforward. - -The way to specify the entries in @code{MULTILIB_REQUIRED} is same with -the way used for @code{MULTILIB_EXCEPTIONS}, only this time what are -required will be specified. Suppose there are multiple sets of -@code{MULTILIB_OPTIONS} and only two combinations are required, one -for ARMv7-M and one for ARMv7-R with hard floating-point ABI and FPU, the -@code{MULTILIB_REQUIRED} can be set to: -@smallexample -@code{MULTILIB_REQUIRED} = mthumb/march=armv7-m -@code{MULTILIB_REQUIRED} += march=armv7-r/mfloat-abi=hard/mfpu=vfpv3-d16 -@end smallexample - -The @code{MULTILIB_REQUIRED} can be used together with -@code{MULTILIB_EXCEPTIONS}. The option combinations generated from -@code{MULTILIB_OPTIONS} will be filtered by @code{MULTILIB_EXCEPTIONS} -and then by @code{MULTILIB_REQUIRED}. - @findex MULTILIB_EXTRA_OPTS @item MULTILIB_EXTRA_OPTS Sometimes it is desirable that when building multiple versions of @file{libgcc.a} certain options should always be passed on to the Only in gcc/src/gcc/doc: fsf-funding.7 Only in gcc/src/gcc/doc: g++.1 Only in gcc/src/gcc/doc: gc-analyze.1 Only in gcc/src/gcc/doc: gcc.1 Only in gcc/src/gcc/doc: gcc.info Only in gcc/src/gcc/doc: gccinstall.info Only in gcc/src/gcc/doc: gccint.info Only in gcc/src/gcc/doc: gcj.1 Only in gcc/src/gcc/doc: gcj-dbtool.1 Only in gcc/src/gcc/doc: gcj.info Only in gcc/src/gcc/doc: gcov.1 Only in gcc/src/gcc/doc: gfdl.7 Only in gcc/src/gcc/doc: gfortran.1 Only in gcc/src/gcc/doc: gij.1 Only in gcc/src/gcc/doc: gpl.7 Only in gcc/src/gcc/doc: grmic.1 diff -r -U 4 gcc-compare/gcc-current/gcc/doc/install.texi gcc/src/gcc/doc/install.texi --- gcc-compare/gcc-current/gcc/doc/install.texi 2013-07-04 23:23:26.920639531 +0100 +++ gcc/src/gcc/doc/install.texi 2013-01-14 16:32:37.000000000 +0000 @@ -1046,17 +1046,8 @@ libraries to support different target variants, calling conventions, etc.@: should not be built. The default is to build a predefined set of them. -@item --enable-multiarch -Specify whether to enable or disable multiarch support. The default is -to check for glibc start files in a multiarch location, and enable it -if the files are found. The auto detection is enabled for native builds, -and for cross builds configured with @option{--with-sysroot}, and without -@option{--with-native-system-header-dir}. -More documentation about multiarch can be found at -@uref{http://wiki.debian.org/Multiarch}. - Some targets provide finer-grained control over which multilibs are built (e.g., @option{--disable-softfloat}): @table @code @item arm-*-* diff -r -U 4 gcc-compare/gcc-current/gcc/doc/invoke.texi gcc/src/gcc/doc/invoke.texi --- gcc-compare/gcc-current/gcc/doc/invoke.texi 2013-07-04 23:23:26.920639531 +0100 +++ gcc/src/gcc/doc/invoke.texi 2013-03-30 11:10:22.000000000 +0000 @@ -402,17 +402,15 @@ -fshrink-wrap -fsignaling-nans -fsingle-precision-constant @gol -fsplit-ivs-in-unroller -fsplit-wide-types -fstack-protector @gol -fstack-protector-all -fstrict-aliasing -fstrict-overflow @gol -fthread-jumps -ftracer -ftree-bit-ccp @gol --ftree-builtin-call-dce -ftree-ccp -ftree-ch @gol --ftree-coalesce-inline-vars -ftree-coalesce-vars -ftree-copy-prop @gol +-ftree-builtin-call-dce -ftree-ccp -ftree-ch -ftree-copy-prop @gol -ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse @gol -ftree-forwprop -ftree-fre -ftree-loop-if-convert @gol -ftree-loop-if-convert-stores -ftree-loop-im @gol -ftree-phiprop -ftree-loop-distribution -ftree-loop-distribute-patterns @gol -ftree-loop-ivcanon -ftree-loop-linear -ftree-loop-optimize @gol --ftree-parallelize-loops=@var{n} -ftree-pre -ftree-partial-pre -ftree-pta @gol --ftree-reassoc @gol +-ftree-parallelize-loops=@var{n} -ftree-pre -ftree-pta -ftree-reassoc @gol -ftree-sink -ftree-sra -ftree-switch-conversion -ftree-tail-merge @gol -ftree-ter -ftree-vect-loop-version -ftree-vectorize -ftree-vrp @gol -funit-at-a-time -funroll-all-loops -funroll-loops @gol -funsafe-loop-optimizations -funsafe-math-optimizations -funswitch-loops @gol @@ -461,17 +459,8 @@ @c This list is ordered alphanumerically by subsection name. @c Try and put the significant identifier (CPU or system) first, @c so users have a clue at guessing where the ones they want will be. -@emph{AArch64 Options} -@gccoptlist{-mbig-endian -mlittle-endian @gol --mgeneral-regs-only @gol --mcmodel=tiny -mcmodel=small -mcmodel=large @gol --mstrict-align @gol --momit-leaf-frame-pointer -mno-omit-leaf-frame-pointer @gol --mtls-dialect=desc -mtls-dialect=traditional @gol --march=@var{name} -mcpu=@var{name} -mtune=@var{name}} - @emph{Adapteva Epiphany Options} @gccoptlist{-mhalf-reg-file -mprefer-short-insn-regs @gol -mbranch-cost=@var{num} -mcmove -mnops=@var{num} -msoft-cmpsf @gol -msplit-lohi -mpost-inc -mpost-modify -mstack-offset=@var{num} @gol @@ -504,10 +493,9 @@ -mcaller-super-interworking -mcallee-super-interworking @gol -mtp=@var{name} -mtls-dialect=@var{dialect} @gol -mword-relocations @gol -mfix-cortex-m3-ldrd @gol --munaligned-access @gol --mneon-for-64bits} +-munaligned-access} @emph{AVR Options} @gccoptlist{-mmcu=@var{mcu} -maccumulate-args -mbranch-cost=@var{cost} @gol -mcall-prologues -mint8 -mno-interrupts -mrelax -mshort-calls @gol @@ -6248,10 +6236,10 @@ @opindex O3 Optimize yet more. @option{-O3} turns on all optimizations specified by @option{-O2} and also turns on the @option{-finline-functions}, @option{-funswitch-loops}, @option{-fpredictive-commoning}, -@option{-fgcse-after-reload}, @option{-ftree-vectorize}, -@option{-ftree-partial-pre} and @option{-fipa-cp-clone} options. +@option{-fgcse-after-reload}, @option{-ftree-vectorize} and +@option{-fipa-cp-clone} options. @item -O0 @opindex O0 Reduce compilation time and make debugging produce the expected @@ -7044,13 +7032,8 @@ @opindex ftree-pre Perform partial redundancy elimination (PRE) on trees. This flag is enabled by default at @option{-O2} and @option{-O3}. -@item -ftree-partial-pre -@opindex ftree-partial-pre -Make partial redundancy elimination (PRE) more aggressive. This flag is -enabled by default at @option{-O3}. - @item -ftree-forwprop @opindex ftree-forwprop Perform forward propagation on trees. This flag is enabled by default at @option{-O} and higher. @@ -7444,26 +7427,8 @@ temporaries to other variables at copy locations, usually resulting in variable names which more closely resemble the original variables. This flag is enabled by default at @option{-O} and higher. -@item -ftree-coalesce-inlined-vars -Tell the copyrename pass (see @option{-ftree-copyrename}) to attempt to -combine small user-defined variables too, but only if they were inlined -from other functions. It is a more limited form of -@option{-ftree-coalesce-vars}. This may harm debug information of such -inlined variables, but it will keep variables of the inlined-into -function apart from each other, such that they are more likely to -contain the expected values in a debugging session. This was the -default in GCC versions older than 4.7. - -@item -ftree-coalesce-vars -Tell the copyrename pass (see @option{-ftree-copyrename}) to attempt to -combine small user-defined variables too, instead of just compiler -temporaries. This may severely limit the ability to debug an optimized -program compiled with @option{-fno-var-tracking-assignments}. In the -negated form, this flag prevents SSA coalescing of user variables, -including inlined ones. This option is enabled by default. - @item -ftree-ter @opindex ftree-ter Perform temporary expression replacement during the SSA->normal phase. Single use/single def temporaries are replaced at their use location with their @@ -10363,9 +10328,8 @@ @c It should be the same order and spelling as these options are listed @c in Machine Dependent Options @menu -* AArch64 Options:: * Adapteva Epiphany Options:: * ARM Options:: * AVR Options:: * Blackfin Options:: @@ -10572,127 +10536,8 @@ purpose. The default is @option{-m1reg-none}. @end table -@node AArch64 Options -@subsection AArch64 Options -@cindex AArch64 Options - -These options are defined for AArch64 implementations: - -@table @gcctabopt - -@item -mbig-endian -@opindex mbig-endian -Generate big-endian code. This is the default when GCC is configured for an -@samp{aarch64_be-*-*} target. - -@item -mgeneral-regs-only -@opindex mgeneral-regs-only -Generate code which uses only the general registers. - -@item -mlittle-endian -@opindex mlittle-endian -Generate little-endian code. This is the default when GCC is configured for an -@samp{aarch64-*-*} but not an @samp{aarch64_be-*-*} target. - -@item -mcmodel=tiny -@opindex mcmodel=tiny -Generate code for the tiny code model. The program and its statically defined -symbols must be within 1GB of each other. Pointers are 64 bits. Programs can -be statically or dynamically linked. This model is not fully implemented and -mostly treated as "small". - -@item -mcmodel=small -@opindex mcmodel=small -Generate code for the small code model. The program and its statically defined -symbols must be within 4GB of each other. Pointers are 64 bits. Programs can -be statically or dynamically linked. This is the default code model. - -@item -mcmodel=large -@opindex mcmodel=large -Generate code for the large code model. This makes no assumptions about -addresses and sizes of sections. Pointers are 64 bits. Programs can be -statically linked only. - -@item -mstrict-align -@opindex mstrict-align -Do not assume that unaligned memory references will be handled by the system. - -@item -momit-leaf-frame-pointer -@item -mno-omit-leaf-frame-pointer -@opindex momit-leaf-frame-pointer -@opindex mno-omit-leaf-frame-pointer -Omit or keep the frame pointer in leaf functions. The former behaviour is the -default. - -@item -mtls-dialect=desc -@opindex mtls-dialect=desc -Use TLS descriptors as the thread-local storage mechanism for dynamic accesses -of TLS variables. This is the default. - -@item -mtls-dialect=traditional -@opindex mtls-dialect=traditional -Use traditional TLS as the thread-local storage mechanism for dynamic accesses -of TLS variables. - -@item -march=@var{name} -@opindex march -Specify the name of the target architecture, optionally suffixed by one or -more feature modifiers. This option has the form -@option{-march=@var{arch}@r{@{}+@r{[}no@r{]}@var{feature}@r{@}*}}, where the -only value for @var{arch} is @samp{armv8-a}. The possible values for -@var{feature} are documented in the sub-section below. - -Where conflicting feature modifiers are specified, the right-most feature is -used. - -GCC uses this name to determine what kind of instructions it can emit when -generating assembly code. This option can be used in conjunction with or -instead of the @option{-mcpu=} option. - -@item -mcpu=@var{name} -@opindex mcpu -Specify the name of the target processor, optionally suffixed by one or more -feature modifiers. This option has the form -@option{-mcpu=@var{cpu}@r{@{}+@r{[}no@r{]}@var{feature}@r{@}*}}, where the -possible values for @var{cpu} are @samp{generic}, @samp{large}. The -possible values for @var{feature} are documented in the sub-section -below. - -Where conflicting feature modifiers are specified, the right-most feature is -used. - -GCC uses this name to determine what kind of instructions it can emit when -generating assembly code. - -@item -mtune=@var{name} -@opindex mtune -Specify the name of the processor to tune the performance for. The code will -be tuned as if the target processor were of the type specified in this option, -but still using instructions compatible with the target processor specified -by a @option{-mcpu=} option. This option cannot be suffixed by feature -modifiers. - -@end table - -@subsubsection @option{-march} and @option{-mcpu} feature modifiers -@cindex @option{-march} feature modifiers -@cindex @option{-mcpu} feature modifiers -Feature modifiers used with @option{-march} and @option{-mcpu} can be one -the following: - -@table @samp -@item crypto -Enable Crypto extension. This implies Advanced SIMD is enabled. -@item fp -Enable floating-point instructions. -@item simd -Enable Advanced SIMD instructions. This implies floating-point instructions -are enabled. This is the default for all current possible values for options -@option{-march} and @option{-mcpu=}. -@end table - @node ARM Options @subsection ARM Options @cindex ARM options @@ -11102,13 +10947,8 @@ setting of this option. If unaligned access is enabled then the preprocessor symbol @code{__ARM_FEATURE_UNALIGNED} will also be defined. -@item -mneon-for-64bits -@opindex mneon-for-64bits -Enables using Neon to handle scalar 64-bits operations. This is -disabled by default since the cost of moving data from core registers -to Neon is high. @end table @node AVR Options @subsection AVR Options Only in gcc/src/gcc/doc: jcf-dump.1 Only in gcc/src/gcc/doc: jv-convert.1 diff -r -U 4 gcc-compare/gcc-current/gcc/doc/md.texi gcc/src/gcc/doc/md.texi --- gcc-compare/gcc-current/gcc/doc/md.texi 2013-07-04 23:23:26.916639531 +0100 +++ gcc/src/gcc/doc/md.texi 2012-08-27 19:51:44.000000000 +0100 @@ -1652,64 +1652,8 @@ table heading for each architecture is the definitive reference for the meanings of that architecture's constraints. @table @emph -@item AArch64 family---@file{config/aarch64/constraints.md} -@table @code -@item k -The stack pointer register (@code{SP}) - -@item w -Floating point or SIMD vector register - -@item I -Integer constant that is valid as an immediate operand in an @code{ADD} -instruction - -@item J -Integer constant that is valid as an immediate operand in a @code{SUB} -instruction (once negated) - -@item K -Integer constant that can be used with a 32-bit logical instruction - -@item L -Integer constant that can be used with a 64-bit logical instruction - -@item M -Integer constant that is valid as an immediate operand in a 32-bit @code{MOV} -pseudo instruction. The @code{MOV} may be assembled to one of several different -machine instructions depending on the value - -@item N -Integer constant that is valid as an immediate operand in a 64-bit @code{MOV} -pseudo instruction - -@item S -An absolute symbolic address or a label reference - -@item Y -Floating point constant zero - -@item Z -Integer constant zero - -@item Usa -An absolute symbolic address - -@item Ush -The high part (bits 12 and upwards) of the pc-relative address of a symbol -within 4GB of the instruction - -@item Q -A memory address which uses a single base register with no offset - -@item Ump -A memory address suitable for a load/store pair instruction in SI, DI, SF and -DF modes - -@end table - @item ARM family---@file{config/arm/arm.h} @table @code @item f Floating-point register @@ -4791,12 +4735,8 @@ @item @samp{vashl@var{m}3}, @samp{vashr@var{m}3}, @samp{vlshr@var{m}3}, @samp{vrotl@var{m}3}, @samp{vrotr@var{m}3} Vector shift and rotate instructions that take vectors as operand 2 instead of a scalar type. -@cindex @code{bswap@var{m}2} instruction pattern -@item @samp{bswap@var{m}2} -Reverse the order of bytes of operand 1 and store the result in operand 0. - @cindex @code{neg@var{m}2} instruction pattern @cindex @code{ssneg@var{m}2} instruction pattern @cindex @code{usneg@var{m}2} instruction pattern @item @samp{neg@var{m}2}, @samp{ssneg@var{m}2}, @samp{usneg@var{m}2} @@ -8947,9 +8887,8 @@ @menu * Mode Iterators:: Generating variations of patterns for different modes. * Code Iterators:: Doing the same for codes. -* Int Iterators:: Doing the same for integers. @end menu @node Mode Iterators @subsection Mode Iterators @@ -9219,82 +9158,5 @@ @dots{} @end smallexample -@node Int Iterators -@subsection Int Iterators -@cindex int iterators in @file{.md} files -@findex define_int_iterator -@findex define_int_attr - -Int iterators operate in a similar way to code iterators. @xref{Code Iterators}. - -The construct: - -@smallexample -(define_int_iterator @var{name} [(@var{int1} "@var{cond1}") @dots{} (@var{intn} "@var{condn}")]) -@end smallexample - -defines a pseudo integer constant @var{name} that can be instantiated as -@var{inti} if condition @var{condi} is true. Each @var{int} -must have the same rtx format. @xref{RTL Classes}. Int iterators can appear -in only those rtx fields that have 'i' as the specifier. This means that -each @var{int} has to be a constant defined using define_constant or -define_c_enum. - -As with mode and code iterators, each pattern that uses @var{name} will be -expanded @var{n} times, once with all uses of @var{name} replaced by -@var{int1}, once with all uses replaced by @var{int2}, and so on. -@xref{Defining Mode Iterators}. - -It is possible to define attributes for ints as well as for codes and modes. -Attributes are defined using: - -@smallexample -(define_int_attr @var{name} [(@var{int1} "@var{value1}") @dots{} (@var{intn} "@var{valuen}")]) -@end smallexample - -Here's an example of int iterators in action, taken from the ARM port: - -@smallexample -(define_int_iterator QABSNEG [UNSPEC_VQABS UNSPEC_VQNEG]) - -(define_int_attr absneg [(UNSPEC_VQABS "abs") (UNSPEC_VQNEG "neg")]) - -(define_insn "neon_vq" - [(set (match_operand:VDQIW 0 "s_register_operand" "=w") - (unspec:VDQIW [(match_operand:VDQIW 1 "s_register_operand" "w") - (match_operand:SI 2 "immediate_operand" "i")] - QABSNEG))] - "TARGET_NEON" - "vq.\t%0, %1" - [(set_attr "neon_type" "neon_vqneg_vqabs")] -) - -@end smallexample - -This is equivalent to: - -@smallexample -(define_insn "neon_vqabs" - [(set (match_operand:VDQIW 0 "s_register_operand" "=w") - (unspec:VDQIW [(match_operand:VDQIW 1 "s_register_operand" "w") - (match_operand:SI 2 "immediate_operand" "i")] - UNSPEC_VQABS))] - "TARGET_NEON" - "vqabs.\t%0, %1" - [(set_attr "neon_type" "neon_vqneg_vqabs")] -) - -(define_insn "neon_vqneg" - [(set (match_operand:VDQIW 0 "s_register_operand" "=w") - (unspec:VDQIW [(match_operand:VDQIW 1 "s_register_operand" "w") - (match_operand:SI 2 "immediate_operand" "i")] - UNSPEC_VQNEG))] - "TARGET_NEON" - "vqneg.\t%0, %1" - [(set_attr "neon_type" "neon_vqneg_vqabs")] -) - -@end smallexample - @end ifset Only in gcc/src/gcc/doc: rebuild-gcj-db.1 diff -r -U 4 gcc-compare/gcc-current/gcc/doc/sourcebuild.texi gcc/src/gcc/doc/sourcebuild.texi --- gcc-compare/gcc-current/gcc/doc/sourcebuild.texi 2013-07-04 23:23:26.916639531 +0100 +++ gcc/src/gcc/doc/sourcebuild.texi 2011-07-25 17:44:22.000000000 +0100 @@ -1501,21 +1501,13 @@ @item arm_neon_hw Test system supports executing NEON instructions. -@item arm_neonv2_hw -Test system supports executing NEON v2 instructions. - @item arm_neon_ok @anchor{arm_neon_ok} ARM Target supports @code{-mfpu=neon -mfloat-abi=softfp} or compatible options. Some multilibs may be incompatible with these options. -@item arm_neonv2_ok -@anchor{arm_neon2_ok} -ARM Target supports @code{-mfpu=neon -mfloat-abi=softfp} or compatible -options. Some multilibs may be incompatible with these options. - @item arm_neon_fp16_ok @anchor{arm_neon_fp16_ok} ARM Target supports @code{-mfpu=neon-fp16 -mfloat-abi=softfp} or compatible options. Some multilibs may be incompatible with these options. diff -r -U 4 gcc-compare/gcc-current/gcc/doc/tm.texi gcc/src/gcc/doc/tm.texi --- gcc-compare/gcc-current/gcc/doc/tm.texi 2013-07-04 23:23:26.920639531 +0100 +++ gcc/src/gcc/doc/tm.texi 2012-08-10 14:21:31.000000000 +0100 @@ -9494,12 +9494,8 @@ @deftypevr {Target Hook} bool TARGET_WANT_DEBUG_PUB_SECTIONS True if the @code{.debug_pubtypes} and @code{.debug_pubnames} sections should be emitted. These sections are not used on most platforms, and in particular GDB does not use them. @end deftypevr -@deftypevr {Target Hook} bool TARGET_FORCE_AT_COMP_DIR -True if the @code{DW_AT_comp_dir} attribute should be emitted for each compilation unit. This attribute is required for the darwin linker to emit debug information. -@end deftypevr - @deftypevr {Target Hook} bool TARGET_DELAY_SCHED2 True if sched2 is not to be run at its normal place. This usually means it will be run as part of machine-specific reorg. @end deftypevr diff -r -U 4 gcc-compare/gcc-current/gcc/doc/tm.texi.in gcc/src/gcc/doc/tm.texi.in --- gcc-compare/gcc-current/gcc/doc/tm.texi.in 2013-07-04 23:23:26.916639531 +0100 +++ gcc/src/gcc/doc/tm.texi.in 2012-08-10 14:21:31.000000000 +0100 @@ -9387,10 +9387,8 @@ @end defmac @hook TARGET_WANT_DEBUG_PUB_SECTIONS -@hook TARGET_FORCE_AT_COMP_DIR - @hook TARGET_DELAY_SCHED2 @hook TARGET_DELAY_VARTRACK diff -r -U 4 gcc-compare/gcc-current/gcc/fortran/ChangeLog gcc/src/gcc/fortran/ChangeLog --- gcc-compare/gcc-current/gcc/fortran/ChangeLog 2013-07-04 23:23:26.972639532 +0100 +++ gcc/src/gcc/fortran/ChangeLog 2013-07-04 23:25:30.124642584 +0100 @@ -1,4 +1,13 @@ +2013-06-06 Tobias Burnus + + Backport from mainline + 2012-08-27 Tobias Burnus + + PR fortran/54370 + * trans-stmt.c (gfc_trans_do_while): Don't change the logical + kind for negation of the condition. + 2013-06-01 Janus Weil Tobias Burnus PR fortran/57217 Only in gcc/src/gcc/fortran: gfortran.info diff -r -U 4 gcc-compare/gcc-current/gcc/fortran/trans-stmt.c gcc/src/gcc/fortran/trans-stmt.c --- gcc-compare/gcc-current/gcc/fortran/trans-stmt.c 2013-07-04 23:23:26.976639533 +0100 +++ gcc/src/gcc/fortran/trans-stmt.c 2013-07-04 23:25:30.124642584 +0100 @@ -1742,9 +1742,9 @@ gfc_init_se (&cond, NULL); gfc_conv_expr_val (&cond, code->expr1); gfc_add_block_to_block (&block, &cond.pre); cond.expr = fold_build1_loc (code->expr1->where.lb->location, - TRUTH_NOT_EXPR, boolean_type_node, cond.expr); + TRUTH_NOT_EXPR, TREE_TYPE (cond.expr), cond.expr); /* Build "IF (! cond) GOTO exit_label". */ tmp = build1_v (GOTO_EXPR, exit_label); TREE_USED (exit_label) = 1; Only in gcc/src/gcc: gengtype-lex.c diff -r -U 4 gcc-compare/gcc-current/gcc/LINARO-VERSION gcc/src/gcc/LINARO-VERSION --- gcc-compare/gcc-current/gcc/LINARO-VERSION 2013-07-04 23:23:26.944639532 +0100 +++ gcc/src/gcc/LINARO-VERSION 2013-07-04 23:25:30.064642583 +0100 @@ -1 +1 @@ -4.7-2013.06-1 +4.7-2013.05-1~dev Only in gcc/src/gcc/po: be.gmo Only in gcc/src/gcc/po: da.gmo Only in gcc/src/gcc/po: de.gmo Only in gcc/src/gcc/po: el.gmo Only in gcc/src/gcc/po: es.gmo Only in gcc/src/gcc/po: fi.gmo Only in gcc/src/gcc/po: fr.gmo Only in gcc/src/gcc/po: hr.gmo Only in gcc/src/gcc/po: id.gmo Only in gcc/src/gcc/po: ja.gmo Only in gcc/src/gcc/po: nl.gmo Only in gcc/src/gcc/po: ru.gmo Only in gcc/src/gcc/po: sr.gmo Only in gcc/src/gcc/po: sv.gmo Only in gcc/src/gcc/po: tr.gmo Only in gcc/src/gcc/po: vi.gmo Only in gcc/src/gcc/po: zh_CN.gmo Only in gcc/src/gcc/po: zh_TW.gmo diff -r -U 4 gcc-compare/gcc-current/gcc/testsuite/ChangeLog gcc/src/gcc/testsuite/ChangeLog --- gcc-compare/gcc-current/gcc/testsuite/ChangeLog 2013-07-04 23:23:26.980639533 +0100 +++ gcc/src/gcc/testsuite/ChangeLog 2013-07-04 23:25:30.120642584 +0100 @@ -1,4 +1,17 @@ +2013-06-09 Jakub Jelinek + + PR target/57568 + * gcc.c-torture/execute/pr57568.c: New test. + +2013-06-06 Tobias Burnus + + Backport from mainline + 2012-08-27 Tobias Burnus + + PR fortran/54370 + * gfortran.dg/do_5.f90: New. + 2013-06-01 Janus Weil Tobias Burnus PR fortran/57217 Only in gcc/src/gcc/testsuite/gcc.c-torture/execute: pr57568.c Only in gcc/src/gcc/testsuite/gfortran.dg: do_5.f90 Only in gcc-compare/gcc-current/: .git Only in gcc/src/: LAST_UPDATED Only in gcc/src/libcpp: autom4te.cache Only in gcc/src/libcpp/po: be.gmo Only in gcc/src/libcpp/po: ca.gmo Only in gcc/src/libcpp/po: da.gmo Only in gcc/src/libcpp/po: de.gmo Only in gcc/src/libcpp/po: el.gmo Only in gcc/src/libcpp/po: eo.gmo Only in gcc/src/libcpp/po: es.gmo Only in gcc/src/libcpp/po: fi.gmo Only in gcc/src/libcpp/po: fr.gmo Only in gcc/src/libcpp/po: id.gmo Only in gcc/src/libcpp/po: ja.gmo Only in gcc/src/libcpp/po: nl.gmo Only in gcc/src/libcpp/po: ru.gmo Only in gcc/src/libcpp/po: sr.gmo Only in gcc/src/libcpp/po: sv.gmo Only in gcc/src/libcpp/po: tr.gmo Only in gcc/src/libcpp/po: uk.gmo Only in gcc/src/libcpp/po: vi.gmo Only in gcc/src/libcpp/po: zh_CN.gmo Only in gcc/src/libcpp/po: zh_TW.gmo Only in gcc/src/libffi: autom4te.cache diff -r -U 4 gcc-compare/gcc-current/libgcc/ChangeLog gcc/src/libgcc/ChangeLog --- gcc-compare/gcc-current/libgcc/ChangeLog 2013-07-04 23:23:26.776639528 +0100 +++ gcc/src/libgcc/ChangeLog 2013-07-04 23:25:30.120642584 +0100 @@ -1,4 +1,17 @@ +2013-06-08 Walter Lee + + Backport from mainline: + 2013-06-08 Walter Lee + + * config/tilepro/atomic.h: Don't include stdint.h or features.h. + Replace int64_t with long long. Add __extension__ where + appropriate. + +2013-06-06 Douglas B Rupp + + * config.host (arm-wrs-vxworks): Configure with other soft float. + 2013-05-20 Chung-Ju Wu Backport from mainline: 2012-05-24 Olivier Hainque diff -r -U 4 gcc-compare/gcc-current/libgcc/config/tilepro/atomic.h gcc/src/libgcc/config/tilepro/atomic.h --- gcc-compare/gcc-current/libgcc/config/tilepro/atomic.h 2013-07-04 23:23:26.784639528 +0100 +++ gcc/src/libgcc/config/tilepro/atomic.h 2013-07-04 23:25:30.120642584 +0100 @@ -1,7 +1,6 @@ /* Macros for atomic functionality for tile. - Copyright (C) 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 2011-2013 Free Software Foundation, Inc. Contributed by Walter Lee (walt@tilera.com) This file is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -92,10 +91,8 @@ routines are implemented by looping over the 64-bit compare-and-exchange routine, so may be potentially less efficient. */ #endif -#include -#include #ifdef __tilegx__ #include #else #include @@ -122,11 +119,11 @@ } /* 64-bit integer compare-and-exchange. */ static __inline __attribute__ ((always_inline)) - int64_t arch_atomic_val_compare_and_exchange_8 (volatile int64_t * mem, - int64_t oldval, - int64_t newval) + long long arch_atomic_val_compare_and_exchange_8 (volatile long long + *mem, long long oldval, + long long newval) { #ifdef __tilegx__ __insn_mtspr (SPR_CMPEXCH_VALUE, oldval); return __insn_cmpexch (mem, newval); @@ -139,9 +136,9 @@ "R02" (oldval_lo), "R03" (oldval_hi), "R04" (newval_lo), "R05" (newval_hi), "m" (*mem):"r20", "r21", "r22", "r23", "r24", "r25", "r26", "r27", "r28", "r29", "memory"); - return ((uint64_t) result_hi) << 32 | result_lo; + return ((long long) result_hi) << 32 | result_lo; #endif } /* This non-existent symbol is called for sizes other than "4" and "8", @@ -150,13 +147,13 @@ __attribute__ ((warning ("sizeof atomic argument not 4 or 8"))); #define arch_atomic_val_compare_and_exchange(mem, o, n) \ - ({ \ + __extension__ ({ \ (__typeof(*(mem)))(__typeof(*(mem)-*(mem))) \ ((sizeof(*(mem)) == 8) ? \ arch_atomic_val_compare_and_exchange_8( \ - (volatile int64_t*)(mem), (__typeof((o)-(o)))(o), \ + (volatile long long*)(mem), (__typeof((o)-(o)))(o), \ (__typeof((n)-(n)))(n)) : \ (sizeof(*(mem)) == 4) ? \ arch_atomic_val_compare_and_exchange_4( \ (volatile int*)(mem), (__typeof((o)-(o)))(o), \ @@ -164,9 +161,9 @@ __arch_atomic_error_bad_argument_size()); \ }) #define arch_atomic_bool_compare_and_exchange(mem, o, n) \ - ({ \ + __extension__ ({ \ __typeof(o) __o = (o); \ __builtin_expect( \ __o == arch_atomic_val_compare_and_exchange((mem), __o, (n)), 1); \ }) @@ -174,9 +171,9 @@ /* Loop with compare_and_exchange until we guess the correct value. Normally "expr" will be an expression using __old and __value. */ #define __arch_atomic_update_cmpxchg(mem, value, expr) \ - ({ \ + __extension__ ({ \ __typeof(value) __value = (value); \ __typeof(*(mem)) *__mem = (mem), __old = *__mem, __guess; \ do { \ __guess = __old; \ @@ -189,14 +186,16 @@ /* Generic atomic op with 8- or 4-byte variant. The _mask, _addend, and _expr arguments are ignored on tilegx. */ #define __arch_atomic_update(mem, value, op, _mask, _addend, _expr) \ - ({ \ + __extension__ ({ \ ((__typeof(*(mem))) \ ((sizeof(*(mem)) == 8) ? (__typeof(*(mem)-*(mem)))__insn_##op( \ - (void *)(mem), (int64_t)(__typeof((value)-(value)))(value)) : \ + (volatile void *)(mem), \ + (long long)(__typeof((value)-(value)))(value)) : \ (sizeof(*(mem)) == 4) ? (int)__insn_##op##4( \ - (void *)(mem), (int32_t)(__typeof((value)-(value)))(value)) : \ + (volatile void *)(mem), \ + (int)(__typeof((value)-(value)))(value)) : \ __arch_atomic_error_bad_argument_size())); \ }) #else @@ -224,9 +223,9 @@ /* Generic atomic op with 8- or 4-byte variant. The _op argument is ignored on tilepro. */ #define __arch_atomic_update(mem, value, _op, mask, addend, expr) \ - ({ \ + __extension__ ({ \ (__typeof(*(mem)))(__typeof(*(mem)-*(mem))) \ ((sizeof(*(mem)) == 8) ? \ __arch_atomic_update_cmpxchg((mem), (value), (expr)) : \ (sizeof(*(mem)) == 4) ? \ @@ -263,15 +262,15 @@ #define arch_atomic_nand(mem, mask) \ __arch_atomic_update_cmpxchg(mem, mask, ~(__old & __value)) #define arch_atomic_bit_set(mem, bit) \ - ({ \ + __extension__ ({ \ __typeof(*(mem)) __mask = (__typeof(*(mem)))1 << (bit); \ __mask & arch_atomic_or((mem), __mask); \ }) #define arch_atomic_bit_clear(mem, bit) \ - ({ \ + __extension__ ({ \ __typeof(*(mem)) __mask = (__typeof(*(mem)))1 << (bit); \ __mask & arch_atomic_and((mem), ~__mask); \ }) diff -r -U 4 gcc-compare/gcc-current/libgcc/config.host gcc/src/libgcc/config.host --- gcc-compare/gcc-current/libgcc/config.host 2013-07-04 23:23:26.800639528 +0100 +++ gcc/src/libgcc/config.host 2013-07-04 23:25:30.120642584 +0100 @@ -327,9 +327,9 @@ extra_parts="$extra_parts vms-dwarf2.o vms-dwarf2eh.o" md_unwind_header=alpha/vms-unwind.h ;; arm-wrs-vxworks) - tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-fdpbit" + tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp" extra_parts="$extra_parts crti.o crtn.o" ;; arm*-*-freebsd*) tmake_file="$tmake_file arm/t-arm arm/t-strongarm-elf t-fdpbit" Only in gcc/src/libgo: autom4te.cache diff -r -U 4 gcc-compare/gcc-current/libgomp/env.c gcc/src/libgomp/env.c --- gcc-compare/gcc-current/libgomp/env.c 2013-07-04 23:23:27.660639549 +0100 +++ gcc/src/libgomp/env.c 2013-07-04 23:25:30.140642585 +0100 @@ -41,8 +41,9 @@ # include # endif # endif #endif +#include #include #include #ifndef HAVE_STRTOULL Only in gcc/src/libgomp: libgomp.info Only in gcc/src/libitm: libitm.info Only in gcc/src/libjava: autom4te.cache Only in gcc/src/libjava/classpath: autom4te.cache Only in gcc/src/libjava/classpath/doc: cp-tools.info Only in gcc/src/libjava/classpath/doc: gappletviewer.1 Only in gcc/src/libjava/classpath/doc: gjar.1 Only in gcc/src/libjava/classpath/doc: gjarsigner.1 Only in gcc/src/libjava/classpath/doc: gjavah.1 Only in gcc/src/libjava/classpath/doc: gjdoc.1 Only in gcc/src/libjava/classpath/doc: gkeytool.1 Only in gcc/src/libjava/classpath/doc: gnative2ascii.1 Only in gcc/src/libjava/classpath/doc: gorbd.1 Only in gcc/src/libjava/classpath/doc: grmid.1 Only in gcc/src/libjava/classpath/doc: grmiregistry.1 Only in gcc/src/libjava/classpath/doc: gserialver.1 Only in gcc/src/libjava/classpath/doc: gtnameserv.1 Only in gcc/src/libquadmath: libquadmath.info Only in gcc/src/libstdc++-v3: autom4te.cache diff -r -U 4 gcc-compare/gcc-current/maintainer-scripts/gcc_release gcc/src/maintainer-scripts/gcc_release --- gcc-compare/gcc-current/maintainer-scripts/gcc_release 2013-07-04 23:23:28.500639570 +0100 +++ gcc/src/maintainer-scripts/gcc_release 2013-07-04 23:25:30.108642584 +0100 @@ -143,9 +143,9 @@ rm -rf ${SOURCE_DIRECTORY} fi # Tag the sources. - if [ -n "${TAG}" ]; then + if false || [ -n "${TAG}" ]; then inform "Tagging sources as ${TAG}" # We don't want to overwrite an existing tag. So, if the tag # already exists, issue an error message; the release manager can # manually remove the tag if appropriate. @@ -156,15 +156,16 @@ ${SVN} -m "Tagging source as ${TAG}" cp "${SVNROOT}/${SVNBRANCH}" "${SVNROOT}/${TAG}" || \ error "Could not tag sources" SVNBRANCH=${TAG} fi - SVNREV=`${SVN} info "${SVNROOT}/${SVNBRANCH}"|awk '/Revision:/ {print $2}'` + #SVNREV=`${SVN} info "${SVNROOT}/${SVNBRANCH}"|awk '/Revision:/ {print $2}'` # Export the current sources. - inform "Retrieving sources (svn export -r ${SVNREV} ${SVNROOT}/${SVNBRANCH})" + inform "Copying sources (cp -a /scratch/packages/gcc/bzr/4.7 ...)" - ${SVN} -q export -r${SVNREV} "${SVNROOT}/${SVNBRANCH}" "`basename ${SOURCE_DIRECTORY}`" ||\ - error "Could not retrieve sources" + #${SVN} -q export -r${SVNREV} "${SVNROOT}/${SVNBRANCH}" "`basename ${SOURCE_DIRECTORY}`" ||\ + # error "Could not retrieve sources" + cp -a /scratch/packages/gcc/bzr/4.7 "`basename ${SOURCE_DIRECTORY}`" # Run gcc_update on them to set up the timestamps nicely, and (re)write # the LAST_UPDATED file containing the SVN tag/revision used. changedir "gcc-${RELEASE}" @@ -183,10 +184,10 @@ export DESTDIR ${SOURCE_DIRECTORY}/gcc/doc/install.texi2html # Regenerate the NEWS file. - contrib/gennews > NEWS || \ - error "Could not regenerate NEWS files" + #contrib/gennews > NEWS || \ + # error "Could not regenerate NEWS files" # Now, we must build the compiler in order to create any generated # files that are supposed to go in the source directory. This is # also a good sanity check to make sure that the release builds Only in gcc/src/: MD5SUMS Only in gcc/src/: NEWS debian/patches/gcc/series0000664000000000000000000000032212272242462012570 0ustar # Linaro branch and svn updates gcc-linaro.diff -p1 svn-updates-linaro.diff -p1 # Enable -fuse-ld=gold gold-and-ld.diff -p1 # "build" docs gcc-gfdl-build.diff -p1 # Android specific ANDROID-libgomp.diff -p1 debian/patches/android/0000775000000000000000000000000012165372204012241 5ustar debian/patches/android/doko-changes.patch0000664000000000000000000041132412165300313015621 0ustar --- a/android/device/linaro/pandaboard/BoardConfig.mk +++ b/android/device/linaro/pandaboard/BoardConfig.mk @@ -28,7 +28,6 @@ OMAP_ENHANCEMENT := true HARDWARE_OMX := false USE_CAMERA_STUB := true -INCLUDE_PERF := 0 BOARD_HAVE_BLUETOOTH := true BOARD_HAVE_BLUETOOTH_BCM := true --- a/android/device/linaro/common/disablesuspend.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/system/bin/sh -# -# Author: Linaro Validation Team -# -# These files are Copyright (C) 2012 Linaro Limited and they -# are licensed under the Apache License, Version 2.0. -# You may obtain a copy of this license at -# http://www.apache.org/licenses/LICENSE-2.0 - - stay_awake="delete from system where name='stay_on_while_plugged_in'; insert into system (name, value) values ('stay_on_while_plugged_in','3');" - screen_sleep="delete from system where name='screen_off_timeout'; insert into system (name, value) values ('screen_off_timeout','-1');" - lockscreen="delete from secure where name='lockscreen.disabled'; insert into secure (name, value) values ('lockscreen.disabled','1');" - sqlite3 /data/data/com.android.providers.settings/databases/settings.db "${stay_awake}" ## set stay awake - sqlite3 /data/data/com.android.providers.settings/databases/settings.db "${screen_sleep}" # set sleep to none - sqlite3 /data/data/com.android.providers.settings/databases/settings.db "${lockscreen}" ##set lock screen to none - input keyevent 82 ##unlock the home screen - service call power 1 i32 26 ##acquireWakeLock FULL_WAKE_LOCK --- a/android/device/linaro/common/common.mk +++ b/android/device/linaro/common/common.mk @@ -1,19 +1,10 @@ # stuff common to all Linaro LEB include $(LOCAL_PATH)/ZeroXBenchmark.mk -ifneq ($(wildcard $(TOP)/packages/apps/AndroidTerm/Android.mk),) -# Include AndroidTerm only if it's part of the manifest -ANDROIDTERM := AndroidTerm libjackpal-androidterm4 -endif -ifneq ($(wildcard $(TOP)/packages/inputmethods/hackerskeyboard/Android.mk),) -HACKERSKEYBOARD := PCKeyboard -endif - PRODUCT_PACKAGES := \ AccountAndSyncSettings \ AlarmClock \ AlarmProvider \ - $(ANDROIDTERM) \ Bluetooth \ Calculator \ Calendar \ @@ -26,83 +17,14 @@ Launcher2 \ Mms \ Music \ - $(HACKERSKEYBOARD) \ Provision \ Settings \ - SystemUI \ Sync \ Updater \ CalendarProvider \ SyncProvider \ - faketsd \ ZeroXBenchmark \ - hwcomposer.default \ libmicro \ - powertop \ - mmtest \ - $(ZEROXBENCHMARK_NATIVE_APPS) \ - GLMark2 \ - libglmark2-android \ - gatord \ - LinaroWallpaper \ - LiveWallpapers \ - LiveWallpapersPicker \ - MagicSmokeWallpapers \ - VisualizationWallpapers \ - librs_jni \ - mediaframeworktest \ - libtinyalsa \ - tinyplay \ - tinycap \ - tinymix \ - libaudioutils \ - ConnectivityManagerTest \ - iozone \ - memtester \ - stress \ - stressapptest \ - DisableSuspend \ - libncurses \ - htop \ - cyclictest \ - sysbench - -#packages we are using for benchmarking -PRODUCT_PACKAGES += \ - v8shell \ - skia_bench - -V8BENCHMARKS := $(foreach js,$(wildcard $(TOP)/external/v8/benchmarks/*.js),\ - $(js):data/benchmark/v8/$(notdir $(js))) - -PRODUCT_COPY_FILES := \ - device/linaro/common/wallpaper_info.xml:data/system/wallpaper_info.xml \ - device/linaro/common/disablesuspend.sh:system/bin/disablesuspend.sh \ - $(V8BENCHMARKS) - -define copy-howto -ifneq ($(wildcard $(TOP)/device/linaro/common/howto/$(LINARO_BUILD_SPEC)/$1),) -PRODUCT_COPY_FILES += \ - device/linaro/common/howto/$(LINARO_BUILD_SPEC)/$1:howto/$1 -else -ifneq ($(wildcard $(TOP)/device/linaro/common/howto/default/$1),) -PRODUCT_COPY_FILES += \ - device/linaro/common/howto/default/$1:howto/$1 -endif -endif -endef - -HOWTOS := \ - OPEN-EULA.txt \ - HOWTO_install.txt \ - HOWTO_getsourceandbuild.txt \ - HOWTO_flashfirmware.txt \ - HOWTO_releasenotes.txt \ - HOWTO_rtsm.txt - -PRODUCT_COPY_FILES += \ - device/linaro/common/media_codecs.xml:system/etc/media_codecs.xml - -$(foreach howto,$(HOWTOS),$(eval $(call copy-howto,$(howto)))) + $(ZEROXBENCHMARK_NATIVE_APPS) $(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk) --- a/android/device/linaro/common/init.partitions-with-kernelpartition.rc +++ /dev/null @@ -1,10 +0,0 @@ -# Mount MMC partitions -on fs - # mmcblk0p1: Kernel/bootloader partition - # mmcblk0p2: /boot - mount ext4 /dev/block/mmcblk0p3 /system wait ro - chmod 0755 /system - # mmcblk0p4: extended partition container - mount ext4 /dev/block/mmcblk0p5 /cache wait - mount ext4 /dev/block/mmcblk0p6 /data wait - # mmcblk0p7: /sdcard --- a/android/device/linaro/common/wpa_supplicant.conf +++ /dev/null @@ -1,6 +0,0 @@ -##### wpa_supplicant configuration file template ##### -update_config=1 -ctrl_interface=wlan0 -eapol_version=1 -ap_scan=1 -fast_reauth=1 --- a/android/device/linaro/common/NOTICE +++ /dev/null @@ -1,5 +0,0 @@ -These files are Copyright (C) 2011-2012 Linaro Limited and they -are licensed under the Apache License, Version 2.0. -You may obtain a copy of this license at -http://www.apache.org/licenses/LICENSE-2.0 - --- a/android/device/linaro/common/init.partitions.rc +++ /dev/null @@ -1,9 +0,0 @@ -# Mount MMC partitions -on fs - # mmcblk0p1: /boot - mount ext4 /dev/block/mmcblk0p2 /system wait ro - chmod 0755 /system - mount ext4 /dev/block/mmcblk0p3 /cache wait - # mmcblk0p4: extended partition container - mount ext4 /dev/block/mmcblk0p5 /data wait - # mmcblk0p6: /sdcard --- a/android/device/linaro/common/android.hardware.bluetooth.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - --- a/android/device/linaro/common/wallpaper_info.xml +++ /dev/null @@ -1,2 +0,0 @@ - - --- a/android/device/linaro/common/media_codecs.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - --- a/android/device/linaro/common/fake-ts/Android.mk +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright (C) 2011 Linaro Limited -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -LOCAL_PATH:= $(call my-dir) - -ifneq ($(TARGET_SIMULATOR),true) - -include $(CLEAR_VARS) - -LOCAL_MODULE := faketsd - -LOCAL_MODULE_TAGS := optional - -LOCAL_SRC_FILES := fake-ts.c -LOCAL_PRELINK_MODULE := false - -include $(BUILD_EXECUTABLE) - -endif # !TARGET_SIMULATOR --- a/android/device/linaro/common/fake-ts/fake-ts.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (C) 2011 Linaro Limited - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either - * express or implied. - * See the License for the specific language governing permissions - * and limitations under the License. - */ - -#include -#include -#include -#include - -#include - -/* look up source file system/core/init/devices.c for exact node */ -#define UINPUT_DEV "/dev/uinput" - -#define DEV_NAME "Fake Touchscreen" - -static int uinput_fd = 0; - -static void uinput_touch_init(const char* uinput_dev, - const char* dev_name) -{ - struct uinput_user_dev dev; - - uinput_fd = open(uinput_dev, O_WRONLY); - if (uinput_fd <= 0) { - perror("Error opening uinput device.\n"); - return; - } - memset(&dev, 0, sizeof(dev)); - strcpy(dev.name, dev_name); - write(uinput_fd, &dev, sizeof(dev)); - - /* touch screen event */ - ioctl(uinput_fd, UI_SET_EVBIT, EV_ABS); - ioctl(uinput_fd, UI_SET_ABSBIT, ABS_X); - ioctl(uinput_fd, UI_SET_ABSBIT, ABS_Y); - ioctl(uinput_fd, UI_SET_EVBIT, EV_KEY); - ioctl(uinput_fd, UI_SET_KEYBIT, BTN_TOUCH); - - /* register userspace input device */ - ioctl(uinput_fd, UI_DEV_CREATE, 0); -} - -static void uinput_touch_deinit() -{ - if (uinput_fd > 0) { - close(uinput_fd); - } -} - -int main(int argc, char* argv[]) -{ - uinput_touch_init(UINPUT_DEV, DEV_NAME); - - while (1) { - sleep(60); - } - - uinput_touch_deinit(); - - return 0; -} - --- a/android/device/linaro/common/howto/default/HOWTO_getsourceandbuild.txt +++ /dev/null @@ -1,82 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android//":https://android-build.linaro.org/builds/~linaro-android// - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Save linaro_android_build_cmds.sh to where you'd like to make your build. - -h2. Run the build script - -The linaro_android_build_cmds.sh script will download the source and create the build. - -
-  $ chmod +x linaro_android_build_cmds.sh
-  $ ./linaro_android_build_cmds.sh
-
- -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev --boot out/target/product//boot.tar.bz2 --system out/target/product//system.tar.bz2 --userdata out/target/product//userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev --boot out/target/product//boot.tar.bz2 --system out/target/product//system.tar.bz2 --userdata -out/target/product//userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt - - --- a/android/device/linaro/common/howto/default/HOWTO_prebuilt.txt +++ /dev/null @@ -1,69 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android// - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product//boot.tar.bz2 - target/product//system.tar.bz2 - target/product//userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - To find run linaro-android-media-create with a -h and read the help. - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/default/HOWTO_install.txt +++ /dev/null @@ -1,77 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android//":https://android-build.linaro.org/builds/~linaro-android// - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product//boot.tar.bz2 -* target/product//system.tar.bz2 -* target/product//userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -To find run linaro-android-media-create with a -h and read the help. - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/panda-jb-gcc47-tilt-tracking-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,67 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-tracking-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/panda/boot.tar.bz2 - target/product/panda/system.tar.bz2 - target/product/panda/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/panda-jb-gcc47-tilt-tracking-blob/HOWTO_install.txt +++ /dev/null @@ -1,75 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-tracking-blob/":https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-tracking-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/panda/boot.tar.bz2 -* target/product/panda/system.tar.bz2 -* target/product/panda/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/nexus7-jb-gcc47-aosp-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,84 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~berolinux/nexus7-jb-gcc47-aosp-blob/ - -= Get artifacts = - - (You don't need the artifacts if you wish to build from source) - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/grouper/boot.img - target/product/grouper/system.img - target/product/grouper/userdata.img - -= Get and build source = - - (You don't need the source if you wish to install from the binaries) - - $ mkdir linaro-nexus7 - $ cd linaro-nexus7 - $ repo init -u git://android.git.linaro.org/ -b linaro-playground -m staging-nexus7.git - $ repo sync - $ make TARGET_PRODUCT=full_grouper TARGET_TOOLS_PREFIX=/path/to/your/linaro/android/toolchain/bin/arm-linux-androideabi- droidcore -j4 - -= Get merge-nexus7-blobs script = - - The script is available from: - - http://android.git.linaro.org/gitweb?p=device/asus/grouper.git;a=blob_plain;f=merge-nexus7-blobs;hb=linaro-playground - - or from git: - - $ git clone git://android.git.linaro.org/device/asus/grouper.git - $ cd grouper - $ git checkout -b linaro-playground origin/linaro-playground - - Make sure your computer is connected to the Internet, since - the script downloads non-free binaries and tools to extract images. - - Run merge-nexus7-blobs script, giving the directory containing the .img files - as its sole argument. - - The script will do the remaining bits for you, including flashing the tablet. - - WARNING: There is no guarantee whatsoever that the build will work. - If it breaks your tablet, you get to keep both pieces. - -= Install Google Apps = - -If you wish to use the device as a real tablet rather than a pure development -device, chances are that you want to install the Google Apps on it: - - * Install the Linaro Android build as described above - - * Grab the current Google Apps zip for JellyBean from http://goo.im/gapps - At the time of the writing, the current version is: - http://goo.im/gapps/gapps-jb-20120726-signed.zip - - * If you downloaded from a device other than your Nexus 7, transfer - the file to your Nexus 7 using: - - mtp-sendfile gapps-jb*.zip 8 - - * Turn your Nexus 7 off completely - - * Hold down the Volume Up and Volume Down buttons at the same time, and turn - on the device - - * Use the Volume Up button to select "Recovery mode", then press the power - button to launch it. Wait for recovery to come up. - - * Select "install zip from sdcard" - - * Select "choose zip from sdcard" - - * Choose the gapps-jb zip file you downloaded earlier (it should be in the - Download/ folder) - - * Select "Yes - Install gapps-jb-*-signed.zip" - - * Select "+++++Go Back+++++" - - * Select "reboot system now" - - * Enjoy your Google Apps enabled Linaro Android build! --- a/android/device/linaro/common/howto/nexus7-jb-gcc47-aosp-blob/HOWTO_install.txt +++ /dev/null @@ -1,64 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~berolinux/nexus7-jb-gcc47-aosp-blob/":https://android-build.linaro.org/builds/~berolinux/nexus7-jb-gcc47-aosp-blob/ - -h2. Get artifacts - -(You don't need the artifacts if you wish to build from source) - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/grouper/boot.img -* target/product/grouper/system.img -* target/product/grouper/userdata.img - -h2. Get and build source - -(You don't need the source if you wish to install from the binaries) - -
-  $ mkdir linaro-nexus7
-  $ cd linaro-nexus7
-  $ repo init -u git://android.git.linaro.org/ -b linaro-playground -m staging-nexus7.git
-  $ repo sync
-  $ make TARGET_PRODUCT=full_grouper TARGET_TOOLS_PREFIX=/path/to/your/linaro/android/toolchain/bin/arm-linux-androideabi- droidcore -j4
-
- -h2. Get merge-nexus7-blobs script - -The script is available from: - -"http://android.git.linaro.org/gitweb?p=device/asus/grouper.git;a=blob_plain;f=merge-nexus7-blobs;hb=linaro-playground":http://android.git.linaro.org/gitweb?p=device/asus/grouper.git;a=blob_plain;f=merge-nexus7-blobs;hb=linaro-playground - -or from git: - -
-  $ git clone git://android.git.linaro.org/device/asus/grouper.git
-  $ cd grouper
-  $ git checkout -b linaro-playground origin/linaro-playground
-
- -Make sure your computer is connected to the Internet, since the script downloads non-free binaries and tools to extract images. - -Run merge-nexus7-blobs script, giving the directory containing the .img files as its sole argument. - -The script will do the remaining bits for you, including flashing the tablet. - -*WARNING* There is no guarantee whatsoever that the build will work. -If it breaks your tablet, you get to keep both pieces. - -h2. Install Google Apps - -If you wish to use the device as a real tablet rather than a pure development device, chances are that you want to install the Google Apps on it: -* Install the Linaro Android build as described above -* Grab the current Google Apps zip for JellyBean from "http://goo.im/gapps":http://goo.im/gapps . At the time of the writing, the current version is: "gapps-jb-20120726-signed.zip":http://goo.im/gapps/gapps-jb-20120726-signed.zip -* If you downloaded from a device other than your Nexus 7, transfer the file to your Nexus 7 using: mtp-sendfile gapps-jb*.zip 8 -* Turn your Nexus 7 off completely -* Hold down the Volume Up and Volume Down buttons at the same time, and turn on the device -* Use the Volume Up button to select "Recovery mode", then press the power button to launch it. Wait for recovery to come up. -* Select "install zip from sdcard" -* Select "choose zip from sdcard" -* Choose the gapps-jb zip file you downloaded earlier (it should be in the Download/ folder) -* Select "Yes - Install gapps-jb-*-signed.zip" -* Select "+++++Go Back+++++" -* Select "reboot system now" -* Enjoy your Google Apps enabled Linaro Android build! --- a/android/device/linaro/common/howto/panda-jb-gcc47-tilt-stable-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,73 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-stable-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/panda/boot.tar.bz2 - target/product/panda/system.tar.bz2 - target/product/panda/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Install graphics libraries - - $ wget http://people.linaro.org/~vishalbhoj/install-binaries-4.0.4.sh - $ chmod a+x install-binaries-4.0.4.sh - $ ./install-binaries-4.0.4.sh - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/panda-jb-gcc47-tilt-stable-blob/HOWTO_install.txt +++ /dev/null @@ -1,81 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-stable-blob/":https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcc47-tilt-stable-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/panda/boot.tar.bz2 -* target/product/panda/system.tar.bz2 -* target/product/panda/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Install graphics libraries - -
-  $ wget http://people.linaro.org/~vishalbhoj/install-binaries-4.0.4.sh
-  $ chmod a+x install-binaries-4.0.4.sh
-  $ ./install-binaries-4.0.4.sh
-
- -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/snowball-jb-gcc47-igloo-stable-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,153 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-igloo-stable-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/snowball/boot.tar.bz2 - target/product/snowball/system.tar.bz2 - target/product/snowball/userdata.tar.bz2 - - Accept the end-user license agreement - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt - -= Notes = - - * Note 1 - Outdated U-Boot - - During the 12.05 cycle, U-Boot changed and must be upgraded in eMMC if your - boot line is older than: U-boot 2012.04.01 (May 24 2012 - 19:50:12) - - If you only want to be able to boot from the SD card and don't care about - booting from the eMMC (internal flash), the quick solution is to do: - - $ sudo linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - $ sudo riff -f snowball.img - - If you don't have riff, follow the instructions below to install it. - - If you want to be able to boot from the eMMC, you need to modify a few lines - in init.partitions.rc file. - - $ mkdir temp - $ cd temp - $ mv ../boot.tar.bz2 . - $ tar xjf boot.tar.bz2 - $ cd boot - $ mkdir temp - $ cd temp - $ mv ../uInitrd . - $ dd if=uInitrd of=initrd.gz bs=64 skip=1 - $ gunzip initrd.gz - $ mkdir init - $ cd init - $ cpio -i < ../initrd - - Open the init.partition.rc file and follow the instruction in the file - - $ sudo find . | cpio -o -H newc | gzip > ../newinitrd.cpio.gz - $ mkimage -A arm -O linux -T ramdisk -C gzip -a 0 -e 0 -n initramfs -d ../newinitrd.cpio.gz ../uInitrd.new - $ cd ../.. - $ cp temp/init/uInitrd.new uInitrd - $ rm -rf temp - $ cd .. - $ tar cjf boot.tar.bz2 boot - $ cd .. - $ mv temp/boot.tar.bz2 . - $ rm -rf temp - - Download startupfiles from - http://www.igloocommunity.org/download/linaro/startupfiles/latest - - $ tar -xvf startupfiles_3.0.8-0.tar.gz - $ linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - $ sudo add-apt-repository ppa:igloocommunity-maintainers/snowball-tools - $ sudo apt-get update - $ sudo apt-get install riff - - (OPTIONAL) Remove the PPA - - $ sudo add-apt-repository --remove ppa:igloocommunity-maintainers/snowball-tools - - Turn off the board - - $ sudo riff -f snowball.img - - Connect your board using the OTG USB port (next to power supply port) to - your PC - Turn on the board - Riff will detect the board and start the execution - When execution is finalized riff will exit - - On the first boot, the user interface can take up to 10 minutes to come up. - Please be patient. If the board doesn't come up, you might be affected by - https://bugs.launchpad.net/bugs/823313 bug. - - * Note 2 - ADB only works over IP - - In the console type: - stop adbd - setprop service.adb.tcp.port 6565 - start adbd - ifconfig eth0 # to get boardsIP - - On the host type: - adb connect boardsIP:6565 --- a/android/device/linaro/common/howto/snowball-jb-gcc47-igloo-stable-blob/HOWTO_install.txt +++ /dev/null @@ -1,169 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-igloo-stable-blob/":https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-igloo-stable-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/snowball/boot.tar.bz2 -* target/product/snowball/system.tar.bz2 -* target/product/snowball/userdata.tar.bz2 - -*Accept* the end-user license agreement - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt - -h2. Notes - -* Note 1 - Outdated U-Boot - -During the 12.05 cycle, U-Boot changed and must be upgraded in eMMC if your -boot line is older than: U-boot 2012.04.01 (May 24 2012 - 19:50:12) - -If you only want to be able to boot from the SD card and don't care about -booting from the eMMC (internal flash), the quick solution is to do: - -
-   $ sudo linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
-   $ sudo riff -f snowball.img
-
- -If you don't have riff, follow the instructions below to install it. - -If you want to be able to boot from the eMMC, you need to modify a few lines -in init.partitions.rc file. - -
-   $ mkdir temp
-   $ cd temp
-   $ mv ../boot.tar.bz2 .
-   $ tar xjf boot.tar.bz2
-   $ cd boot
-   $ mkdir temp
-   $ cd temp
-   $ mv ../uInitrd .
-   $ dd if=uInitrd of=initrd.gz bs=64 skip=1
-   $ gunzip initrd.gz
-   $ mkdir init
-   $ cd init
-   $ cpio -i < ../initrd
-
- -Open the init.partition.rc file and follow the instruction in the file - -
-   $ sudo find . | cpio -o -H newc | gzip > ../newinitrd.cpio.gz
-   $ mkimage -A arm -O linux -T ramdisk -C gzip -a 0 -e 0 -n initramfs -d ../newinitrd.cpio.gz ../uInitrd.new
-   $ cd ../..
-   $ cp temp/init/uInitrd.new uInitrd
-   $ rm -rf temp
-   $ cd ..
-   $ tar cjf boot.tar.bz2 boot
-   $ cd ..
-   $ mv temp/boot.tar.bz2 .
-   $ rm -rf temp
-
- -Download startupfiles from "http://www.igloocommunity.org/download/linaro/startupfiles/latest":http://www.igloocommunity.org/download/linaro/startupfiles/latest - -
-   $ tar -xvf startupfiles_3.0.8-0.tar.gz
-   $ linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
-
-   $ sudo add-apt-repository ppa:igloocommunity-maintainers/snowball-tools
-   $ sudo apt-get update
-   $ sudo apt-get install riff
-
- -(OPTIONAL) Remove the PPA - -pre. $ sudo add-apt-repository --remove ppa:igloocommunity-maintainers/snowball-tools - -Turn off the board - -pre. $ sudo riff -f snowball.img - -Connect your board using the OTG USB port (next to power supply port) to your PC -Turn on the board -Riff will detect the board and start the execution -When execution is finalized riff will exit - -On the first boot, the user interface can take up to 10 minutes to come up. -Please be patient. If the board doesn't come up, you might be affected by -"bug 8823313":https://bugs.launchpad.net/bugs/823313 - -* Note 2 - ADB only works over IP - -In the console type: -
-     stop adbd
-     setprop service.adb.tcp.port 6565
-     start adbd
-     ifconfig eth0 # to get boardsIP
-
- -On the host type: -pre. adb connect boardsIP:6565 --- a/android/device/linaro/common/howto/panda-master-gcc44-aosp-stable-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,73 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/panda-master-gcc44-aosp-stable-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/panda/boot.tar.bz2 - target/product/panda/system.tar.bz2 - target/product/panda/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Install graphics libraries - - $ wget http://people.linaro.org/~vishalbhoj/install-binaries-4.0.4.sh - $ chmod a+x install-binaries-4.0.4.sh - $ ./install-binaries-4.0.4.sh - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/panda-master-gcc44-aosp-stable-blob/HOWTO_install.txt +++ /dev/null @@ -1,83 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/panda-master-gcc44-aosp-stable-blob/":https://android-build.linaro.org/builds/~linaro-android/panda-master-gcc44-aosp-stable-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/panda/boot.tar.bz2 -* target/product/panda/system.tar.bz2 -* target/product/panda/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Install graphics libraries - -
-  $ wget http://people.linaro.org/~vishalbhoj/install-binaries-4.0.4.sh
-  $ chmod a+x install-binaries-4.0.4.sh
-  $ ./install-binaries-4.0.4.sh
-
- -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/galaxynexus-jb-gcc47-aosp-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,68 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/galaxynexus-jb-gcc47-aosp-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/maguro/boot.img - target/product/maguro/system.img - target/product/maguro/userdata.img - -= Get merge-gnexus-blobs script = - - The script is available from: - - http://android.git.linaro.org/gitweb?p=device/samsung/tuna.git;a=blob_plain;f=merge-gnexus-blobs;hb=linaro_android_4.1.1 - - or from git: - - $ git clone git://android.git.linaro.org/device/samsung/tuna.git - $ cd tuna - $ git checkout -b linaro_android_4.1.1 origin/linaro_android_4.1.1 - - Make sure your computer is connected to the Internet, since the script downloads non-free binaries and tools to extract images. - - Run merge-gnexus-blobs script, giving the directory containing the .img files as its sole argument. - - The script will do the remaining bits for you, including flashing the phone. - - WARNING: There is no guarantee whatsoever that the build will work. If it breaks your phone, you get to keep both pieces. - -= Install Google Apps = - - If you wish to use the phone as a real phone rather than a pure development device, chances are that you want to install the Google Apps on it: - - * Install the Linaro Android build as described above - - * Grab the current Google Apps zip for JellyBean from http://goo.im/gapps - At the time of the writing, the current version is: - http://goo.im/gapps/gapps-jb-20120726-signed.zip - - * If you downloaded from a device other than your Galaxy Nexus, transfer - the file to your Galaxy Nexus using: - - mtp-sendfile gapps-jb*.zip 8 - - * Turn your Galaxy Nexus off completely (remove the battery if in doubt) - - * Hold down the Volume Up and Volume Down buttons at the same time, and turn - on the phone - - * Use the Volume Up button to select "Recovery mode", then press the power - button to launch it. Wait for recovery to come up. - - * Select "install zip from sdcard" - - * Select "choose zip from sdcard" - - * Choose the gapps-jb zip file you downloaded earlier (it should be in the - Download/ folder) - - * Select "Yes - Install gapps-jb-*-signed.zip" - - * Select "+++++Go Back+++++" - - * Select "reboot system now" - - * Enjoy your Google Apps enabled Linaro Android build! --- a/android/device/linaro/common/howto/galaxynexus-jb-gcc47-aosp-blob/HOWTO_install.txt +++ /dev/null @@ -1,50 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/galaxynexus-jb-gcc47-aosp-blob/":https://android-build.linaro.org/builds/~linaro-android/galaxynexus-jb-gcc47-aosp-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/maguro/boot.img -* target/product/maguro/system.img -* target/product/maguro/userdata.img - -h2. Get merge-gnexus-blobs script - -The script is available from: - -"http://android.git.linaro.org/gitweb?p=device/samsung/tuna.git;a=blob_plain;f=merge-gnexus-blobs;hb=linaro_android_4.1.1":http://android.git.linaro.org/gitweb?p=device/samsung/tuna.git;a=blob_plain;f=merge-gnexus-blobs;hb=linaro_android_4.1.1 - -or from git: - -
-  $ git clone git://android.git.linaro.org/device/samsung/tuna.git
-  $ cd tuna
-  $ git checkout -b linaro_android_4.1.1 origin/linaro_android_4.1.1
-
- -Make sure your computer is connected to the Internet, since the script downloads non-free binaries and tools to extract images. - -Run merge-gnexus-blobs script, giving the directory containing the .img files as its sole argument. - -The script will do the remaining bits for you, including flashing the phone. - -*WARNING* There is no guarantee whatsoever that the build will work. If it breaks your phone, you get to keep both pieces. - -h2. Install Google Apps - -If you wish to use the phone as a real phone rather than a pure development device, chances are that you want to install the Google Apps on it: - -* Install the Linaro Android build as described above -* Grab the current Google Apps zip for JellyBean from "http://goo.im/gapps":http://goo.im/gapps . At the time of the writing, the current version is: "gapps-jb-20120726-signed.zip":http://goo.im/gapps/gapps-jb-20120726-signed.zip -* If you downloaded from a device other than your Galaxy Nexus, transfer the file to your Galaxy Nexus using: mtp-sendfile gapps-jb*.zip 8 -* Turn your Galaxy Nexus off completely (remove the battery if in doubt) -* Hold down the Volume Up and Volume Down buttons at the same time, and turn on the phone -* Use the Volume Up button to select "Recovery mode", then press the power button to launch it. Wait for recovery to come up. -* Select "install zip from sdcard" -* Select "choose zip from sdcard" -* Choose the gapps-jb zip file you downloaded earlier (it should be in the Download/ folder) -* Select "Yes - Install gapps-jb-*-signed.zip" -* Select "+++++Go Back+++++" -* Select "reboot system now" -* Enjoy your Google Apps enabled Linaro Android build! --- a/android/device/linaro/common/howto/vexpress-jb-gcc47-armlt-tracking-open/HOWTO_prebuilt.txt +++ /dev/null @@ -1,72 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/vexpress-jb-gcc47-armlt-tracking-open/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/vexpress/boot.tar.bz2 - target/product/vexpress/system.tar.bz2 - target/product/vexpress/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -b 38400 -w -C minicom.txt OR minicom -D /dev/ttyS0 -w -C minicom.txt - -= Notes = - - For new users, Versatile Express setup page is available at: - http://wiki.linaro.org/ARM/VersatileExpressSetup --- a/android/device/linaro/common/howto/vexpress-jb-gcc47-armlt-tracking-open/HOWTO_install.txt +++ /dev/null @@ -1,81 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/vexpress-jb-gcc47-armlt-tracking-open/":https://android-build.linaro.org/builds/~linaro-android/vexpress-jb-gcc47-armlt-tracking-open/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/vexpress/boot.tar.bz2 -* target/product/vexpress/system.tar.bz2 -* target/product/vexpress/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -b 38400 -w -C minicom.txt OR minicom -D /dev/ttyS0 -w -C minicom.txt - -h2. Notes - -For new users, Versatile Express setup page is available at: - -"http://wiki.linaro.org/ARM/VersatileExpressSetup":http://wiki.linaro.org/ARM/VersatileExpressSetup --- a/android/device/linaro/common/howto/origen-jb-gcc47-samsunglt-tracking-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,67 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-tracking-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/origen/boot.tar.bz2 - target/product/origen/system.tar.bz2 - target/product/origen/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/origen-jb-gcc47-samsunglt-tracking-blob/HOWTO_install.txt +++ /dev/null @@ -1,75 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-tracking-blob/":https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-tracking-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/origen/boot.tar.bz2 -* target/product/origen/system.tar.bz2 -* target/product/origen/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/vexpress-rtsm-jb-gcc47-armlt-stable-open/HOWTO_prebuilt.txt +++ /dev/null @@ -1,56 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/vexpress-rtsm-jb-gcc47-armlt-stable-open/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/vexpress_rtsm/boot.tar.bz2 - target/product/vexpress_rtsm/system.tar.bz2 - target/product/vexpress_rtsm/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media = - - Run linaro image tools - - $ linaro-android-media-create --image-file mmc.bin --image-size 2000M --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Untar boot tarball - - $ tar -jxvf boot.tar.bz2 - - To Run on big.LITTLE - - $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=boot/img.axf -C motherboard.mmc.p_mmc_file=mmc.bin -C coretile.cache_state_modelled=0 - - To Run on big.LITTLE with semi-hosting - - $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=./boot/img.axf -C motherboard.mmc.p_mmc_file=mmc.bin -C coretile.cache_state_modelled=0 -C coretile.cluster0.cpu0.semihosting-enable=1 -C coretile.cluster0.cpu0.semihosting-cmd_line='--kernel ./boot/zImagewithDT --initrd ./boot/Initrd -- console=ttyAMA mem=512M mem=512M@0x880000000 androidboot.console=ttyAMA0 earlyprintk init=/init' - - To Run on A15 Simulator with semi-hosting - - $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4 boot/linux-system-semi-A15.axf -C motherboard.mmc.p_mmc_file=./mmc.bin -C cluster.cpu0.semihosting-cmd_line="--kernel ./boot/uImagewithDT --initrd ./boot/Initrd --console=ttyAMA mem=512M mem=512M@0x880000000 earlyprintk init=/init" - - To Run on A15 Simulator without semi-hosting - - $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4 boot/linux-system-A15.axf -C motherboard.mmc.p_mmc_file=./mmc.bin - -= Check console output = - - For FastModels, serial output is available over console - - $ telnet 127.0.0.1 -debug 5000 -e ^z --- a/android/device/linaro/common/howto/vexpress-rtsm-jb-gcc47-armlt-stable-open/HOWTO_install.txt +++ /dev/null @@ -1,60 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/vexpress-rtsm-jb-gcc47-armlt-stable-open/":https://android-build.linaro.org/builds/~linaro-android/vexpress-rtsm-jb-gcc47-armlt-stable-open/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/vexpress_rtsm/boot.tar.bz2 -* target/product/vexpress_rtsm/system.tar.bz2 -* target/product/vexpress_rtsm/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media - -Run linaro image tools - -pre. $ linaro-android-media-create --image-file mmc.bin --image-size 2000M --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Untar boot tarball - -pre. $ tar -jxvf boot.tar.bz2 - -To Run on big.LITTLE - -pre. $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=boot/img.axf -C motherboard.mmc.p_mmc_file=mmc.bin -C coretile.cache_state_modelled=0 - -To Run on big.LITTLE with semi-hosting - -pre. $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=./boot/img.axf -C motherboard.mmc.p_mmc_file=mmc.bin -C coretile.cache_state_modelled=0 -C coretile.cluster0.cpu0.semihosting-enable=1 -C coretile.cluster0.cpu0.semihosting-cmd_line='--kernel ./boot/zImagewithDT --initrd ./boot/Initrd -- console=ttyAMA mem=512M mem=512M@0x880000000 androidboot.console=ttyAMA0 earlyprintk init=/init' - -To Run on A15 Simulator with semi-hosting - -pre. $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4 boot/linux-system-semi-A15.axf -C motherboard.mmc.p_mmc_file=./mmc.bin -C cluster.cpu0.semihosting-cmd_line="--kernel ./boot/uImagewithDT --initrd ./boot/Initrd --console=ttyAMA mem=512M mem=512M@0x880000000 earlyprintk init=/init" - -To Run on A15 Simulator without semi-hosting - -pre. $(PATH_TO_RTSM)/bin/RTSM_VE_Cortex-A15x4 boot/linux-system-A15.axf -C motherboard.mmc.p_mmc_file=./mmc.bin - -h2. Check console output - -For FastModels, serial output is available over console - -pre. $ telnet 127.0.0.1 -debug 5000 -e ^z --- a/android/device/linaro/common/howto/panda-jb-gcctrunk-tilt-tracking-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,67 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcctrunk-tilt-tracking-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/panda/boot.tar.bz2 - target/product/panda/system.tar.bz2 - target/product/panda/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/panda-jb-gcctrunk-tilt-tracking-blob/HOWTO_install.txt +++ /dev/null @@ -1,75 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcctrunk-tilt-tracking-blob/":https://android-build.linaro.org/builds/~linaro-android/panda-jb-gcctrunk-tilt-tracking-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/panda/boot.tar.bz2 -* target/product/panda/system.tar.bz2 -* target/product/panda/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev panda --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/origen-jb-gcc47-samsunglt-stable-blob/HOWTO_prebuilt.txt +++ /dev/null @@ -1,67 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-stable-blob/ - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/origen/boot.tar.bz2 - target/product/origen/system.tar.bz2 - target/product/origen/userdata.tar.bz2 - -= Get linaro image tools = - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - Remove the SD card from the device writer and plug it into the board. - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/origen-jb-gcc47-samsunglt-stable-blob/HOWTO_install.txt +++ /dev/null @@ -1,75 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-stable-blob/":https://android-build.linaro.org/builds/~linaro-android/origen-jb-gcc47-samsunglt-stable-blob/ - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/origen/boot.tar.bz2 -* target/product/origen/system.tar.bz2 -* target/product/origen/userdata.tar.bz2 - -h2. Get linaro image tools - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev origen --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Check console output - -Plug in an USB-to-serial converter and run minicom - -pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt --- a/android/device/linaro/common/howto/snowball-jb-gcc47-linaro-tracking-open/HOWTO_prebuilt.txt +++ /dev/null @@ -1,133 +0,0 @@ -Instructions for https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-linaro-tracking-open/ - -This build is just a TINY Android. It will only boot to a prompt. (No GUI) - -= Get artifacts = - - Scroll down to the 'Downloads' section - - Click on each link to download: - target/product/snowball/boot.tar.bz2 - target/product/snowball/system.tar.bz2 - target/product/snowball/userdata.tar.bz2 - -= Get linaro image tools = - - This build requires at least version 12.09 of linaro-image-tools to work correctly. - - Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools. - - $ sudo add-apt-repository ppa:linaro-maintainers/tools - $ sudo apt-get update - $ sudo apt-get install linaro-image-tools - - If you're using a released build (with a -release or from releases.linaro.org), skip this step. - If you're using a "tip" build do not skip the step and do the following: - - $ sudo apt-get install bzr - $ bzr branch lp:linaro-image-tools - -= Create media (SD card) = - - Disable automount (instructions provided for Gnome) - - $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) - $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) - $ dconf write /org/gnome/desktop/media-handling/automount false - $ dconf write /org/gnome/desktop/media-handling/automount-open false - - Insert an SD card - - Run 'dmesg' - - $ dmesg - - Look for a line that looks like the following at the end of the log - - [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - - WARNING: In the next step, make sure you use /dev/"whatever you see above". - You can erase your hard drive with the wrong parameter. - - Run linaro image tools - - $ linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - If you're using tip of linaro image tools - - $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - Restore automount - - $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 - $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 - - As long as we are waiting for https://bugs.launchpad.net/linaro-image-tools/+bug/1055644 to be solve we need to do a small work around and replace the - boot.scr file on the SD card. - - Remove the SD card and insert it again. - - Fetch mpoirier's boot.scr file - - $ wget http://people.canonical.com/~mpoirier/android/linaro-tracking-open/boot.scr - $ cp boot.src /media/boot/. - $ umount /media/* - - Remove the SD card from the device writer and plug it into the board. - -= Update U-Boot = - - U-Boot must pass the device tree to the kernel to boot. This code was not enabled before the end of September 2012. If the U-Boot in your Snowballs EMMC is - older you must update it to be able to boot the snowball with this build. - - The instructions below will take the same tarballs that was use for preparing the SD card and create an image that will be written to the EMMC of the Snowball. - It is not possible to boot from the EMMC in this case. We just write an image to get U-Boot updated. - - Download startupfiles from - http://www.igloocommunity.org/download/linaro/startupfiles/latest - - $ tar -xvf startupfiles_3.0.8-0.tar.gz - $ linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - - $ sudo add-apt-repository ppa:igloocommunity-maintainers/snowball-tools - $ sudo apt-get update - $ sudo apt-get install riff - - (OPTIONAL) Remove the PPA - - $ sudo add-apt-repository --remove ppa:igloocommunity-maintainers/snowball-tools - - Turn off the board - - $ sudo riff -f snowball.img - - Connect your board using the OTG USB port (next to power supply port) to - your PC - Turn on the board - Riff will detect the board and start the execution - When execution is finalized riff will exit - -= Check console output = - - Plug in an USB-to-serial converter and run minicom - - $ minicom -D /dev/ttyUSB0 -w -C minicom.txt - -= Notes = - - * Note 1 - ADB only works over IP - - In the console type: - stop adbd - setprop service.adb.tcp.port 6565 - start adbd - ifconfig eth0 # to get boardsIP - - On the host type: - adb connect boardsIP:6565 - - * Note 2 - Using a DVI monitor - - If you are using a HDMI to DVI converter or cable then you should wait for about 10 seconds when booting - and when you see "av8100_hdmi av8100_hdmi.3: Framebuffer created (av8100_hdmi)" in the log press enter - and type "echo 2 > /sys/devices/av8100_hdmi.3/hdmisdtvswitch". --- a/android/device/linaro/common/howto/snowball-jb-gcc47-linaro-tracking-open/HOWTO_install.txt +++ /dev/null @@ -1,140 +0,0 @@ -Instructions for "https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-linaro-tracking-open/":https://android-build.linaro.org/builds/~linaro-android_snowball-jb-gcc47-linaro-tracking-open/ - -This build is just a TINY Android. It will only boot to a prompt. (No GUI) - -h2. Get artifacts - -Scroll down to the 'Downloads' section - -Click on each link to download: -* target/product/snowball/boot.tar.bz2 -* target/product/snowball/system.tar.bz2 -* target/product/snowball/userdata.tar.bz2 - -h2. Get linaro image tools - -This build requires at least version 12.09 of linaro-image-tools to work correctly. - -Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools. - -
-  $ sudo add-apt-repository ppa:linaro-maintainers/tools
-  $ sudo apt-get update
-  $ sudo apt-get install linaro-image-tools
-
- -If you're using a released build (with a -release or from releases.linaro.org), skip this step. -If you're using a "tip" build do not skip the step and do the following: - -
-  $ sudo apt-get install bzr
-  $ bzr branch lp:linaro-image-tools
-
- -h2. Create media (SD card) - -Disable automount (instructions provided for Gnome) - -
-  $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount)
-  $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open)
-  $ dconf write /org/gnome/desktop/media-handling/automount false
-  $ dconf write /org/gnome/desktop/media-handling/automount-open false
-
- -Insert an SD card - -Run 'dmesg' - -pre. $ dmesg - -Look for a line that looks like the following at the end of the log - -pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > - -*WARNING* In the next step, make sure you use /dev/"whatever you see above". -You can erase your hard drive with the wrong parameter. - -Run linaro image tools - -pre. $ linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -If you're using tip of linaro image tools - -pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev snowball_sd --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 - -Restore automount - -
-  $ dconf write /org/gnome/desktop/media-handling/automount $TMP1
-  $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2
-
- -As long as we are waiting for https://bugs.launchpad.net/linaro-image-tools/+bug/1055644 to be solve we need to do a small work around and replace the boot.scr file on the SD card. - -Remove the SD card and insert it again. - -Fetch mpoirier's boot.scr file - -
-  $ wget http://people.canonical.com/~mpoirier/android/linaro-tracking-open/boot.scr
-  $ cp boot.src /media/boot/.
-  $ umount /media/*
-
- -Remove the SD card from the device writer and plug it into the board. - -h2. Update U-Boot - -U-Boot must pass the device tree to the kernel to boot. This code was not enabled before the end of September 2012. If the U-Boot in your Snowballs EMMC is older you must update it to be able to boot the snowball with this build. - -The instructions below will take the same tarballs that was use for preparing the SD card and create an image that will be written to the EMMC of the Snowball. It is not possible to boot from the EMMC in this case. We just write an image to get U-Boot updated. - -Download startupfiles from "http://www.igloocommunity.org/download/linaro/startupfiles/latest":http://www.igloocommunity.org/download/linaro/startupfiles/latest - -
-   $ tar -xvf startupfiles_3.0.8-0.tar.gz
-   $ linaro-android-media-create --image-file snowball.img --image-size 1500M --dev snowball_emmc --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
-
-   $ sudo add-apt-repository ppa:igloocommunity-maintainers/snowball-tools
-   $ sudo apt-get update
-   $ sudo apt-get install riff
-
-
-(OPTIONAL) Remove the PPA
-
-pre. $ sudo add-apt-repository --remove ppa:igloocommunity-maintainers/snowball-tools
-
-Turn off the board
-
-pre. $ sudo riff -f snowball.img
-
-Connect your board using the OTG USB port (next to power supply port) to your PC
-Turn on the board
-Riff will detect the board and start the execution
-When execution is finalized riff will exit
-
-h2. Check console output
-
-Plug in an USB-to-serial converter and run minicom
-
-pre. $ minicom -D /dev/ttyUSB0 -w -C minicom.txt
-
-h2. Notes
-
-* Note 1 - ADB only works over IP
-
-In the console type:
-
-     stop adbd
-     setprop service.adb.tcp.port 6565
-     start adbd
-     ifconfig eth0 # to get boardsIP
-
- -On the host type: -pre. adb connect boardsIP:6565 - -* Note 2 - Using a DVI monitor - -If you are using a HDMI to DVI converter or cable then you should wait for about 10 seconds when booting and when you see "av8100_hdmi av8100_hdmi.3: Framebuffer created (av8100_hdmi)" in the log press enter and type "echo 2 > /sys/devices/av8100_hdmi.3/hdmisdtvswitch". --- a/android/device/linaro/common/tasks/bootloader.mk +++ /dev/null @@ -1,236 +0,0 @@ -# Rules for building bootloaders - -BOOTLOADER_OUT = $(realpath $(PRODUCT_OUT))/boot -BOOTLOADER_TARGETS := - -# Bootloaders have their own separate makefiles and we don't track the -# dependencies these, therefore we need to remake them every time in case -# files need updating. To facilitate this, bootloader rules will depend on -# this phony target... -.PHONY : FORCE_BOOTLOADER_REMAKE - -# -# Generate a rule to build U-Boot. -# -# Usage: $(eval $(call MAKE_UBOOT, target-binary, config-name)) -# -# target-binary Path and name for generated u-boot.bin -# config-name Without trailing '_config' -# -# -define MAKE_UBOOT - -$(1): $$(ACP) FORCE_BOOTLOADER_REMAKE - $$(eval _obj := $$(PRODUCT_OUT)/obj/u-boot.$(2)) - @mkdir -p $$(_obj) - cd $$(TOP)/u-boot && \ - if [ -e $$(UBOOT_TCDIR)/$$(UBOOT_TCPREFIX)ld.bfd ]; then ln -sf $$(UBOOT_TCDIR)/$$(UBOOT_TCPREFIX)ld.bfd $$(UBOOT_TCPREFIX)ld; fi && \ - export PATH=`pwd`:$$(UBOOT_TCDIR):$$(PATH) && \ - $$(MAKE) O=../$$(_obj) CROSS_COMPILE=$$(UBOOT_TCPREFIX) $(2)_config && \ - $$(MAKE) O=../$$(_obj) CROSS_COMPILE=$$(UBOOT_TCPREFIX) - @mkdir -p $$(dir $$@) - $$(ACP) -fpt $$(_obj)/u-boot.bin $$@ - -endef - -# -# UBOOT_FLAVOURS contains a list of extra U-Boot binaries to build, each -# entry in the list is in the form : -# -UBOOT_FLAVOUR_TARGETS := -$(foreach _ub,$(UBOOT_FLAVOURS), \ - $(eval _config := $(call word-colon,1,$(_ub))) \ - $(eval _binary := $(call word-colon,2,$(_ub))) \ - $(eval _target := $(BOOTLOADER_OUT)/$(_binary)) \ - $(eval $(call MAKE_UBOOT,$(_target),$(_config))) \ - $(eval UBOOT_FLAVOUR_TARGETS += $(_target)) \ - ) - -BOOTLOADER_TARGETS += $(UBOOT_FLAVOUR_TARGETS) - - -# -# UEFI -# - -ifneq ($(UEFI_TOOLS_PREFIX),) -# Used supplied prefix -else -ifneq ($(findstring prebuilt,$(TARGET_TOOLS_PREFIX)),) -# The AOSP prebuilt toolchain is too old to compile UEFI, so we fall -# back to a system compiler -UEFI_TOOLS_PREFIX := arm-linux-gnueabi- -else -# UEFI is not an Android application and should be built with the bare -# metal toolchain if it is available... -UEFI_TOOLS_DIR = $(realpath $(dir $(TARGET_TOOLS_PREFIX)))/ -UEFI_TOOLS_PREFIX = $(UEFI_TOOLS_DIR)$(shell if [ -e $(UEFI_TOOLS_DIR)arm-eabi-gcc ]; then echo arm-eabi-; else echo $(notdir $(TARGET_TOOLS_PREFIX)); fi) -# Use GNU linker if exists, as gold doesn't work... -UEFI_TOOLS_LD := $(shell if [ -e $(UEFI_TOOLS_PREFIX)ld.bfd ]; then echo ld.bfd; else echo ld; fi) -endif -endif -UEFI_TOOLS_LD ?= ld - - -EDK2_OUT_DIR = $(realpath $(PRODUCT_OUT))/obj/uefi -EDK2_WORKSPACE = $(realpath $(TOP)/uefi/edk2) -EDK2_BASETOOLS := $(EDK2_WORKSPACE)/BaseTools -EDK2_DEB_REL ?= RELEASE -UEFI_ROM_TARGETS := -UEFI_ROM_INSTALL_TARGET := - - -# -# EDK2 setup and tools -# - -.PHONY : edk2_setup -edk2_setup : - rm -f $(EDK2_WORKSPACE)/Conf/tools_def.txt - cd $(EDK2_WORKSPACE) && \ - export WORKSPACE=$(EDK2_WORKSPACE) && \ - export EDK_TOOLS_PATH=$(EDK2_BASETOOLS) && \ - bash -c "$(EDK2_WORKSPACE)/edksetup.sh $(EDK2_WORKSPACE)" - sed -e "s/\(.*\)ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-ld\(.*\)/\1ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-$(UEFI_TOOLS_LD)\2/" -i $(EDK2_WORKSPACE)/Conf/tools_def.txt - sed -e "s/\(.*\)ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-\(.*\)/\1ENV(ARMLINUXGCC_TOOLS_PREFIX)\2/" -i $(EDK2_WORKSPACE)/Conf/tools_def.txt - -.PHONY : edk2_setup_clean -edk2_setup_clean : - cd $(EDK2_WORKSPACE)/Conf && \ - rm -f BuildEnv.sh build_rule.txt FrameworkDatabase.txt target.txt tools_def.txt - - -.PHONY : edk2_tools -edk2_tools : edk2_setup - $(MAKE) -j1 -C $(EDK2_BASETOOLS) - -.PHONY : edk2_tools_clean -edk2_tools_clean : - $(MAKE) -j1 -C $(EDK2_BASETOOLS) clean - - -# Note, the use of "export MAKEFLAGS=" in this rule is done to clear any -# '-j' option which would be inherited by the make processes spawned by -# the 'build' command. Without this, we get an error like: -# "make[1]: *** read jobs pipe: Is a directory. Stop." -# -# We also make the rule for ROMs depend on each other in a chain (using -# EDK2_PREVIOUS_ROM), this forces them to be built one at a time and -# prevents the build error: "IntegrityError: PRIMARY KEY must be unique" - -define edk2_build - -$(1) : $(2) edk2_tools FORCE_BOOTLOADER_REMAKE | $(EDK2_PREVIOUS_ROM) - cd $$(EDK2_WORKSPACE) && \ - export WORKSPACE=$$(EDK2_WORKSPACE) && \ - export EDK_TOOLS_PATH=$$(EDK2_BASETOOLS) && \ - export PATH=$$(EDK2_BASETOOLS)/BinWrappers/PosixLike:$$(PATH) && \ - export ARMLINUXGCC_TOOLS_PREFIX=$$(UEFI_TOOLS_PREFIX) && \ - export MAKEFLAGS= && \ - build -N -a ARM -t ARMLINUXGCC -b $(EDK2_DEB_REL) -D EDK2_OUT_DIR=$(EDK2_OUT_DIR)/$(3) $(4) - -UEFI_ROM_TARGETS += $(1) -EDK2_PREVIOUS_ROM = $(1) - -endef - -EDK2_PREVIOUS_ROM = - - -.PHONY : edk2_build_clean -edk2_build_clean : - rm -rf $(EDK2_WORKSPACE)/Conf/.cache - rm -rf $(EDK2_OUT_DIR) - - -define edk2_install - -$(1) : $(2) $$(ACP) - @mkdir -p $$(dir $$@) - $$(ACP) -fpt $$< $$@ - -UEFI_ROM_INSTALL_TARGET += $(1) - -endef - - -.PHONY : edk2_clean -edk2_clean : edk2_setup_clean edk2_tools_clean edk2_build_clean - - -define edk2_rom_name -$(EDK2_OUT_DIR)/$(1)/$(EDK2_DEB_REL)_ARMLINUXGCC/FV/$(2).fd -endef - - -# -# Generate a rule to build an EDK2 UEFI ROM -# -# Usage: $(eval $(call MAKE_EDK2_ROM, platform-file, build-dir, rom-image, installed-name, dependencies)) -# -# platform-file Platform file (.dsc file). Can be abused to add trailing build commands. -# build-dir Directory, under $(EDK2_OUT_DIR), for build products. -# rom-image Rom image name (from .fdf file) converted to upper-case. -# installed-name Name to copy ROM to in boot directory. -# dependencies List of targets the rule depends on. -# -define MAKE_EDK2_ROM -$(eval $(call edk2_build,$(call edk2_rom_name,$(2),$(3)),$(5),$(2),-p $(1) -r $(3))) -$(eval $(call edk2_install,$(BOOTLOADER_OUT)/$(4),$(call edk2_rom_name,$(2),$(3)))) -endef - - -# -# Helpers for building RTSM boot-wrappers -# - -ifneq ($(BOOTWRAPPER_TOOLS_PREFIX),) -# Used supplied prefix -BOOTWRAPPER_TCDIR = $(realpath $(shell dirname $(BOOTWRAPPER_TOOLS_PREFIX))) -BOOTWRAPPER_TCPREFIX = $(shell basename $(BOOTWRAPPER_TOOLS_PREFIX)) -else -ifneq ($(findstring prebuilt,$(TARGET_TOOLS_PREFIX)),) -# The AOSP prebuilt toolchain is too old to compile -# the boot-wrapper, so we fall back to a system compiler -BOOTWRAPPER_TCDIR = $(shell basename `which arm-linux-gnueabi-gcc`) -BOOTWRAPPER_TCPREFIX = arm-linux-gnueabi- -else -BOOTWRAPPER_TCDIR = $(realpath $(shell dirname $(TARGET_TOOLS_PREFIX))) -# The boot-wrapper is not an Android application and should be -# built with the bare metal toolchain if it is available -BOOTWRAPPER_TCPREFIX = $(shell if [ -e $(BOOTWRAPPER_TCDIR)/arm-eabi-gcc ]; then echo arm-eabi-; else basename $(TARGET_TOOLS_PREFIX); fi) -endif -endif - -# -# Invoke make with the toolchain setup for cross compilation, example usage: -# -# cd $$(TOP)/boot-wrapper && $(MAKE_RTSM_BOOTWRAPPER) linux-system-semi.axf -# -# As Linaro's toolchain uses the gold linker and this doesn't work -# correctly for the bootwrapper, this macro checks for the presence of -# BFD LD and forces this into the PATH ahead of everything else, (this is -# based on code in uboot.mk). -# -define MAKE_RTSM_BOOTWRAPPER - if [ -e $(BOOTWRAPPER_TCDIR)/$(BOOTWRAPPER_TCPREFIX)ld.bfd ]; then ln -sf $(BOOTWRAPPER_TCDIR)/$(BOOTWRAPPER_TCPREFIX)ld.bfd $(BOOTWRAPPER_TCPREFIX)ld; fi && \ - export PATH=`pwd`:$(BOOTWRAPPER_TCDIR):$(PATH) && \ - $(MAKE) CROSS_COMPILE=$(BOOTWRAPPER_TCPREFIX) -endef - - -# -# Include custom makefiles -# -ifneq ($(CUSTOM_BOOTLOADER_MAKEFILE),) -include $(TOP)/$(CUSTOM_BOOTLOADER_MAKEFILE) -endif - - -BOOTLOADER_TARGETS += $(UEFI_ROM_INSTALL_TARGET) - -.PHONY : uefi_roms -uefi_roms : $(UEFI_ROM_TARGETS) - - -$(INSTALLED_BOOTTARBALL_TARGET): $(BOOTLOADER_TARGETS) --- a/android/device/linaro/common/tasks/bootfiles.mk +++ b/android/device/linaro/common/tasks/bootfiles.mk @@ -1,62 +1,18 @@ -.PHONY: u-boot-img mlo -ifneq (,$(filter $(TARGET_PRODUCT), pandaboard panda5 full_panda)) -u-boot-img: $(PRODUCT_OUT)/u-boot.img -mlo: $(PRODUCT_OUT)/MLO -else -u-boot-img: -mlo: -endif -.PHONY: u-boot ifeq ($(TARGET_USE_UBOOT),true) -u-boot: $(PRODUCT_OUT)/u-boot.bin -else -u-boot: -endif - -.PHONY: xloader-config -.PHONY: x-loader -.PHONY: cleanup -ifeq ($(TARGET_USE_XLOADER),true) -cleanup: - cd $(TOP)/device/linaro/x-loader &&\ - make mrproper - -xloader-config: cleanup - cd $(TOP)/device/linaro/x-loader &&\ - make $(XLOADER_CONFIG) - -x-loader: xloader-config - cd $(TOP)/device/linaro/x-loader &&\ - make ARCH=arm CROSS_COMPILE=$(shell sh -c "cd $(TOP); cd `dirname $(TARGET_TOOLS_PREFIX)`; pwd")/$(shell basename $(TARGET_TOOLS_PREFIX)) all -else -xloader-config: -x-loader: +bootfiles: $(PRODUCT_OUT)/u-boot.bin endif -.PHONY: copybootfiles -copybootfiles: x-loader u-boot u-boot-img mlo +bootfiles: $(hide) mkdir -p $(PRODUCT_OUT)/boot -ifneq (,$(filter $(TARGET_PRODUCT), pandaboard panda5)) - cp $(PRODUCT_OUT)/u-boot.img $(PRODUCT_OUT)/boot - cp $(PRODUCT_OUT)/MLO $(PRODUCT_OUT)/boot -endif -ifeq ($(TARGET_PRODUCT), full_panda) - cp $(PRODUCT_OUT)/u-boot.img $(PRODUCT_OUT)/boot - cp $(PRODUCT_OUT)/MLO $(PRODUCT_OUT)/boot -endif ifeq ($(TARGET_USE_UBOOT),true) cp $(PRODUCT_OUT)/u-boot.bin $(PRODUCT_OUT)/boot ifeq ($(TARGET_PRODUCT), iMX53) cp -L $(PRODUCT_OUT)/u-boot.imx $(PRODUCT_OUT)/boot endif -ifeq ($(TARGET_PRODUCT), iMX6) - cp -L $(PRODUCT_OUT)/u-boot.imx $(PRODUCT_OUT)/boot -endif endif ifeq ($(TARGET_USE_XLOADER),true) - cp $(TOP)/device/linaro/x-loader/MLO $(PRODUCT_OUT)/boot + cp $(XLOADER_BINARY) $(PRODUCT_OUT)/boot endif -$(INSTALLED_BOOTTARBALL_TARGET): copybootfiles - +$(INSTALLED_BOOTTARBALL_TARGET): bootfiles --- a/android/device/linaro/common/tasks/uboot.mk +++ b/android/device/linaro/common/tasks/uboot.mk @@ -1,108 +1,15 @@ -ifeq ($(TARGET_USE_UBOOT), true) -ifneq ($(UBOOT_TOOLS_PREFIX),) -UBOOT_TCDIR = $(realpath $(shell dirname $(UBOOT_TOOLS_PREFIX))) -UBOOT_TCPREFIX = $(shell basename $(UBOOT_TOOLS_PREFIX)) -else -ifneq ($(findstring prebuilt,$(TARGET_TOOLS_PREFIX)),) -# The AOSP prebuilt toolchain is too old to compile -# current u-boot, so we fall back to a system compiler -UBOOT_TCDIR = $(shell basename `which arm-linux-gnueabi-gcc`) -UBOOT_TCPREFIX = arm-linux-gnueabi- -else -UBOOT_TCDIR = $(realpath $(shell dirname $(TARGET_TOOLS_PREFIX))) -# u-boot is not an Android application and should be -# built with the bare metal toolchain if it is available -UBOOT_TCPREFIX = $(shell if [ -e $(UBOOT_TCDIR)/arm-eabi-gcc ]; then echo arm-eabi-; else basename $(TARGET_TOOLS_PREFIX); fi) -endif -endif - - -ifeq ($(USE_PREBUILT_UBOOT),) -USE_PREBUILT_UBOOT=false -endif - -ifeq ($(USE_PREBUILT_UBOOT), false) -# u-boot can't be built with gold - so we force BFD LD into the -# PATH ahead of everything else -android_uboot: $(ACP) +android_uboot: mkdir -p $(PRODUCT_OUT)/obj/u-boot cd $(TOP)/u-boot &&\ - if [ -e $(UBOOT_TCDIR)/$(UBOOT_TCPREFIX)ld.bfd ]; then ln -sf $(UBOOT_TCDIR)/$(UBOOT_TCPREFIX)ld.bfd $(UBOOT_TCPREFIX)ld; fi &&\ - export PATH=`pwd`:$(UBOOT_TCDIR):$(PATH) && \ - $(MAKE) O=../$(PRODUCT_OUT)/obj/u-boot CROSS_COMPILE=$(UBOOT_TCPREFIX) $(UBOOT_CONFIG) &&\ - $(MAKE) O=../$(PRODUCT_OUT)/obj/u-boot CROSS_COMPILE=$(UBOOT_TCPREFIX) + make O=../$(PRODUCT_OUT)/obj/u-boot CROSS_COMPILE=arm-linux-gnueabi- $(UBOOT_CONFIG) &&\ + make O=../$(PRODUCT_OUT)/obj/u-boot CROSS_COMPILE=arm-linux-gnueabi- ifeq ($(TARGET_PRODUCT), iMX53) - cd $(TOP)/u-boot &&\ - export PATH=`pwd`:$(UBOOT_TCDIR):$(PATH) && \ - $(MAKE) CROSS_COMPILE=$(UBOOT_TCPREFIX) $(UBOOT_CONFIG) && \ - $(MAKE) CROSS_COMPILE=$(UBOOT_TCPREFIX) u-boot.imx + make CROSS_COMPILE=arm-linux-gnueabi- $(UBOOT_CONFIG) && make CROSS_COMPILE=arm-linux-gnueabi- u-boot.imx endif -ifeq ($(TARGET_PRODUCT), iMX6) - cd $(TOP)/u-boot &&\ - export PATH=`pwd`:$(UBOOT_TCDIR):$(PATH) && \ - $(MAKE) CROSS_COMPILE=$(UBOOT_TCPREFIX) $(UBOOT_CONFIG) && \ - $(MAKE) CROSS_COMPILE=$(UBOOT_TCPREFIX) u-boot.imx -endif - cd $(TOP) && $(ACP) -fept $(PRODUCT_OUT)/obj/u-boot/tools/mkimage $(BUILD_OUT_EXECUTABLES)/ $(PRODUCT_OUT)/u-boot.bin: android_uboot ln -sf obj/u-boot/u-boot.bin $(PRODUCT_OUT)/u-boot.bin ifeq ($(TARGET_PRODUCT), iMX53) - cp $(TOP)/u-boot/u-boot.imx $(PRODUCT_OUT)/u-boot.imx -endif -ifeq ($(TARGET_PRODUCT), iMX6) - cp $(TOP)/u-boot/u-boot.imx $(PRODUCT_OUT)/u-boot.imx -endif -ifeq ($(TARGET_PRODUCT), origen) - mkdir -p $(PRODUCT_OUT)/boot - cp $(PRODUCT_OUT)/obj/u-boot/spl/origen-spl.bin $(PRODUCT_OUT)/boot/u-boot-mmc-spl.bin -endif + cp u-boot.imx $(PRODUCT_OUT)/u-boot.imx endif -ifeq ($(TARGET_PRODUCT), origen_quad) -ifeq ($(USE_PREBUILT_UBOOT), true) -$(PRODUCT_OUT)/u-boot.bin: - mkdir -p $(PRODUCT_OUT)/boot - cp $(TOP)/device/linaro/origen_quad/bl1 $(PRODUCT_OUT)/boot/u-boot-mmc-spl.bin - cp $(TOP)/device/linaro/origen_quad/u-boot.bin $(PRODUCT_OUT)/u-boot.bin -endif -endif - -ifneq (,$(filter $(TARGET_PRODUCT),pandaboard panda5)) -ifeq ($(USE_PREBUILT_UBOOT), true) -$(PRODUCT_OUT)/u-boot.bin: - ln -sf ../../../../device/linaro/pandaboard/u-boot.bin $(PRODUCT_OUT)/u-boot.bin -$(PRODUCT_OUT)/u-boot.img: - ln -sf ../../../../device/linaro/pandaboard/u-boot.bin $(PRODUCT_OUT)/u-boot.img - -$(PRODUCT_OUT)/MLO: - ln -sf ../../../../device/linaro/pandaboard/MLO $(PRODUCT_OUT)/MLO -else -$(PRODUCT_OUT)/u-boot.img: android_uboot - ln -sf obj/u-boot/u-boot.img $(PRODUCT_OUT)/u-boot.img - -$(PRODUCT_OUT)/MLO: android_uboot - ln -sf obj/u-boot/MLO $(PRODUCT_OUT)/MLO -endif -endif - -ifeq ($(TARGET_PRODUCT), full_panda) -ifeq ($(USE_PREBUILT_UBOOT), true) -$(PRODUCT_OUT)/u-boot.bin: - ln -sf ../../../../device/ti/panda/u-boot.bin $(PRODUCT_OUT)/u-boot.bin -$(PRODUCT_OUT)/u-boot.img: - ln -sf ../../../../device/ti/panda/u-boot.bin $(PRODUCT_OUT)/u-boot.img - -$(PRODUCT_OUT)/MLO: - ln -sf ../../../../device/ti/panda/MLO $(PRODUCT_OUT)/MLO -else -$(PRODUCT_OUT)/u-boot.img: android_uboot - ln -sf obj/u-boot/u-boot.img $(PRODUCT_OUT)/u-boot.img - -$(PRODUCT_OUT)/MLO: android_uboot - ln -sf obj/u-boot/MLO $(PRODUCT_OUT)/MLO -endif -endif -else -$(PRODUCT_OUT)/u-boot.bin: -endif --- a/android/device/linaro/common/tasks/kernel.mk +++ b/android/device/linaro/common/tasks/kernel.mk @@ -1,183 +1,7 @@ -ifneq ($(strip $(SHOW_COMMANDS)),) -KERNEL_VERBOSE="V=1" -endif - -KERNEL_TOOLS_PREFIX ?= $(shell sh -c "cd $(TOP); cd `dirname $(TARGET_TOOLS_PREFIX)`; pwd")/$(shell basename $(TARGET_TOOLS_PREFIX)) - -REALTOP=$(realpath $(TOP)) - -KERNEL_OUT=$(realpath $(PRODUCT_OUT))/obj/kernel - -ifneq ($(strip $(BUILD_TINY_ANDROID)),true) -# We can build perf if it's included in the kernel and has the -# Android compatibility patch in -ifneq ($(wildcard $(TOP)/kernel/tools/perf/compat-android.h),) - INCLUDE_PERF := 1 - PERF_DEP := $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libelf_intermediates/libelf.a -endif -endif - -ifeq ($(strip $(ANDROID_64)),true) -KERNEL_TARGET := Image -else -ifeq ($(strip $(TARGET_BOOTLOADER_TYPE)),fastboot) -BOOTLOADER_DEP := -KERNEL_TARGET := zImage -else -BOOTLOADER_DEP := $(PRODUCT_OUT)/u-boot.bin -KERNEL_TARGET := uImage -endif -endif - -ifeq ($(strip $(ANDROID_64)),true) -ARCH := arm64 -LOCAL_CFLAGS= -KERNEL_COMPILER_PATHS := $(REALTOP)/gcc-linaro-aarch64-linux-gnu-4.7/bin:../$(BUILD_OUT_EXECUTABLES) -else -ARCH := arm -LOCAL_CFLAGS=$(call cc-option,"-mno-unaligned-access", ) -KERNEL_COMPILER_PATHS := ../$(BUILD_OUT_EXECUTABLES) -endif - -android_kernel: $(BOOTLOADER_DEP) $(PERF_DEP) - echo building kernel $(KERNEL_TARGET) with config $(KERNEL_CONFIG) for bootloader $(TARGET_BOOTLOADER_TYPE) - mkdir -p $(KERNEL_OUT) - cd $(TOP)/kernel &&\ - export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) && \ - if [ -e $(KERNEL_TOOLS_PREFIX)ld.bfd ]; then LD=$(KERNEL_TOOLS_PREFIX)ld.bfd; else LD=$(KERNEL_TOOLS_PREFIX)ld; fi && \ - if [ $(words $(KERNEL_CONFIG)) -gt 1 ]; \ - then scripts/kconfig/merge_config.sh -m $(KERNEL_CONFIG) && mv -f .config $(KERNEL_OUT)/.merged.config && $(MAKE) -j1 $(KERNEL_VERBOSE) O=$(KERNEL_OUT) ARCH=$(ARCH) KCONFIG_ALLCONFIG=$(KERNEL_OUT)/.merged.config alldefconfig; \ - else $(MAKE) -j1 KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" $(KERNEL_VERBOSE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) LD=$$LD defconfig $(KERNEL_CONFIG); \ - fi && \ - $(MAKE) $(KERNEL_VERBOSE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" LD=$$LD $(KERNEL_TARGET) -ifeq ($(INCLUDE_PERF),1) - export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\ - cd $(TOP)/kernel/tools/perf &&\ - mkdir -p $(KERNEL_OUT)/tools/perf &&\ - if [ -e $(KERNEL_TOOLS_PREFIX)ld.bfd ]; then LD=$(KERNEL_TOOLS_PREFIX)ld.bfd; else LD=$(KERNEL_TOOLS_PREFIX)ld; fi && \ - $(MAKE) EXTRA_CFLAGS="$(TARGET_EXTRA_CFLAGS) $(LOCAL_CFLAGS) -isystem $(REALTOP)/bionic/libc/include -isystem $(REALTOP)/bionic/libc/kernel/common -isystem $(REALTOP)/bionic/libc/kernel/arch-arm -isystem $(REALTOP)/bionic/libc/arch-arm/include -I$(REALTOP)/external/elfutils/libelf -isystem $(REALTOP)/bionic/libm/include -isystem $(shell dirname $(KERNEL_TOOLS_PREFIX))/../include -I$(KERNEL_OUT)/tools/perf" BASIC_LDFLAGS="-nostdlib -Wl,-dynamic-linker,/system/bin/linker,-z,muldefs$(shell if test $(PLATFORM_SDK_VERSION) -lt 16; then echo -ne ',-T$(REALTOP)/$(BUILD_SYSTEM)/armelf.x'; fi),-z,nocopyreloc,--no-undefined -L$(REALTOP)/$(TARGET_OUT_STATIC_LIBRARIES) -L$(REALTOP)/$(PRODUCT_OUT)/system/lib -L$(REALTOP)/external/elfutils -L$(realpath $(PRODUCT_OUT))/obj/STATIC_LIBRARIES/libelf_intermediates -lpthread -lelf -lm -lc $(REALTOP)/$(TARGET_CRTBEGIN_DYNAMIC_O) $(REALTOP)/$(TARGET_CRTEND_O)" $(KERNEL_VERBOSE) O=$(KERNEL_OUT)/tools/perf/ OUTPUT=$(KERNEL_OUT)/tools/perf/ ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) LD=$$LD prefix=/system NO_DWARF=1 NO_NEWT=1 NO_LIBPERL=1 NO_LIBPYTHON=1 NO_GTK2=1 NO_STRLCPY=1 WERROR=0 && \ - cp -f $(KERNEL_OUT)/tools/perf/perf $(REALTOP)/$(PRODUCT_OUT)/system/bin/ -endif -ifeq ($(TARGET_PRODUCT), origen_quad) -ifeq ($(USE_PREBUILT_UBOOT), true) - cp -f $(KERNEL_OUT)/arch/arm/boot/zImage $(REALTOP)/$(PRODUCT_OUT)/boot/ -endif -endif - -android_kernel_modules: $(INSTALLED_KERNEL_TARGET) $(ACP) - export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\ - cd $(TOP)/kernel &&\ - if [ -e $(KERNEL_TOOLS_PREFIX)ld.bfd ]; then LD=$(KERNEL_TOOLS_PREFIX)ld.bfd; else LD=$(KERNEL_TOOLS_PREFIX)ld; fi && \ - $(MAKE) $(KERNEL_VERBOSE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) LD=$$LD EXTRA_CFLAGS="$(EXTRA_CFLAGS) -fno-pic" KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" modules - mkdir -p $(KERNEL_OUT)/modules_for_android +android_kernel: cd $(TOP)/kernel &&\ - if [ -e $(KERNEL_TOOLS_PREFIX)ld.bfd ]; then LD=$(KERNEL_TOOLS_PREFIX)ld.bfd; else LD=$(KERNEL_TOOLS_PREFIX)ld; fi && \ - $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" LD=$$LD modules_install INSTALL_MOD_PATH=$(KERNEL_OUT)/modules_for_android - mkdir -p $(TARGET_OUT)/modules - find $(KERNEL_OUT)/modules_for_android -name "*.ko" -exec $(ACP) -fpt {} $(TARGET_OUT)/modules/ \; - -#NOTE: the gator driver's Makefile wasn't done properly and doesn't put build -# artifacts in the O=$(KERNEL_OUT) -ifeq ($(TARGET_USE_GATOR),true) - -KERNEL_PATH:=$(shell pwd)/kernel - -ifneq ($(TARGET_GATOR_WITH_MALI_SUPPORT),) -ifndef TARGET_MALI_DRIVER_DIR -$(error TARGET_MALI_DRIVER_DIR must be defined if TARGET_GATOR_WITH_MALI_SUPPORT is.) -endif -GATOR_EXTRA_CFLAGS += -DMALI_SUPPORT=$(TARGET_GATOR_WITH_MALI_SUPPORT) -I$(KERNEL_PATH)/$(TARGET_MALI_DRIVER_DIR) -GATOR_EXTRA_MAKE_ARGS += GATOR_WITH_MALI_SUPPORT=$(TARGET_GATOR_WITH_MALI_SUPPORT) -endif - -ifneq ($(realpath $(TOP)/external/gator/driver),) -gator_driver: android_kernel_modules $(INSTALLED_KERNEL_TARGET) $(ACP) - export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\ - cd $(TOP)/external/gator/driver &&\ - if [ -e $(KERNEL_TOOLS_PREFIX)ld.bfd ]; then LD=$(KERNEL_TOOLS_PREFIX)ld.bfd; else LD=$(KERNEL_TOOLS_PREFIX)ld; fi && \ - $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) LD=$$LD EXTRA_CFLAGS="$(EXTRA_CFLAGS) -fno-pic $(GATOR_EXTRA_CFLAGS)" KCFLAGS="$(TARGET_EXTRA_CFLAGS) -fno-pic $(LOCAL_CFLAGS)" $(GATOR_EXTRA_MAKE_ARGS) -C $(KERNEL_PATH) M=`pwd` modules - mkdir -p $(TARGET_OUT)/modules - find $(TOP)/external/gator/driver/. -name "*.ko" -exec $(ACP) -fpt {} $(TARGET_OUT)/modules/ \; -else -gator_driver: -endif - -else -gator_driver: -endif - -ifeq ($(TARGET_USE_SGX),true) -ifeq ($(TARGET_PRODUCT), beaglebone) -sgx: android_kernel - cd $(TOP)/hardware/ti/sitara/sgx && \ - $(MAKE) OMAPES=4.x TARGET_TOOLS_PREFIX=$(TARGET_TOOLS_PREFIX) TARGET_PRODUCT=beaglebone ANDROID_ROOT_DIR=$(REALTOP) clean && \ - $(MAKE) OMAPES=4.x TARGET_TOOLS_PREFIX=$(TARGET_TOOLS_PREFIX) TARGET_PRODUCT=beaglebone ANDROID_ROOT_DIR=$(REALTOP) && \ - $(MAKE) OMAPES=4.x TARGET_PRODUCT=beaglebone ANDROID_ROOT_DIR=$(REALTOP) install -else -sgx: -endif -else -sgx: -endif - -out_of_tree_modules: $(INSTALLED_KERNEL_TARGET) gator_driver sgx - -$(INSTALLED_KERNEL_TARGET): android_kernel - ln -sf $(KERNEL_OUT)/arch/$(ARCH)/boot/$(KERNEL_TARGET) $(INSTALLED_KERNEL_TARGET) - -$(INSTALLED_SYSTEMTARBALL_TARGET): android_kernel_modules out_of_tree_modules - -droidcore: android_kernel_modules out_of_tree_modules - -# -# Generate a rule to build a device-tree. -# -# Usage: $(eval $(call MAKE_DEVICE_TREE, target-blob, source-name)) -# -# target-blob Path and name for generated device tree blob -# source-name Name of source in arch/arm/boot/dts/ without trailing '.dts' -# -# -define MAKE_DEVICE_TREE - -$(1): $$(KERNEL_OUT)/arch/arm/boot/$(2).dtb $$(ACP) - @mkdir -p $$(dir $$@) - $$(ACP) -fpt $$< $$@ - -DTB_TARGETS += $(2).dtb -DTB_INSTALL_TARGETS += $(1) - -endef - -# -# DEVICE_TREES contains a list of device-trees to build, each -# entry in the list is in the form : -# -DTB_TARGETS := -DTB_INSTALL_TARGETS := -$(foreach _ub,$(DEVICE_TREES), \ - $(eval _source := $(call word-colon,1,$(_ub))) \ - $(eval _blob := $(call word-colon,2,$(_ub))) \ - $(eval _target := $(PRODUCT_OUT)/boot/$(_blob)) \ - $(eval $(call MAKE_DEVICE_TREE,$(_target),$(_source))) \ - ) - - -ifneq ($(strip $(DTB_TARGETS)),) - -.PHONY : all_dtbs -all_dtbs : $(INSTALLED_KERNEL_TARGET) - export PATH=$(KERNEL_COMPILER_PATHS):$(PATH) &&\ - cd $(TOP)/kernel && \ - $(MAKE) O=$(KERNEL_OUT) ARCH=$(ARCH) CROSS_COMPILE=$(KERNEL_TOOLS_PREFIX) $(DTB_TARGETS) - -$(patsubst %,$(KERNEL_OUT)/arch/arm/boot/%,$(DTB_TARGETS)) : all_dtbs - -endif - - -$(INSTALLED_BOOTTARBALL_TARGET): $(DTB_INSTALL_TARGETS) + make ARCH=arm CROSS_COMPILE=../$(TARGET_TOOLS_PREFIX) defconfig $(KERNEL_CONFIG) &&\ + make ARCH=arm CROSS_COMPILE=../$(TARGET_TOOLS_PREFIX) uImage -ifeq ($(TARGET_PRODUCT), vexpress_rtsm) -bootwrapper: $(DTB_INSTALL_TARGETS) -endif +$(PRODUCT_OUT)/uImage: android_kernel + ln -sf ../../../../kernel/arch/arm/boot/uImage $(PRODUCT_OUT)/uImage \ No newline at end of file --- a/android/hardware/ti/omap4xxx/Android.mk +++ b/android/hardware/ti/omap4xxx/Android.mk @@ -1,5 +1,8 @@ ifeq ($(TARGET_BOARD_PLATFORM),omap4) +# only use the generic omap4 modules if no variant is declared +ifeq ($(strip $(TARGET_BOARD_PLATFORM_VARIANT)),) + LOCAL_PATH:= $(call my-dir) HARDWARE_TI_OMAP4_BASE:= $(LOCAL_PATH) OMAP4_DEBUG_MEMLEAK:= false @@ -31,4 +34,6 @@ endif include $(call first-makefiles-under,$(LOCAL_PATH)) -endif + +endif # ifeq ($(strip $(TARGET_BOARD_PLATFORM_VARIANT)),) +endif # ifeq ($(TARGET_BOARD_PLATFORM),omap4) --- a/android/hardware/ti/omap4xxx/security/tee_client_api/tee_client_api_linux_driver.c +++ b/android/hardware/ti/omap4xxx/security/tee_client_api/tee_client_api_linux_driver.c @@ -783,7 +783,7 @@ */ if (connectionData != NULL) { - memcpy(&sCommand.sOpenClientSession.sLoginData, &connectionData, sizeof(uint32_t)); //*(uint32_t*)sCommand.sOpenClientSession.sLoginData = *(uint32_t*)connectionData; + *(uint32_t*)sCommand.sOpenClientSession.sLoginData = *(uint32_t*)connectionData; sCommand.sHeader.nMessageSize += sizeof(uint32_t); } } --- a/android/hardware/ti/omap4xxx/hwc/hwc.c +++ b/android/hardware/ti/omap4xxx/hwc/hwc.c @@ -2054,8 +2054,15 @@ err = -errno; goto done; } - hwc_dev->ext.lcd_xpy = (float) hwc_dev->fb_dis.width_in_mm / hwc_dev->fb_dis.timings.x_res / - hwc_dev->fb_dis.height_in_mm * hwc_dev->fb_dis.timings.y_res; + + if (hwc_dev->fb_dis.timings.x_res && hwc_dev->fb_dis.height_in_mm) { + hwc_dev->ext.lcd_xpy = (float) + hwc_dev->fb_dis.width_in_mm / hwc_dev->fb_dis.timings.x_res / + hwc_dev->fb_dis.height_in_mm * hwc_dev->fb_dis.timings.y_res; + } else { + ALOGE("x resolution or the height is not populated setting lcd_xpy to 1.0\n"); + hwc_dev->ext.lcd_xpy = 1.0; + } if (pipe(hwc_dev->pipe_fds) == -1) { ALOGE("failed to event pipe (%d): %m", errno); --- a/android/hardware/ti/omap4xxx/hwc/Android.mk +++ b/android/hardware/ti/omap4xxx/hwc/Android.mk @@ -14,7 +14,7 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE := hwcomposer.omap4 -LOCAL_CFLAGS := -DLOG_TAG=\"ti_hwc\" -I$(LOCAL_PATH)/../kernel-headers +LOCAL_CFLAGS := -DLOG_TAG=\"ti_hwc\" LOCAL_C_INCLUDES += external/libpng external/zlib # LOG_NDEBUG=0 means verbose logging enabled # LOCAL_CFLAGS += -DLOG_NDEBUG=0 --- a/android/hardware/ti/omap4xxx/camera/AppCallbackNotifier.cpp +++ b/android/hardware/ti/omap4xxx/camera/AppCallbackNotifier.cpp @@ -1061,13 +1061,13 @@ void *y_uv[2]; mapper.lock((buffer_handle_t)vBuf, CAMHAL_GRALLOC_USAGE, bounds, y_uv); - structConvImage input = {(int)frame->mWidth, - (int)frame->mHeight, + structConvImage input = {frame->mWidth, + frame->mHeight, 4096, IC_FORMAT_YCbCr420_lp, (mmByte *)frame->mYuv[0], (mmByte *)frame->mYuv[1], - (int)frame->mOffset}; + frame->mOffset}; structConvImage output = {mVideoWidth, mVideoHeight, --- a/android/hardware/ti/omap4xxx/camera/CameraHalUtilClasses.cpp +++ b/android/hardware/ti/omap4xxx/camera/CameraHalUtilClasses.cpp @@ -117,15 +117,15 @@ /*--------------------CameraArea Class STARTS here-----------------------------*/ -status_t CameraArea::transfrom(uint32_t width, - uint32_t height, - int32_t &top, - int32_t &left, - uint32_t &areaWidth, - uint32_t &areaHeight) +status_t CameraArea::transfrom(size_t width, + size_t height, + size_t &top, + size_t &left, + size_t &areaWidth, + size_t &areaHeight) { status_t ret = NO_ERROR; - uint32_t hRange, vRange; + size_t hRange, vRange; double hScale, vScale; LOG_FUNCTION_NAME @@ -147,11 +147,11 @@ return ret; } -status_t CameraArea::checkArea(int32_t top, - int32_t left, - int32_t bottom, - int32_t right, - int32_t weight) +status_t CameraArea::checkArea(ssize_t top, + ssize_t left, + ssize_t bottom, + ssize_t right, + ssize_t weight) { //Handles the invalid regin corner case. @@ -198,7 +198,7 @@ } status_t CameraArea::parseAreas(const char *area, - uint32_t areaLength, + size_t areaLength, Vector< sp > &areas) { status_t ret = NO_ERROR; @@ -209,7 +209,7 @@ const char *startToken = "("; const char endToken = ')'; const char sep = ','; - int32_t top, left, bottom, right, weight; + ssize_t top, left, bottom, right, weight; char *tmpBuffer = NULL; sp currentArea; @@ -243,7 +243,7 @@ } else { - left = static_cast(strtol(pStart, &pEnd, 10)); + left = static_cast(strtol(pStart, &pEnd, 10)); } if ( sep != *pEnd ) @@ -254,7 +254,7 @@ } else { - top = static_cast(strtol(pEnd+1, &pEnd, 10)); + top = static_cast(strtol(pEnd+1, &pEnd, 10)); } if ( sep != *pEnd ) @@ -265,7 +265,7 @@ } else { - right = static_cast(strtol(pEnd+1, &pEnd, 10)); + right = static_cast(strtol(pEnd+1, &pEnd, 10)); } if ( sep != *pEnd ) @@ -276,7 +276,7 @@ } else { - bottom = static_cast(strtol(pEnd+1, &pEnd, 10)); + bottom = static_cast(strtol(pEnd+1, &pEnd, 10)); } if ( sep != *pEnd ) @@ -287,7 +287,7 @@ } else { - weight = static_cast(strtol(pEnd+1, &pEnd, 10)); + weight = static_cast(strtol(pEnd+1, &pEnd, 10)); } if ( endToken != *pEnd ) --- a/android/hardware/ti/omap4xxx/camera/inc/CameraHal.h +++ b/android/hardware/ti/omap4xxx/camera/inc/CameraHal.h @@ -130,27 +130,27 @@ { public: - CameraArea(int32_t top, - int32_t left, - int32_t bottom, - int32_t right, - uint32_t weight) : mTop(top), + CameraArea(ssize_t top, + ssize_t left, + ssize_t bottom, + ssize_t right, + size_t weight) : mTop(top), mLeft(left), mBottom(bottom), mRight(right), mWeight(weight) {} - status_t transfrom(uint32_t width, - uint32_t height, - int32_t &top, - int32_t &left, - uint32_t &areaWidth, - uint32_t &areaHeight); + status_t transfrom(size_t width, + size_t height, + size_t &top, + size_t &left, + size_t &areaWidth, + size_t &areaHeight); bool isValid() - { + { return ( ( 0 != mTop ) || ( 0 != mLeft ) || ( 0 != mBottom ) || ( 0 != mRight) ); - } + } bool isZeroArea() { @@ -158,38 +158,38 @@ && ( 0 == mRight ) && ( 0 == mWeight )); } - uint32_t getWeight() - { + size_t getWeight() + { return mWeight; - } + } bool compare(const sp &area); static status_t parseAreas(const char *area, - uint32_t areaLength, + size_t areaLength, Vector< sp > &areas); - static status_t checkArea(int32_t top, - int32_t left, - int32_t bottom, - int32_t right, - int32_t weight); + static status_t checkArea(ssize_t top, + ssize_t left, + ssize_t bottom, + ssize_t right, + ssize_t weight); static bool areAreasDifferent(Vector< sp > &, Vector< sp > &); protected: - static const int32_t TOP = -1000; - static const int32_t LEFT = -1000; - static const int32_t BOTTOM = 1000; - static const int32_t RIGHT = 1000; - static const int32_t WEIGHT_MIN = 1; - static const int32_t WEIGHT_MAX = 1000; - - int32_t mTop; - int32_t mLeft; - int32_t mBottom; - int32_t mRight; - uint32_t mWeight; + static const ssize_t TOP = -1000; + static const ssize_t LEFT = -1000; + static const ssize_t BOTTOM = 1000; + static const ssize_t RIGHT = 1000; + static const ssize_t WEIGHT_MIN = 1; + static const ssize_t WEIGHT_MAX = 1000; + + ssize_t mTop; + ssize_t mLeft; + ssize_t mBottom; + ssize_t mRight; + size_t mWeight; }; class CameraFDResult : public RefBase @@ -215,11 +215,11 @@ camera_frame_metadata_t *getFaceResult() { return mFaceData; }; - static const int32_t TOP = -1000; - static const int32_t LEFT = -1000; - static const int32_t BOTTOM = 1000; - static const int32_t RIGHT = 1000; - static const int32_t INVALID_DATA = -2000; + static const ssize_t TOP = -1000; + static const ssize_t LEFT = -1000; + static const ssize_t BOTTOM = 1000; + static const ssize_t RIGHT = 1000; + static const ssize_t INVALID_DATA = -2000; private: @@ -300,7 +300,7 @@ uint32_t mOffset; unsigned int mAlignment; int mFd; - uint32_t mLength; + size_t mLength; unsigned mFrameMask; unsigned int mQuirks; unsigned int mYuv[2]; @@ -359,11 +359,11 @@ } ZoomEventData; typedef struct FaceData_t { - int32_t top; - int32_t left; - int32_t bottom; - int32_t right; - uint32_t score; + ssize_t top; + ssize_t left; + ssize_t bottom; + ssize_t right; + size_t score; } FaceData; typedef sp FaceEventData; @@ -545,7 +545,7 @@ //All sub-components of Camera HAL call this whenever any error happens virtual void errorNotify(int error); - status_t startPreviewCallbacks(CameraParameters ¶ms, void *buffers, uint32_t *offsets, int fd, uint32_t length, uint32_t count); + status_t startPreviewCallbacks(CameraParameters ¶ms, void *buffers, uint32_t *offsets, int fd, size_t length, size_t count); status_t stopPreviewCallbacks(); status_t enableMsgType(int32_t msgType); @@ -577,7 +577,7 @@ //Notifications from CameraHal for video recording case status_t startRecording(); status_t stopRecording(); - status_t initSharedVideoBuffers(void *buffers, uint32_t *offsets, int fd, uint32_t length, uint32_t count, void *vidBufs); + status_t initSharedVideoBuffers(void *buffers, uint32_t *offsets, int fd, size_t length, size_t count, void *vidBufs); status_t releaseRecordingFrame(const void *opaque); status_t useMetaDataBufferMode(bool enable); @@ -732,9 +732,9 @@ void *mBuffers; uint32_t *mOffsets; int mFd; - uint32_t mLength; - uint32_t mCount; - uint32_t mMaxQueueable; + size_t mLength; + size_t mCount; + size_t mMaxQueueable; } BuffersDescriptor; enum CameraCommands @@ -1110,7 +1110,7 @@ void insertSupportedParams(); /** Allocate preview data buffers */ - status_t allocPreviewDataBufs(uint32_t size, uint32_t bufferCount); + status_t allocPreviewDataBufs(size_t size, size_t bufferCount); /** Free preview data buffers */ status_t freePreviewDataBufs(); @@ -1122,7 +1122,7 @@ status_t allocVideoBufs(uint32_t width, uint32_t height, uint32_t bufferCount); /** Allocate image capture buffers */ - status_t allocImageBufs(unsigned int width, unsigned int height, uint32_t length, const char* previewFormat, unsigned int bufferCount); + status_t allocImageBufs(unsigned int width, unsigned int height, size_t length, const char* previewFormat, unsigned int bufferCount); /** Free preview buffers */ status_t freePreviewBufs(); --- a/android/hardware/ti/omap4xxx/camera/OMXCameraAdapter/OMXFocus.cpp +++ b/android/hardware/ti/omap4xxx/camera/OMXCameraAdapter/OMXFocus.cpp @@ -729,12 +729,12 @@ for ( unsigned int n = 0; n < mFocusAreas.size(); n++) { // transform the coordinates to 3A-type coordinates - mFocusAreas.itemAt(n)->transfrom(mPreviewData->mWidth, - mPreviewData->mHeight, - focusAreas[0]->tAlgoAreas[n].nTop, - focusAreas[0]->tAlgoAreas[n].nLeft, - focusAreas[0]->tAlgoAreas[n].nWidth, - focusAreas[0]->tAlgoAreas[n].nHeight); + mFocusAreas.itemAt(n)->transfrom((size_t)mPreviewData->mWidth, + (size_t)mPreviewData->mHeight, + (size_t&)focusAreas[0]->tAlgoAreas[n].nTop, + (size_t&)focusAreas[0]->tAlgoAreas[n].nLeft, + (size_t&)focusAreas[0]->tAlgoAreas[n].nWidth, + (size_t&)focusAreas[0]->tAlgoAreas[n].nHeight); focusAreas[0]->tAlgoAreas[n].nLeft = ( focusAreas[0]->tAlgoAreas[n].nLeft * TOUCH_FOCUS_RANGE ) / mPreviewData->mWidth; --- a/android/hardware/ti/omap4xxx/camera/OMXCameraAdapter/OMX3A.cpp +++ b/android/hardware/ti/omap4xxx/camera/OMXCameraAdapter/OMX3A.cpp @@ -1525,12 +1525,12 @@ for ( unsigned int n = 0; n < mMeteringAreas.size(); n++) { // transform the coordinates to 3A-type coordinates - mMeteringAreas.itemAt(n)->transfrom(mPreviewData->mWidth, - mPreviewData->mHeight, - meteringAreas[0]->tAlgoAreas[n].nTop, - meteringAreas[0]->tAlgoAreas[n].nLeft, - meteringAreas[0]->tAlgoAreas[n].nWidth, - meteringAreas[0]->tAlgoAreas[n].nHeight); + mMeteringAreas.itemAt(n)->transfrom((size_t)mPreviewData->mWidth, + (size_t)mPreviewData->mHeight, + (size_t&)meteringAreas[0]->tAlgoAreas[n].nTop, + (size_t&)meteringAreas[0]->tAlgoAreas[n].nLeft, + (size_t&)meteringAreas[0]->tAlgoAreas[n].nWidth, + (size_t&)meteringAreas[0]->tAlgoAreas[n].nHeight); meteringAreas[0]->tAlgoAreas[n].nLeft = ( meteringAreas[0]->tAlgoAreas[n].nLeft * METERING_AREAS_RANGE ) / mPreviewData->mWidth; --- a/android/hardware/ti/omap4xxx/domx/omx_core/inc/OMX_Types.h +++ b/android/hardware/ti/omap4xxx/domx/omx_core/inc/OMX_Types.h @@ -34,7 +34,6 @@ #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ -#include /** The OMX_API and OMX_APIENTRY are platform specific definitions used * to declare OMX function prototypes. They are modified to meet the @@ -131,22 +130,22 @@ */ /** OMX_U8 is an 8 bit unsigned quantity that is byte aligned */ -typedef uint8_t OMX_U8; +typedef unsigned char OMX_U8; /** OMX_S8 is an 8 bit signed quantity that is byte aligned */ -typedef int8_t OMX_S8; +typedef signed char OMX_S8; /** OMX_U16 is a 16 bit unsigned quantity that is 16 bit word aligned */ -typedef uint16_t OMX_U16; +typedef unsigned short OMX_U16; /** OMX_S16 is a 16 bit signed quantity that is 16 bit word aligned */ -typedef int16_t OMX_S16; +typedef signed short OMX_S16; /** OMX_U32 is a 32 bit unsigned quantity that is 32 bit word aligned */ -typedef uint32_t OMX_U32; +typedef unsigned long OMX_U32; /** OMX_S32 is a 32 bit signed quantity that is 32 bit word aligned */ -typedef int32_t OMX_S32; +typedef signed long OMX_S32; /* Users with compilers that cannot accept the "long long" designation should debian/patches/android/disable-java.patch0000664000000000000000000000227312165305525015612 0ustar Description: disable java checks Author: Dmitrijs Ledkovs --- a/android/build/core/main.mk +++ b/android/build/core/main.mk @@ -122,6 +122,7 @@ endif +ifneq (,) # Check for the correct version of java java_version := $(shell java -version 2>&1 | head -n 1 | grep '^java .*[ "]1\.6[\. "$$]') ifneq ($(shell java -version 2>&1 | grep -i openjdk),) @@ -163,6 +164,7 @@ $(info ************************************************************) $(error stop) endif +endif $(shell echo 'VERSIONS_CHECKED := $(VERSION_CHECK_SEQUENCE_NUMBER)' \ > $(OUT_DIR)/versions_checked.mk) --- a/android/build/core/config.mk +++ b/android/build/core/config.mk @@ -331,6 +331,8 @@ endif OLD_FLEX := prebuilt/$(HOST_PREBUILT_TAG)/flex/flex-2.5.4a$(HOST_EXECUTABLE_SUFFIX) +HOST_JDK_TOOLS_JAR := +ifneq (,) ifeq ($(HOST_OS),darwin) # Mac OS' screwy version of java uses a non-standard directory layout # and doesn't even seem to have tools.jar. On the other hand, javac seems @@ -350,6 +352,7 @@ ifneq ($(filter 64-Bit, $(shell java -version 2>&1)),) HOST_JDK_IS_64BIT_VERSION := true endif +endif # It's called md5 on Mac OS and md5sum on Linux ifeq ($(HOST_OS),darwin) debian/patches/binutils/0000775000000000000000000000000012165316224012452 5ustar debian/patches/binutils/0002-binutils-Fix-possible-use-of-uninitialized-variable.patch0000664000000000000000000000165212165316211026072 0ustar From 6b50f99a6664904fae379f388fac4821a0be544e Mon Sep 17 00:00:00 2001 From: Bernhard Rosenkraenzer Date: Thu, 15 Nov 2012 19:32:34 +0100 Subject: [PATCH 2/6] binutils: Fix possible use of uninitialized variable We're building for Android with -Wall -Werror... Change-Id: I5d423c5b6ff38cfe3397021402ad4aa01d787888 Signed-off-by: Bernhard Rosenkraenzer --- binutils/stabs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/binutils/stabs.c b/binutils/stabs.c index 8b45977..140bada 100644 --- a/binutils/stabs.c +++ b/binutils/stabs.c @@ -2593,7 +2593,7 @@ parse_stab_members (void *dhandle, struct stab_handle *info, bfd_boolean constp, volatilep, staticp; bfd_vma voffset; debug_type context; - const char *physname; + const char *physname = 0; bfd_boolean varargs; if (look_ahead_type != DEBUG_TYPE_NULL) -- 1.8.3.2 debian/patches/binutils/0006-Build-mkstemps.c-unconditionally.patch0000664000000000000000000000213612165316211022406 0ustar From a894b8ee163afc824a6522511f8f9e329f8497cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= Date: Mon, 20 May 2013 21:09:05 +0200 Subject: [PATCH 6/6] Build mkstemps.c unconditionally MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Build mkstemps.c unconditionally - while glibc has it, it still leads to linkage problems w/ opannotate Signed-off-by: Bernhard Rosenkränzer --- libiberty/Makefile.in | 1 + 1 file changed, 1 insertion(+) diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in index f6a3ebd..b9a3cd4 100644 --- a/libiberty/Makefile.in +++ b/libiberty/Makefile.in @@ -175,6 +175,7 @@ REQUIRED_OFILES = \ ./getruntime.$(objext) ./hashtab.$(objext) ./hex.$(objext) \ ./lbasename.$(objext) ./lrealpath.$(objext) \ ./make-relative-prefix.$(objext) ./make-temp-file.$(objext) \ + ./mkstemps.$(objext) \ ./objalloc.$(objext) \ ./obstack.$(objext) \ ./partition.$(objext) ./pexecute.$(objext) ./physmem.$(objext) \ -- 1.8.3.2 debian/patches/binutils/0004-binutils-Fix-build-with-some-STL-versions.patch0000664000000000000000000000241712165316211023746 0ustar From 100723d4d1f9f786edc95726c85659c228dbfddd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= Date: Mon, 7 Jan 2013 19:39:08 +0100 Subject: [PATCH 4/6] binutils: Fix build with some STL versions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some STL versions, including Android's STLport, seem to prefer the non-const_reverse_iterator version of rend() over the const_reverse_iterator version, and not provide implicit casts to const_reverse_iterator, causing the build to fail. Signed-off-by: Bernhard Rosenkränzer --- gold/powerpc.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gold/powerpc.cc b/gold/powerpc.cc index fdb68a1..1fd51cf 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -2312,7 +2312,7 @@ Target_powerpc::group_sections(Layout* layout, typedef Output_section::Input_section_list Input_section_list; for (Input_section_list::const_reverse_iterator i = (*o)->input_sections().rbegin(); - i != (*o)->input_sections().rend(); + i != (Input_section_list::const_reverse_iterator)(*o)->input_sections().rend(); ++i) { if (i->is_input_section()) -- 1.8.3.2 debian/patches/binutils/0003-binutils-Port-to-Android.patch0000664000000000000000000001634312165316211020627 0ustar From aa48d470554a0316c48a602838fe7ebc6c8d9506 Mon Sep 17 00:00:00 2001 From: Bernhard Rosenkraenzer Date: Thu, 15 Nov 2012 19:31:42 +0100 Subject: [PATCH 3/6] binutils: Port to Android Change-Id: Ib47c28cbde7a6165206675e75b52c0fdb86dff59 Signed-off-by: Bernhard Rosenkraenzer --- bfd/archive.c | 2 +- gold/Makefile.am | 2 +- gold/Makefile.in | 2 +- gold/archive.cc | 2 +- gold/configure | 7 +++++-- gold/configure.ac | 6 +++++- gold/gdb-index.cc | 2 ++ gold/stringpool.cc | 4 ++-- gold/symtab.cc | 2 +- gold/system.h | 22 ++++++++++++++++------ libiberty/getpagesize.c | 2 ++ 11 files changed, 37 insertions(+), 16 deletions(-) diff --git a/bfd/archive.c b/bfd/archive.c index 1ed4148..4284da8 100644 --- a/bfd/archive.c +++ b/bfd/archive.c @@ -1880,7 +1880,7 @@ bfd_ar_hdr_from_filesystem (bfd *abfd, const char *filename, bfd *member) { /* Assume we just "made" the member, and fake it. */ struct bfd_in_memory *bim = (struct bfd_in_memory *) member->iostream; - time (&status.st_mtime); + time ((time_t*)&status.st_mtime); status.st_uid = getuid (); status.st_gid = getgid (); status.st_mode = 0644; diff --git a/gold/Makefile.am b/gold/Makefile.am index f6ced44..3bb0d11 100644 --- a/gold/Makefile.am +++ b/gold/Makefile.am @@ -27,7 +27,7 @@ tooldir = $(exec_prefix)/$(target_alias) ACLOCAL_AMFLAGS = -I ../bfd -I ../config AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) -AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) +AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) -Wno-error AM_CPPFLAGS = \ -I$(srcdir) -I$(srcdir)/../include -I$(srcdir)/../elfcpp \ diff --git a/gold/Makefile.in b/gold/Makefile.in index f12832b..8b48dec 100644 --- a/gold/Makefile.in +++ b/gold/Makefile.in @@ -392,7 +392,7 @@ SUBDIRS = po testsuite tooldir = $(exec_prefix)/$(target_alias) ACLOCAL_AMFLAGS = -I ../bfd -I ../config AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) -AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) +AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(RANDOM_SEED_CFLAGS) -Wno-error AM_CPPFLAGS = \ -I$(srcdir) -I$(srcdir)/../include -I$(srcdir)/../elfcpp \ -DLOCALEDIR="\"$(datadir)/locale\"" \ diff --git a/gold/archive.cc b/gold/archive.cc index f2cd848..753266f 100644 --- a/gold/archive.cc +++ b/gold/archive.cc @@ -584,7 +584,7 @@ Archive::get_file_and_offset(off_t off, Input_file** input_file, off_t* memoff, const char* arch_path = this->filename().c_str(); const char* basename = lbasename(arch_path); if (basename > arch_path) - member_name->replace(0, 0, + member_name->replace((std::string::size_type)0, 0, this->filename().substr(0, basename - arch_path)); } diff --git a/gold/configure b/gold/configure index 7e58cdf..7ccd7db 100755 --- a/gold/configure +++ b/gold/configure @@ -6698,8 +6698,11 @@ else fi - -LFS_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# On Android, _FILE_OFFSET_BITS=64 causes unresolved +# references to 64-bit variants of _M_seek in stlport +if ! echo $host |grep -q android; then + LFS_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +fi for ac_header in sys/mman.h diff --git a/gold/configure.ac b/gold/configure.ac index b03c09d..2168ef0 100644 --- a/gold/configure.ac +++ b/gold/configure.ac @@ -471,7 +471,11 @@ AC_SUBST(GOLD_LDADD) dnl Force support for large files by default. This may need to be dnl host dependent. If build == host, we can check getconf LFS_CFLAGS. -LFS_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# On Android, _FILE_OFFSET_BITS=64 causes unresolved +# references to 64-bit variants of _M_seek in stlport +if ! echo $host |grep -q android; then + LFS_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +fi AC_SUBST(LFS_CFLAGS) AC_CHECK_HEADERS(sys/mman.h) diff --git a/gold/gdb-index.cc b/gold/gdb-index.cc index 91634a4..ccbb240 100644 --- a/gold/gdb-index.cc +++ b/gold/gdb-index.cc @@ -29,6 +29,8 @@ #include "output.h" #include "demangle.h" +#include // for tolower + namespace gold { diff --git a/gold/stringpool.cc b/gold/stringpool.cc index 434b2d6..1780f64 100644 --- a/gold/stringpool.cc +++ b/gold/stringpool.cc @@ -76,7 +76,7 @@ Stringpool_template::reserve(unsigned int n) // rehash() implementation is broken in gcc 4.0.3's stl //this->string_set_.rehash(this->string_set_.size() + n); //return; -#elif defined(HAVE_EXT_HASH_MAP) +#elif defined(HAVE_EXT_HASH_MAP) || defined(ANDROID) this->string_set_.resize(this->string_set_.size() + n); return; #endif @@ -499,7 +499,7 @@ template void Stringpool_template::print_stats(const char* name) const { -#if defined(HAVE_TR1_UNORDERED_MAP) || defined(HAVE_EXT_HASH_MAP) +#if defined(HAVE_TR1_UNORDERED_MAP) || defined(HAVE_EXT_HASH_MAP) || defined(ANDROID) fprintf(stderr, _("%s: %s entries: %zu; buckets: %zu\n"), program_name, name, this->string_set_.size(), this->string_set_.bucket_count()); diff --git a/gold/symtab.cc b/gold/symtab.cc index 2e17529..e6ae14d 100644 --- a/gold/symtab.cc +++ b/gold/symtab.cc @@ -3150,7 +3150,7 @@ Symbol_table::sized_write_section_symbol(const Output_section* os, void Symbol_table::print_stats() const { -#if defined(HAVE_TR1_UNORDERED_MAP) || defined(HAVE_EXT_HASH_MAP) +#if defined(HAVE_TR1_UNORDERED_MAP) || defined(HAVE_EXT_HASH_MAP) || defined(ANDROID) fprintf(stderr, _("%s: symbol table entries: %zu; buckets: %zu\n"), program_name, this->table_.size(), this->table_.bucket_count()); #else diff --git a/gold/system.h b/gold/system.h index 3e6fe1d..a9a9464 100644 --- a/gold/system.h +++ b/gold/system.h @@ -87,17 +87,27 @@ struct hash : public std::unary_function } } // Close namespaces. #endif // !defined(HAVE_TR1_HASH_OFF_T) -#elif defined(HAVE_EXT_HASH_MAP) && defined(HAVE_EXT_HASH_SET) - +#elif defined(ANDROID) || (defined(HAVE_EXT_HASH_MAP) && defined(HAVE_EXT_HASH_SET)) + +#ifdef ANDROID // STLport is a bit like libstdc++ in terms of extensions... But not quite the same +#include +#include +#include +#define HASHMAP_NAMESPACE std +using std::_STLP_PRIV_NAME::__stl_hash_string; +#else #include #include +#define HASHMAP_NAMESPACE __gnu_cxx +#endif + #include -#define Unordered_set __gnu_cxx::hash_set -#define Unordered_map __gnu_cxx::hash_map -#define Unordered_multimap __gnu_cxx::hash_multimap +#define Unordered_set HASHMAP_NAMESPACE::hash_set +#define Unordered_map HASHMAP_NAMESPACE::hash_map +#define Unordered_multimap HASHMAP_NAMESPACE::hash_multimap -namespace __gnu_cxx +namespace HASHMAP_NAMESPACE { template<> diff --git a/libiberty/getpagesize.c b/libiberty/getpagesize.c index 1c3a263..e9d6362 100644 --- a/libiberty/getpagesize.c +++ b/libiberty/getpagesize.c @@ -60,11 +60,13 @@ BUGS # endif /* PAGESIZE */ #endif /* GNU_OUR_PAGESIZE */ +#ifndef __BIONIC__ /* Bionic implements getpagesize() itself */ int getpagesize (void) { return (GNU_OUR_PAGESIZE); } +#endif #else /* VMS */ -- 1.8.3.2 debian/patches/binutils/0001-binutils-Fix-format-string-error-with-enable-targets.patch0000664000000000000000000000145512165316211026214 0ustar From f9f2230a46543f7811679b2237ae03d3d6dd3a45 Mon Sep 17 00:00:00 2001 From: Bernhard Rosenkraenzer Date: Thu, 15 Nov 2012 19:20:00 +0100 Subject: [PATCH 1/6] binutils: Fix format string error with --enable-targets=all Change-Id: Ic2abcfac5072650a8157ac5f7bd538d82ec6ce02 Signed-off-by: Bernhard Rosenkraenzer --- opcodes/s390-mkopc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opcodes/s390-mkopc.c b/opcodes/s390-mkopc.c index 6aed72b..654c01c 100644 --- a/opcodes/s390-mkopc.c +++ b/opcodes/s390-mkopc.c @@ -298,7 +298,7 @@ dumpTable (void) int ix; /* Write hash table entries (slots). */ - printf (file_header); + printf ("%s", file_header); for (ix = 0; ix < no_ops; ix++) { -- 1.8.3.2 debian/patches/binutils/0005-gold-Add-workaround-for-some-compiler-versions.patch0000664000000000000000000000702012165316211025057 0ustar From c3a543c4062f2c202f7a48979880d0757fd7c161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= Date: Wed, 8 May 2013 13:19:28 +0200 Subject: [PATCH 5/6] gold: Add workaround for some compiler versions Some versions of gcc can't or won't resolve Address into elfcpp::Elf_types::Elf_Addr -- so use that type directly. Some versions of gcc also warn about firsttype$defined and firsttype$index being used uninitialized. Change-Id: I25cb061e9e947843a328b0479fd9a8d6e40b1846 Signed-off-by: Bernhard Rosenkraenzer Conflicts: gold/powerpc.cc --- gas/config/tc-arm.c | 2 +- gold/powerpc.cc | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index a72b0b0..13f5a40 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -1938,7 +1938,7 @@ parse_neon_el_struct_list (char **str, unsigned *pbase, enum arm_reg_type rtype = REG_TYPE_NDQ; const char *const incr_error = _("register stride must be 1 or 2"); const char *const type_error = _("mismatched element/structure types in list"); - struct neon_typed_alias firsttype; + struct neon_typed_alias firsttype = { 0, 0, { 0, 0 } }; if (skip_past_char (&ptr, '{') == SUCCESS) leading_brace = 1; diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 1fd51cf..3b2d607 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -923,7 +923,7 @@ class Target_powerpc : public Sized_target bool issued_non_pic_error_; }; - Address + typename elfcpp::Elf_types::Elf_Addr symval_for_branch(const Symbol_table* symtab, Address value, const Sized_symbol* gsym, Powerpc_relobj* object, @@ -3231,20 +3231,20 @@ class Stub_table : public Output_relaxed_input_section Address); // Find a given plt call stub. - Address + typename elfcpp::Elf_types::Elf_Addr find_plt_call_entry(const Symbol*) const; - Address + typename elfcpp::Elf_types::Elf_Addr find_plt_call_entry(const Sized_relobj_file*, unsigned int) const; - Address + typename elfcpp::Elf_types::Elf_Addr find_plt_call_entry(const Sized_relobj_file*, const Symbol*, unsigned int, Address) const; - Address + typename elfcpp::Elf_types::Elf_Addr find_plt_call_entry(const Sized_relobj_file*, unsigned int, unsigned int, @@ -3254,7 +3254,7 @@ class Stub_table : public Output_relaxed_input_section void add_long_branch_entry(const Powerpc_relobj*, Address); - Address + typename elfcpp::Elf_types::Elf_Addr find_long_branch_entry(const Powerpc_relobj*, Address) const; @@ -3267,7 +3267,7 @@ class Stub_table : public Output_relaxed_input_section this->branch_size_ = 0; } - Address + typename elfcpp::Elf_types::Elf_Addr set_address_and_size(const Output_section* os, Address off) { Address start_off = off; @@ -3284,14 +3284,14 @@ class Stub_table : public Output_relaxed_input_section return my_size; } - Address + typename elfcpp::Elf_types::Elf_Addr stub_address() const { return align_address(this->address() + this->orig_data_size_, this->stub_align()); } - Address + typename elfcpp::Elf_types::Elf_Addr stub_offset() const { return align_address(this->offset() + this->orig_data_size_, -- 1.8.3.2 debian/patches/binutils/series0000664000000000000000000000047612165316244013700 0ustar 0001-binutils-Fix-format-string-error-with-enable-targets.patch 0002-binutils-Fix-possible-use-of-uninitialized-variable.patch 0003-binutils-Port-to-Android.patch 0004-binutils-Fix-build-with-some-STL-versions.patch 0005-gold-Add-workaround-for-some-compiler-versions.patch 0006-Build-mkstemps.c-unconditionally.patch debian/patches/series0000664000000000000000000000003312165372211012030 0ustar android/disable-java.patch debian/README.source0000664000000000000000000000133412165300313011342 0ustar gcc-arm-linux-androideabi for Debian ------------------------------------ The source code for this package is managed uring repo tool [1] [1] http://source.android.com/source/using-repo.html To correctly fetch the source package, please install repo tool using these instructions [2] [2] http://source.android.com/source/downloading.html Then you can checkout the source using the manifest for this package and generate debian source package: $ mkdir gcc-bionic && cd gcc-bionic $ repo init -u git://github.com/xnox/manifest-gcc-arm-linux-androideabi.git $ repo sync -j8 $ repo start master --all $ ./debian/rules get-orig-source $ debuild -S -- Dmitrijs Ledkovs , Mon, 10 Jun 2013 13:39:48 +0100 debian/compat0000664000000000000000000000000212165374154010376 0ustar 9