aboutsummaryrefslogtreecommitdiffstats
path: root/android-configure.sh
Commit message (Collapse)AuthorAgeFilesLines
* [MIPS] Add Goldfish target supportBhanu Chetlapalli2012-06-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | Basic Goldfish support for MIPS. Also, Fix host CPU consumption when guest is idle When the CPU is in wait state, do not wake-up if an interrupt can't be taken. This avoid host CPU running at 100% if a device (e.g. timer) has an interrupt line left enabled. Also factorize code to check if interrupts are enabled in cpu_mips_hw_interrupts_pending(). CPU consumption based on a patch from Edgar E. Iglesias <edgar.iglesias@gmail.com> Change-Id: Ie8371c8d0c9af1e0c8ba4cac419979350de0f5d9 Signed-off-by: yajin <yajin@mips.com.cm> Signed-off-by: Douglas Leung <douglas@mips.com> Signed-off-by: Bhanu Chetlapalli <bhanu@mips.com> Signed-off-by: Chris Dearman <chris@mips.com>
* Fix --no-gles config, and ease the pain of standalone emulator buildVladimir Chtchetkine2012-05-111-0/+26
| | | | | | | | | | 1. Apparently, emulator build fails when configured with --no-gles option due to missing android_setPostCallback implementation. 2. It's painful to configure standalone emulator build WITH OpenGLES, since it requires explicit using of --gles-include, and --gles-lib when launching android-configure.sh To ease that pain, just use default location for standalone emulator build. Change-Id: I2d9ed56d68a4ab1cb1ec294817f22dca80d33223
* Fixed standalone emulator when ANDROID_BUILD_TOP is presentAndrew Hsieh2012-05-081-6/+0
| | | | | | | | | With ANDROID_BUILD_TOP android-configure.sh searches for prebuilt directories later used for locating ccache. At this moment, ccache is located in different location between AOSP and internal tree. Beside, "prebuilt" is gone in internal tree. Change-Id: Ib14b8c91c9f8026605617f2abf94c3bee9ddadb6
* Fix standalone emulator build.Jesse Hall2012-04-261-1/+1
| | | | | | | | | | - Allow building with OpenGL ES acceleration disabled, avoiding a dependency on stuff outside the QEMU project. - Allow the standalone configure.sh to provide the include/lib path for the OpenGL ES libraries. - Update the default OpenGL ES include path for standalone builds. Change-Id: I03f4627af4c271783b65a116ceb5934385c68cdc
* 64-bit emulatorAndrew Hsieh2012-03-131-6/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch to allow emulator searches for emulator64-${ARCH} first on 64-bit OS. If none is found, the original behavior which searchs for 32-bit emulator-${ARCH} is performed as usual. 64-bit emulator (which still emulates Android built in 32-bit) offers up to 20% speedup compared to its 32-bit counterpart. Details: android/main-emulator.c 1) search emulator64 based on the OS 2) dlopen lib64OpenglRender in 64-bit Makefile.* 1) Rules to build 64-bit executable emulator64-{x86,arm} and libraries emulator64-{libui,libqemu,target-i386,target-arm,libelff,common} 2) remove -Wa,-32 3) Changes prebuit toolchain path android-configure.h android/build/common.h 1) no longer force 32-bit build (because now prebuilts/tools/gcc-sdk/gcc can now handle 64-bit 2) set ANDROID_PREBUILTS to correctly locate ccache android/config/*/config-host.h 1) Detect HOST_X86_64 and HOST_X86_64/HOST_I386 Misc 64-bit porting clean-up 1) use %zx to print variable of type size_t in hex 2) use %zu to print variable of type size_t in dec 3) Initialize query_parm to NULL 4) use PRIu64 to replace PDUd64 5) use PRId64/PRIu64/PRIX64 to print 64-bit 6) drop PRUx64 because PRIx64 does the same 7) cast pointer arith to intptr_t before casting to int 8) fixed 1ULL<<63 Change-Id: Ife62a20063a6ec38d4a9b23977e840af1fce149a
* Revert "Reference new location of SDK toolchain"Jean-Baptiste Queru2012-01-111-5/+1
| | | | This reverts commit 6e8d9298782ce4d5a7d506638ced4de0396735f9.
* Reference new location of SDK toolchainJean-Baptiste Queru2012-01-111-1/+5
| | | | Change-Id: Id28db802a5401141a5ec1052de81dbee5033577f
* android-configure.sh: Add OpenGLES supportDavid 'Digit' Turner2011-08-241-1/+111
| | | | | | | | | | | | | | | | | | | | | | | This patch modifies android-configure.sh in several ways: - It adds --gles-include and --gles-libs options to point to the location where one can find the headers and host shared libraries required for OpenGLES emulation support. - It also adds --no-gles to disable adding such support. - In the case of a platform build, it auto-configs --gles-include and --gles-libs for you. - adds '#define CONFIG_ANDROID_OPENGLES 1" to the auto-generated config-host.h file. This is in preparation of more GLES-related patches. Note that this does *not* add GLES emulation support to the emulator itself, this will come later. Change-Id: I42d93475d323334db1b585f61c963688c80a3f06
* Avoid conflicts with SDL_CONFIG variable.David 'Digit' Turner2011-08-241-1/+1
| | | | | | | | | | Other Android.mk parsed before this one may define SDL_CONFIG in an unexpected way. We only use this variable as input when want to implement the --sdl-config option in ./android-configure.sh Use QEMU_SDL_CONFIG instead to avoid issues. Change-Id: I89d56284017c696227d7c66ea7d7b0acaa73a9ca
* ramblocks: integrate upstream implementation (sophisticated)David 'Digit' Turner2011-06-011-0/+6
| | | | Change-Id: I49e96e2d5ae571849b0b6fef0a30b41ecdee8d23
* android-configure.sh: fix KVM-enabled builds.David 'Digit' Turner2011-06-011-1/+16
| | | | | | | | This patch ensures that CONFIG_KVM_GS_RESTORE is defined in the auto-generated config-host.h. Does not affect normal platform builds. Change-Id: Ib064fd44d73e9b6e9b3e9349c1e72c060a83f38c
* android-configure.sh: Fix --cc=<compiler> option.David 'Digit' Turner2011-02-091-0/+6
| | | | | | | | + Fix LOCAL_GENERATED_SOURCES handling + Fix missing library dependencies for executables + Move generated library files to objs/libs/ (instead of objs/) Change-Id: If3ebaa7ae856efa9bd3ff9e2c199389989db7f71
* Fix android-configure.shDavid 'Digit' Turner2011-02-071-0/+5
| | | | | | | | The latest patch broke the script because TARGET_ARCH is no longer defined as it should. Use the --arch=x86 option to force an x86 build (which currently fails though), arm being the default. Change-Id: Ie5f508b2caa972620787fc268f8dccc02df65f2b
* x86: Add x86 support. Rebase the change (20906/1) due to a minor conflict.Jun Nakajima2011-02-021-0/+7
| | | | | | | Change-Id: Ic73cca0fc6c6e5cf74f63daa6080d00aa7c392bb Signed-off-by: Xiaohui Xin <xiaohui.xin@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com> Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
* android-configure.sh: Use 32-bit toolchain if present.David 'Digit' Turner2011-01-021-5/+14
| | | | | | | | This makes android-configure.sh probe for our custom 32-bit toolchain. If found, it will be used unless you have defined CC in your environment, use --try-64 or --cc=<compiler> Change-Id: I40855378eaadf52daf004dab074e53b9df0262b5
* Do not try to run the audio config tests.David 'Digit' Turner2010-12-171-1/+1
| | | | | | This actually prevents the script from working when using a cross-toolchain. Change-Id: I9083cbb1fc78a9e5e3e569259ccdc7c87698ceef
* Fix incorrect orientation at boot.David 'Digit' Turner2010-10-201-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goldfish kernel's event driver is very picky about the state of the virtual device it talks to. Essentially, it can only listen to h/w events if the corresponding IRQ is raised _after_ it has completed some initial setup. If the IRQ is raised before, the driver will refuse to listen to events, and any interaction becomes impossible. We changed the way our UI windows are built and managed previously, and this had the unfortunate effect of sending one h/w event too soon, which, in the old code, would raise the IRQ prematurely. This resulted in an input freeze. To work around this the UI code was modified to not send the initial h/w event, but this resulted in bad orientation of the home screen at the end of the boot sequence. This change allows the virtual device to wait for the kernel driver before raising the IRQ, in the case any h/w event has been buffered. It also removes the hack in the UI code, allowing the send of the initial h/w event at startup. BONUS MINOR CHANGES: EsounD probe: fix error message. console: fix compiler warnings libpng: proper handling of MMX support. android-configure.sh: fix --ignore-audio handling The option didn't do anything if the audio development packages are properly installed on the system. Change-Id: Ib134158873d5cb72290c9676d92d20233226c889
* standalone builds: windows executables end in .exeDavid 'Digit' Turner2010-10-141-2/+12
| | | | | | | | | | | | | | | | This change only applies to the stand-alone build system. It ensures that when one does the following under Linux: ./android-configure.sh --mingw make then, the Windows executables that are generated have their name ending in .exe (e.g. objs/emulator.exe instead of objs/emulator) This does not affect the Android build system which already does the right thing (and is used to build SDK binaries). Change-Id: If9597e550f0bceec04d334eb84199a0f024a3fdf
* Fix detection of host endiannessMarcus Comstedt2010-10-051-1/+4
| | | | | | | | | | The host endianness in android-configure.sh was backwards (assuming that HOST_BIGENDIAN=1 means that the host is bigendian). However, the script also failed to use the result, which is probably why nobody noticed. Now, HOST_WORDS_BIGENDIAN is defined in config-host.h if HOST_BIGENDIAN is 1. Change-Id: Ied07f9db76c24e5ce403ae17fde5df7f50fafe8a
* upstream: bswap.hDavid Turner2010-09-131-4/+7
| | | | + add a <machine/bswap.h> probe to android-configure.sh
* Add <fnmatch.h> check to android-configure.hDavid Turner2010-09-131-0/+5
|
* Add new "qemu monitor" command to the console.David 'Digit' Turner2010-09-081-0/+2
| | | | | | | | | | | | | | | | | | | This allows you to access the QEMU virtual machine monitor directly from the console (instead of playing with the command-line to do it). The implementation of the 'quit' command has been modified to simply close the connection, instead of stopping the emulator program. This patch introduces changes that allow a console session to be detached and redirected at runtime to other internal services of the emulator program. This will be useful in the future to implement other features. + doc typo + add proper definitions for CONFIG_ANDROID on config-host.h + remove obsolete sysdeps.h dependency in android/console.c Change-Id: If16cfe41c12a26eb8f56e3a9c24452eafa5efab4
* Add a PulseAudio audio backend for Linux.David 'Digit' Turner2010-08-271-37/+33
| | | | Change-Id: Ifaf876c41ab6c7275ba7d1dc8e12139f62840cd6
* Enable --mingw option in android-configure.shDavid 'Digit' Turner2010-06-101-7/+32
| | | | | | This should ease testing of the Windows build during development. Change-Id: I45cc9e396a0e82d764cf7a27fd40ad7c5367c51a
* Build SDL from sources directly.David 'Digit' Turner2010-05-181-92/+60
| | | | | | | | | | | | | | | | This removes the requirement to build the SDL library before the rest of the emulator. The prebuilt SDL library and installation is now optional and is only kept for the full Android build on Linux (mainly to avoid having to install many dev libraries on build servers). This patch affects both the Android and standalone build systems. The script android-configure.sh will not use a prebuilt SDL installation unless you explicitely use --sdl-config=<script>. Tested for linux-x86 / darwin-x86 / cygwin / linux-mingw builds. Change-Id: If973b2ad199f06aeeff43aec387d1ac629487529
* Upstream: add qemu_fdatasync()David 'Digit' Turner2010-05-111-0/+8
| | | | Change-Id: I232b9c4df372e1fded97694fffcd72ef9ea113c4
* Upstream: HAVE_IOVEC => CONFIG_IOVECDavid 'Digit' Turner2010-05-111-1/+1
| | | | Change-Id: I18025d9c154a02af5d6298c7d7f72fc9f2c1c5d7
* Upstream: Use CONFIG_BSD instead of _BSD and HOST_BSDDavid 'Digit' Turner2010-05-101-1/+1
| | | | | Also fix OS X build, which failed with a link error. Change-Id: Idd63f25dc1f46ea66da5727c7577def34f048c3c
* Add --static option to android-configure.sh in order to build static ↵David 'Digit' Turner2010-03-081-0/+13
| | | | | | | | | | emulator executable. This is needed to run the emulator in restricted environment where libX11.so and even libstdc++.so are not available. Only tested on Linux. The resulting binary will not start unless you use -no-window. Also don't expect any audio output working. Change-Id: Ia736898cd3ae6eb928614a00a1a3e18cc8086a5c
* am dc3dd741: am a383d02c: Extract emulator major version number from SDK ↵David 'Digit' Turner2009-12-031-0/+12
|\ | | | | | | | | | | | | | | | | Tools package revision. Merge commit 'dc3dd741551c323bb853782656c0d693db98ecdc' into eclair-mr2-plus-aosp * commit 'dc3dd741551c323bb853782656c0d693db98ecdc': Extract emulator major version number from SDK Tools package revision.
| * Extract emulator major version number from SDK Tools package revision.David 'Digit' Turner2009-12-031-0/+12
| | | | | | | | | | The minor version number is now always 0, this makes the next version number "5.0" currently in the eclair branch.
* | am 73b9926f: Merge change If4f13b68 into eclairDavid 'Digit' Turner2009-10-091-6/+0
|\ \ | |/ | | | | | | | | | | Merge commit '73b9926fd43c9b5cd00319c5d117448bd1b31112' into eclair-plus-aosp * commit '73b9926fd43c9b5cd00319c5d117448bd1b31112': Fix upstream ARM emulation bug that broke singlestep mode.
| * Fix upstream ARM emulation bug that broke singlestep mode.David 'Digit' Turner2009-10-091-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a really bad bug in the Thumb/Thumb2 ARM emulation related to conditional instructions execution. The issue was that the previous implementation did break badly if a page fault occured during the conditional instruction's emulation. Giving an example if probably the best way to demonstrate this. Consider the following two instructions: itt eq streq r0,[r4, #0] These two instructions mean, respectively: - If the Z flag is set, execute the next instruction. Otherwise ignore it - Store the value of r0 at the address pointed to by r4 In single-step mode (used when debugging the emulator), each instruction is separately JIT-ed and executed in a different pass. The 'condexec_bits' field of the CPU state if used to store flags corresponding to the conditional execution of up to 4 next instructions. When the first instruction is executed, it simply sets 'condexec_bits' to a specific value (4). When the second instruction is executed, things get slightly bit more funky because what happened was the following: - the JIT-ed code started by clearing the 'condexec_bits' right at the start of its sequence (a comment says "to avoid complications trying to do it at the end of the block", famous last words...) - a conditional test, based on the current value of the Z flag was added to skip over the rest of the instruction sequence - the store itself is implemented through a call to the __stl_mmu helper function. The thing is that __stl_mmu may implement a *page fault* (i.e. when the address in r4 hasn't been commited to memory yet) which requires a switch to kernel mode (to populate the page), then going back to the instruction's execution. This is done in the current implementation by re-running the JIT-er for the same instruction, however, since 'condexec_bits' was already cleared to 0, the new JIT-ed code sequence doesn't have the conditional test to skip over the store. The conditional instruction has been transformed into a non-conditional one due to the page fault ! This results in either bad behaviour or, even a crash in the emulator. The patch fixes the clearing of condexec_bits to happen as it should, i.e. only when execution has really cleared it. This is preliminary work to fix the -trace option. Also, disable the IO Thread when running the standalone emulator. This makes debugging much easier since everything happens in a single thread.
* | resolved conflicts for merge of 5d8f37ad to eclair-plus-aospJean-Baptiste Queru2009-09-151-1/+16
|\ \ | |/
| * Merge upstream QEMU 10.0.50 into the Android source tree.David 'Digit' Turner2009-09-141-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change integrates many changes from the upstream QEMU sources. Its main purpose is to enable correct ARMv6 and ARMv7 support to the Android emulator. Due to the nature of the upstream code base, this unfortunately also required changes to many other parts of the source. Note that to ensure easier integrations in the future, some source files and directories that have heavy Android-specific customization have been renamed with an -android suffix. The original files are still there for easier integration tracking, but *never* compiled. For example: net.c net-android.c qemu-char.c qemu-char-android.c slirp/ slirp-android/ etc... Tested on linux-x86, darwin-x86 and windows host machines.
* | General changes to support freebsd system in building scriptsAlexey Tarasov2009-09-081-0/+11
|/
* Fix ANDROID_SDK_HOME handling on Unix (the env. var was ignored)David 'Digit' Turner2009-07-241-1/+7
| | | | | | | | Bump version number to 1.11 in android/android.h Update CHANGES.TXT to reflect SDK 1.5_r3 changes Update some comments in android/boot-properties.[hc] Add a --debug option to android-configure.sh (and android-rebuild.sh) to build a unoptimized debug version of the standalone emulator binary.
* Add our modified SDL sources under distrib/sdl-1.2.12David 'Digit' Turner2009-06-081-327/+88
| | | | | | Fix distrib/make-distrib.sh script to work with git Fix distrib/build-emulator.sh to accomodate for new SDL configure script Handle Tiger SDK usage in SDL configure script
* auto import from //depot/cupcake/@136594The Android Open Source Project2009-03-051-0/+16
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+646
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-646/+0
|
* auto import from //branches/cupcake/...@130745The Android Open Source Project2009-02-101-37/+16
|
* auto import from //branches/cupcake/...@125939The Android Open Source Project2009-01-091-6/+5
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-0/+668