1. 21 Nov, 2014 17 commits
    • Chirayu Desai's avatar
      envsetup: include bash completion script from vendor/pa · e0edd852
      Chirayu Desai authored
      Change-Id: Id90d84748df41d6626dfd46befabe0054c6d14e7
      e0edd852
    • Chirayu Desai's avatar
      bacon: get rid of squisher · 21994c67
      Chirayu Desai authored
      Change-Id: I3cece868e56f85bfa0b31a62a51e6eab2070ab06
      21994c67
    • Steve Kondik's avatar
      envsetup: Don't tread on my $PROMPT_COMMAND · a0d8090f
      Steve Kondik authored
       * I want my own PROMPT_COMMAND to coexist with Android's, so stash it
         in the environment and add it to the new command.
      
      Change-Id: I200902f135d0c5c620a8eb3ce9cefdba318cf9d3
      
      envsetup: Fix $PROMPT_COMMAND
      
      Change I200902f135d0c5c620a8eb3ce9cefdba318cf9d3 broke the android
      PROMPT_COMMAND on scenarios where the existing prompt already had
      a hardstatus adjustment, since appending it to Android's just clobbered
      Android's in favor of the original.
      
      So instead of appending them, inject android's at the beggining of the
      existing one (and create a default if none exists)
      
      Change-Id: I1fbcbfdb6220d886dda3662da498d1759a4c195b
      
      envsetup: Really fix PROMPT_COMMAND handling
      
       * Add ANDROID_NO_PROMPT_COMMAND to not change it at all.
       * Export ANDROID_PROMPT_PREFIX so it can be used elsewhere.
      
      Change-Id: Ib2a487404d3b8a367a21582e8a0ce69c2d212a9a
      
      envsetup: More PROMPT_COMMAND
      
      * Get rid of ANDROID_NO_PROMPT_COMMAND, the pre-existing STAY_OFF_MY_LAWN
      does the same thing
      * Remove any pre-existing android prefixes to avoid accumulation
      scenarios in consecutive builds (i.e., multiple build identification
      strings in hardstatus)
      
      Change-Id: I86661e066e18ea6ad0c742fa1dc6555780fa5441
      
      envsetup: add quotes around PROMPT_COMMAND
      
      Better compatibility for zsh.
      
      Change-Id: Ie010c30580e67e3b5357e3cc869114a525762677
      a0d8090f
    • Chirayu Desai's avatar
      cleanbuild: add *.zip.md5sum to installclean_files · 5e7328f5
      Chirayu Desai authored
      Change-Id: I4b68bb9a8d421a54b008c5318fa82ed230bd6441
      5e7328f5
    • Brint E. Kriebel's avatar
      build: Pass OTAPACKAGE location to squisher · c9825a00
      Brint E. Kriebel authored
      Pass the OTAPACKAGE location so we don't have to guess what
      the package name will be. This fixes an issue when
      BUILD_NUMBER is defined in an environment with automated
      builds.
      
      Change-Id: Iab18b541de37c99d237aabc3cb7b2e9ab076617b
      c9825a00
    • Austen Dicken's avatar
      update ota_from_target_files to handle mounting/unmounting for backupscript · 13cdeb93
      Austen Dicken authored
      backupscript should not be mounting/unmounting itself as it makes other
      scripts have unexpected results (such as modelid_cfg, which expects /system
      to be mounted)
      
      instead have the ota script handle the mounting/unmounting
      
      Change-Id: I94511f4147c624d975cb3ecbeaa8b0e98f63437c
      13cdeb93
    • Koushik Dutta's avatar
      Add recoveryzip target. Import recovery building/porting tools. · 8712da4c
      Koushik Dutta authored
      echo args
      
      Change-Id: Ib346a27d94ccab3e992fe3bc3be9e0010e7b89a0
      
      mkvendor.sh: fixes for Android 4.2.
      
      Change-Id: Id7ff9ef03700d595734811ccf868371ffb024384
      
      mkvendor: fix echoed build commands
      
      cm.mk.template uses PRODUCT_NAME := cm___DEVICE__
      
      Change-Id: I063fc4b93d90ebb034637bf3e92d83c77aa439ca
      8712da4c
    • Steve Kondik's avatar
      build: Stop installing the sample APN list · 21f22c40
      Steve Kondik authored
       * Sample APN list is always being installed, we don't want this in CM.
      
      Change-Id: I74b97f3af545c4a7568d3001e1435c63cfbc7de8
      21f22c40
    • Warren Togami's avatar
      Modular backuptool.sh. Executes backup and restore methods defined in... · e4fcae5c
      Warren Togami authored
      Modular backuptool.sh.  Executes backup and restore methods defined in arbitrary /system/addon.d/*.sh scripts.
      
      * Copy backuptool.functions alongside backuptool.sh.
      * Delete both from /system/bin as they are not useful there.
      
      Patch Series
      ============
      http://review.cyanogenmod.com/#change,13265
      CyanogenMod/android_build
        * edify generator
      http://review.cyanogenmod.com/#change,13266
      CyanogenMod/android_system_core
        * permissions on /system/addon.d
      http://review.cyanogenmod.com/#change,13267
      CyanogenMod/android_vendor_cm
        * 50-cm.sh reference backup script
        * modular backuptool.sh
        * support backuptool.functions used by /system/addon.d/*.sh scripts
      
      Change-Id: I26b4907d28f49c69627699d2accd2f0fa2d1b112
      e4fcae5c
    • Koushik Dutta's avatar
      Note that update-api is a lie. · 5d33715f
      Koushik Dutta authored
      Change-Id: Idc2d92630e94ccbd60b5d5447c3762db8e5096f8
      5d33715f
    • Pawit Pornkitprasan's avatar
      Disable dataroaming by default · 652bc49c
      Pawit Pornkitprasan authored
      The property is removed so that the property in vendor/cm can
      take effect
      
      Change-Id: Iefadc1a6e71cbf92ecb7363c953f4b5a82064446
      652bc49c
    • Steve Kondik's avatar
      build: Run squisher for the bacon target · afa123b7
      Steve Kondik authored
      Change-Id: If33402a5eb1661345c7d37ec1778742096449c70
      
      TARGET_CUSTOM_RELEASETOOL is a squisher replacement
      
      Change-Id: I9c7126d6bbe0303c1d35bb54ec2f0c9187b131e0
      
      Fix tabs, sorry bad commit --amend :p
      
      Change-Id: Ia981edb520d7b5f91e0717f6b4d8180386c8a20d
      
      Conflicts:
      	core/Makefile
      afa123b7
    • Steve Kondik's avatar
      Allow override of device asserts, including multi-device support. · 75f3e830
      Steve Kondik authored
      Set in board file with TARGET_OTA_ASSERT_DEVICE.
      (cherry-picked from commit 0f452f21fc9323b9d1fe746161761cf40aaa5030)
      
      Change-Id: I3d06bdc0e3e26bde0c0e646accd050364f9713b9
      75f3e830
    • houst0nn's avatar
      Add otapackage support for backuptool · 8d3c344a
      houst0nn authored
      Change-Id: I512554c579d444067cd3ccbb0e6946a5eb6bc964a
      8d3c344a
    • houst0nn's avatar
      build: Preliminary support for PA product builds · c3e981c5
      houst0nn authored
      If building a pa_* product, skip crawling the filesystem for
      AndroidProduct makefiles (and, of course, parsing their contents)
      and aim directly for the device/pa/<product> device configuration
      
      Change-Id: I2a5e70dda973a6fcdbba0d5e26b35b99d3f1aea2
      
      Change how we search for PA makefiles.
      
      build: Fix fastpath code for PA_BUILD
      
       * We need to adjust to the new validations
      
      Change-Id: I9066d4f437beb9597027ee6bbb52504b5e7e84c5
      
      build: Fix pa builds
      
      the setup variable wasn't exported, and was being missed by part
      of the scripts
      c3e981c5
    • codeworkx's avatar
      add support for custom releasetools · b8a0f198
      codeworkx authored
      Change-Id: I25a11d0bbceff4aac425ceeac39dee5594eba334
      b8a0f198
    • Tanguy Pruvot's avatar
      make bacon and custom releasetool (for squished zips) · 1916c288
      Tanguy Pruvot authored
      Change-Id: I4f61b6a6b9b8bab8582fa5423c4134c07af17606
      1916c288
  2. 19 Nov, 2014 13 commits
    • Chirayu Desai's avatar
      envsetup: set OUT_DIR to an absolute path always · 122171e0
      Chirayu Desai authored
      OUT_DIR was set to $(TOPDIR)out previously,
      but $(TOPDIR) was null, so it was a relative path.
      This broke releasetools, inline kernel building, etc
      since they require absolute paths.
      Fix it so that it is set to $(shell readlink -f .)/out
      if $(TOPDIR) is null.
      
      Also remove hacks which checked if (OUT_DIR) was out
      and changed it to $(ANDROID_BUILD_TOP)/out to workaround
      the aforementioned problem.
      
      Change-Id: I459a3b1325a1bbea0565cd73f6acf160d4ed9b39
      122171e0
    • Chirayu Desai's avatar
      build-with-colors: moar colors · 57c5f1a2
      Chirayu Desai authored
      - rename CL_PFX and CL_INS to better match the
        colors they show.
      - add more colors.
      
      Output of:
      - most host stuff is yellow
      - most target stuff is green
      - installing/copying files is cyan
      - import/export includes and notice files is cyan
      - bootimage/recoveryimage is cyan
      - and some more colors in many places ;)
      
      Change-Id: I5532afa4ba608e0a7c408516dc9f912f9ca389f7
      
      Conflicts:
      	core/Makefile
      57c5f1a2
    • Tanguy Pruvot's avatar
      build in colors: Install outputs in blue/yellow [basic ics version] · 279aa10e
      Tanguy Pruvot authored
      "target prefix:" in yellow
      "Install: file" in cyan
      
      should be in a single command line else there are sync problems
      in multithread (-j X)
      
      These colors can be tuned in core/Makefile if you use a white terminal.
      can be disabled with "export BUILD_WITH_COLORS=0"
      
      Only the most important output is colored to reduce ics merge problems
      
      Change-Id: I0e585079fde6900799ef209367a523d94a51cda5
      
      Colors: add more colors to final build steps
      
      also fix releasetool echo and visible recovery echos
      
      Change-Id: Icf5d88468572f935610c544bf1d5d356ec9870d3
      
      build in colors: host C/C++
      
      Augmented for Screw'd AOSP
      
      Change-Id: Ic415cab53a2efa104c9d4b31ddbe8c8eb74e493d
      
      Conflicts:
      	core/Makefile
      279aa10e
    • MrApocalypse's avatar
      Screw it up · 2a15ab62
      MrApocalypse authored
      Change-Id: I76e273c1d2f5f59002e8221940b441e58d741ed7
      2a15ab62
    • ayysir's avatar
      Initial Roomservice.py · ce669b56
      ayysir authored
      
      History
      ===
      
      [*]roomservice: Auto-remove duplicated projects
      
      roomservice has improved in the sense that once a duplicate path is
      found, a <remove-project> tag will be added into roomservice.xml
      
      Change-Id: If3e1dc672d25996a0cd19628ece24c010e213adf
      
      [*]roomservice: Include forked repositories in device search
      
      The github api defaults to not including forked repos in search results.
      This causes roomservice to fail to find a device repo if it is a fork (I.E. maguro).
      This commit adds the necessary argument to include forked repositories in the results
      and fixes maguro syncing.
      
      Change-Id: I50ec96316c3208e977d659a1dd90205a2b3d85b3
      Signed-off-by: default avatarEvan Anderson <evan1124@gmail.com>
      
      [*]roomservice: Fix device syncing
      
      Change-Id: Id4a59d74531a4ea1744f845fbe65b43debf950dd
      Signed-off-by: default avatarEvan Anderson <evan1124@gmail.com>
      
      [*]Switch to OmniRom's roomservice
      
      All credit goes to Omni for this.
      
      PS2: Update defaults to use with PA
      PS3: Give proper authorship
      PS4: Update dependency file name
      PS5: Set default_team_rem to github
      PS6: Revert PS5. Depends on manifest change
      
      Change-Id: I77fe0e958a3da5a3d65d0bf8c929fed2b13115bd
      Signed-off-by: default avatarEvan Anderson <evan1124@gmail.com>
      
      [*]roomservice: fix missing revision line
      
      Change-Id: I727f3a6ab1345b32b61b1c1bda31f03008082c96
      Signed-off-by: default avatarEvan Anderson <evan1124@gmail.com>
      
      [*]roomservice: Fix adding to manifest
      
      Python is indent-sensitive, so needed to indent some lines.
      
      Change-Id: Iaa360754038e4966fb76eb264e7c3195209735a1
      Signed-off-by: default avatarEvan Anderson <evan1124@gmail.com>
      
      Contributers:
      @Ryuinferno
      @Cybojenix
      
      Change-Id: I91ee64727edf80cbe2cce7934de0adcf813b55a6
      ce669b56
    • Emilio López's avatar
      envsetup: Mark zsh as compatible · 50570f82
      Emilio López authored
      Basic functionality has been tested on zsh 5.0.2 and has been found to
      work correctly.
      
      Change-Id: I02e5e3bedf56b43104c280d9737ae7b334357643
      50570f82
    • Emilio López's avatar
      envsetup: do not print an error if complete fails · c947de99
      Emilio López authored
      complete is a bashism; so it will fail on other shells. Avoid printing
      an error if that is the case.
      
      Change-Id: Id6d6311792f409cc3a697c7a2bb003863f1afe60
      c947de99
    • SferaDev's avatar
      build: Remove vendor overlay restrictions from AOSP · ffe32846
      SferaDev authored
      Change-Id: Ifebd3744215505ffef70c15edc7a3090780c60d5
      ffe32846
    • Ayysir's avatar
      envsetup: mka & reposync functions · 6ceef7f8
      Ayysir authored
      Change-Id: Idc30394631a5cf20038784ffb381f419966505b7
      
      Conflicts:
      	envsetup.sh
      6ceef7f8
    • Koushik Dutta's avatar
      add support for overriding build.prop settings. · e41e92b3
      Koushik Dutta authored
      Change-Id: Ie4224d608b7bcb0c2087bd77bc954f8f5f9b6495
      e41e92b3
    • MrApocalypse's avatar
      Add bacon support · fe587b20
      MrApocalypse authored
      Change-Id: I68c9b5314d643754be13eff53a67f847a73cd8b2
      fe587b20
    • Ricardo Cerqueira's avatar
      build: Inline kernel building as a buildtime task · 1bbddad3
      Ricardo Cerqueira authored
      Kernel image integration is now done in the build system. The
      "one true way" of doing this is to download the kernel source
      into kernel/TARGET_BOOTLOADER_NAME (by usage of the cm.dependencies
      mechanism or otherwise), and defining the TARGET_KERNEL_CONFIG
      variable in the device's BoardConfig makefile
      
      If the kernel's location doesn't match the automagic location
      (multi-device kernel source, for instance), TARGET_KERNEL_SOURCE
      can be used to specify a kernel path (i.e.,
      "TARGET_KERNEL_SOURCE := kernel/shared-whatever")
      
      If the device requires out-of-kernel-tree modules to be built,
      the TARGET_KERNEL_MODULES variable can be used, pointing to a
      _make target_ that will build and install such modules. Definition
      of such a target is the device author's responsibility, the only
      restriction is that it is a normal makefile recipe (example
      below)
      
      Optionally (or as an alternative), a prebuilt binary can also be
      defined at BoardConfig, by usage of the TARGET_PREBUILT_KERNEL
      variable. This binary will be used if the kernel source is absent
      (or undefined).
      
      A minimal BoardConfig.mk should look something like this:
      
      TARGET_KERNEL_CONFIG := cyanogenmod_<device>_defconfig
      TARGET_PREBUILT_KERNEL := device/<vendor>/<device>/kernel
      
      To include, for example, the TI WLAN modules, this can be used:
      
      -----------------------------
      TIWLAN_MODULES:
             make -C hardware/ti/wlan/wl1283/platforms/os/linux/ KERNEL_DIR=$(KERNEL_OUT) ARCH="arm" CROSS_COMPILE="arm-eabi-" TNETW=1273 RANDOM_MAC=n REPORT_LOG=n
             mv hardware/ti/wlan/wl1283/platforms/os/linux/tiwlan_drv.ko $(KERNEL_MODULES_OUT)
             make -C hardware/ti/wlan/wl1283_softAP/platforms/os/linux/ KERNEL_DIR=$(KERNEL_OUT) ARCH="arm" CROSS_COMPILE="arm-eabi-" TNETW=1273 REPORT_LOG=n
             mv hardware/ti/wlan/wl1283_softAP/platforms/os/linux/tiap_drv.ko $(KERNEL_MODULES_OUT)
      
      TARGET_KERNEL_MODULES := TIWLAN_MODULES
      ---------------------------
      
      Change-Id: I8634fa4c788a42dc6f62e62ca170825b66db126a
      
      build: Fix kernel module building on Darwin/OSX
      
      Darwin/OSX build host does not have module-init-tools which is
      required to generated modules.dep file. Switch to modules.order
      file marker which is always generated instead.
      
      Change-Id: I20c0fccd905fa668202c3e7284a8778db3728a65
      
      kernel: Change path to kernel/<vendor>/<device>
      
      Derive the kernel path from the device's own path (just replace "device"
      with "kernel")
      
      Change-Id: Idd44a0489e1ce280adf5ec4d9cfe2385c75dd115
      
      kernel: Improve support for non-arm architectures
      
      Remove hardwired references to the ARM arch and toolchains, and replace
      them with the respective android build variables
      
      Change-Id: Iae3eb548ca1d58ac808b5fa430d415283a809106
      
      kernel: Fix ARM building
      
      The default android ARM compiler, arm-androideabi-, does NOT work
      for the Linux kernel. Special-case the ARM architecture to target
      the ARM_EABI_TOOLCHAIN path directly
      
      Change-Id: Ib672c99f114cb89d5fda3343d4dc68810d042d35
      
      kernel: allow TARGET_KERNEL_MODULES to overwrite kernel modules
      
      This is necessary to use compat-wireless since it needs to build a newer
      version of cfg80211 (and sometimes mac80211) than the kernel sources version.
      There are probably other instances of this type of need.
      
      Change-Id: Ib5bf818286bc20987d8b9f9480a43f3e7690e239
      
      kernel.mk: make use of ccache when requested
      
      Change-Id: I9b6e28711bd5f590a76ac2b62a50b1d2de014e3e
      
      kernel: Fix ccache inclusion logic
      
      Builds were broken when CCACHE was missing from the environment
      Change-Id: Ie8d6048f4600f1dc9c298593a50e37af04b96438
      
      build: show accurate information on inline kernel warnings/errors
      
      Having the variables on AndroidBoard as suggested causes errors
      with mm/mmm, whereas having them on BoardConfig doesn't. Adjust
      the warnings to reflect this.
      
      Change-Id: I554c1f1073df678d36521f73bc236a1f4b02212e
      
      This is causing generic_armv5-userdebug builds to fail. Commenting out for now to fix recovery build servers. Will fix properly later.
      
      Change-Id: Ibe1cda8cd2b4c1914dfa3b8a29724c9069e047a6
      
      kernel.mk: Also search PRODUCT_COPY_FILES for the kernel copy, as that is how AOSP does it now.
      
      Change-Id: Id2d1cf079694d1996d4a85d8435c2e4562e5d444
      
      kernel.mk: fix compiled kernel copy
      
      Change-Id: Ifb2a3d4968e56eed236eaa2db9258cd0b8865fda
      
      kernel.mk: workaround to fix kernel builds on darwin until the prebuilts/gcc is checked in by upstream.
      
      Change-Id: I6321fb7f6814b207c821d974766d945351b3f546
      
      build: fix ccache usage when building kernels
      
      Change-Id: Id4edd4d85d9ba3ef42575f5fdebf22ed14957a99
      
      kernel.mk: set KERNEL_OUT properly
      
      It was hardcoded to $(ANDROID_BUILD_TOP)/$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
      which wouldn't exist if OUT_DIR_COMMON_BASE was set to use another dir
      (e.g. ramdisk)
      
      Fix it so that it now points to $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
      if OUT_DIR is not out
      
      Change-Id: I1bf767d86548e41270d9cbb8f0c00512708501c5
      
      build: add support for uncompressed kernels
      
      build: kernel: remove hard coded darwin toolchain.
      
      * Use latest kernel toolchain from $(ARM_EABI_TOOLCHAIN) variable.
      
      Change-Id: I3b43408937dd5f193fcba19c034f868272de8963
      
      envsetup: set OUT_DIR to an absolute path always
      
      OUT_DIR was set to $(TOPDIR)out previously,
      but $(TOPDIR) was null, so it was a relative path.
      This broke releasetools, inline kernel building, etc
      since they require absolute paths.
      Fix it so that it is set to $(shell readlink -f .)/out
      if $(TOPDIR) is null.
      
      Also remove hacks which checked if (OUT_DIR) was out
      and changed it to $(ANDROID_BUILD_TOP)/out to workaround
      the aforementioned problem.
      
      Change-Id: I459a3b1325a1bbea0565cd73f6acf160d4ed9b39
      
      build: add strip on kernel modules
      
      kernel modules are huge for prima wlan and we need to strip them
      unstriped size 40mb
      striped size 2mb
      
      Change-Id: Iefd572732cad0a6f608439618673068a3586fcd5
      
      kernel: Ignore errors with module building
      
      Let kernel fully disable loadable modules
      
      Change-Id: Ia37ec927b092c041ee4c68bf9fd0f28b7339c8ca
      
      build: Add support for extra kernel build variables
      
       * This allows specifying a variant defconfig, and an selinux defconfig
         which are simply configuration fragments.
      
      Change-Id: I97882ae3b8c2e16ff6a7dce8dd3a70d70f8aa866
      
      s/cyanogenmod.com/cyanogenmod.org/
      
      * And fixup a wiki link while I'm at it.
      
      Change-Id: I0355b9a47eac1becc07e81659fbb2d11b14ece36
      
      Fixes for Xcode 5 and OSX 10.9.
      kernel.mk: Put elf.h into the include path on Darwin builds.
      
      Change-Id: I7069b956965d27caac3b2e4c3cc2e8b4c1da7a82
      
      Make the kernel image format parametric instead of a chain of if/elses
      
      Change-Id: I54bfcdecb8647f7bcf744e72b2de19fcf4e4e7ac
      
      build: Add "dtbs" target when building the kernel
      
       * This is needed for 3.10
      
      Change-Id: I4044ea9e67017452efc25097a3327141a6627c24
      1bbddad3
    • Ricardo Cerqueira's avatar
      Allow a device to generically define its own headers · 53b24c65
      Ricardo Cerqueira authored
      We have a few cases of devices including specific versions of projects
      just because of modified headers (msm_mdp.h comes to mind), and I just
      had enough of ifdeffing header files for specific cases (the P990 needs
      a lot of these).
      Now... if a target defines a TARGET_SPECIFIC_HEADER_PATH, any headers in
      there will take precedence over the standard ones; for example, on the
      p990, I have
      
      TARGET_SPECIFIC_HEADER_PATH := device/lge/p990/include
      
      which makes, for example, the
      device/lge/p990/include/hardware_legacy/AudioHardwareInterface.h be
      used instead of
      hardware/libhardware_legacy/include/hardware_legacy/AudioHardwareInterface.h
      whenever a source file uses <hardware_legacy/AudioHardwareInterface.h>
      
      Change-Id: I41b62668b60e3f62a6ebd3738d8d2675103a81e6a
      
      build: fix target header overlay
      
      LOCAL_C_INCLUDES as defined by the makefile should be put AFTER
      the overlay includes so the overlay always takes precedence.
      
      Change-Id: I489b2aab6dbacd9122d834f85e07b63ed1271f07
      53b24c65
  3. 13 Nov, 2014 1 commit
  4. 12 Nov, 2014 1 commit
  5. 10 Nov, 2014 1 commit
  6. 07 Nov, 2014 3 commits
  7. 06 Nov, 2014 4 commits