aboutsummaryrefslogtreecommitdiffstats
path: root/build.ninja.in
Commit message (Collapse)AuthorAgeFilesLines
* Update build.ninja.in for bootstrap changesColin Cross2015-11-231-0/+4
| | | | Change-Id: I5c2c210c884fe4d4b3b23ccba6f2239ac082cd2c
* Update build.ninja.in for blueprint changesColin Cross2015-11-031-9/+63
| | | | Change-Id: I54da2f7802dcb06c6c40ca496c9efbb1d749361f
* Update build.ninja.in for blueprint updateDan Willemsen2015-09-181-6/+35
| | | | Change-Id: I71df8cd5f628855072f1a07e2be150d3e022344a
* Use SRCDIR as a working directoryDan Willemsen2015-09-171-1/+1
| | | | | | | | | | | The existing behavior of using the build directory as the working directory is useful if you want to move/copy the output directory around and SRCDIR still refers the the source. But, it's more useful to have the source directory be the working directory. Tools like cpp(__FILE__) and other debug prints embed relative paths from the working directory. We also have tools that expect the working directory to be $TOP. Change-Id: Ia0f1d3c6b7df72d61cf5628efa2baa98bd19775b
* Update build.ninja.in for go 1.5Dan Willemsen2015-09-171-11/+11
| | | | Change-Id: I7a5b3cba2335fbc61b308ad4acc5148b4bd0a97f
* Use the blueprint plugin infrastructureDan Willemsen2015-09-151-11/+11
| | | | | | | | Instead of using this hardcoded list, use the blueprint plugin infrastructure to find them at build time and load them. Bug: 23567252 Change-Id: Iae87e8c9bf020f4beb42c418b9a6bf8b0fe8b601
* Update build.ninja.in for blueprint go 1.5 supportColin Cross2015-08-241-45/+43
| | | | Change-Id: I2f13e34e25bf708260dba7ad384c609a8ee4bd13
* Update to new blueprint api for bootstrap.BinDirDan Willemsen2015-08-241-690/+222
| | | | | | And regenerate build.ninja.in Change-Id: I35e8b0362799f94b33309d3944b411de5dbcf40a
* use init functions to register module types, etc.Colin Cross2015-07-091-21/+46
| | | | | | | | Instead of putting all the blueprint registrations in soong_build, put them all in init() functions. This puts the registration next to the implementation. Change-Id: Ide1a749518f5e9d1367a18ab3bb1d91da3310c76
* androidbp: Implement static/shared property copyingDan Willemsen2015-07-061-1/+3
| | | | | | | During mutation, make deep copies of the blueprint modules, then start modifying the property lists to apply the static/shared properties. Change-Id: Idc7063f4d1cf7d173ae10418e3437f3e2b914f59
* androidbp: simplify translation by evaluating all expressions in BlueprintColin Cross2015-06-301-6/+12
| | | | | | | | | Translation is getting complicated because the expressions supported by Blueprint are difficult to support in Make. Modify androidbp to use context aware parsing so it can evaluate all expressions at parse time, so it only needs to deal with constant values. Change-Id: I57047645fb48475baecd0361f78a93ec0a26011e
* androidbp: Test valueToStringDan Willemsen2015-06-291-1/+36
| | | | Change-Id: I358cf4bb020fc4db14792e2cdffc18bc2f89f4d4
* Update build.ninja.in for blueprint doc changesColin Cross2015-06-261-19/+58
| | | | Change-Id: I6244bc5d4f30643faabd151ef34af01e30295701
* Build and run tests during bootstrapDan Willemsen2015-06-261-48/+291
| | | | Change-Id: If40489d74136af4d15d4ff26210a50975a462497
* Add per-directory build targetsColin Cross2015-06-171-8/+7
| | | | | | | | | | | Build a map of blueprint directory to modules built from that directory, and then add phony rules to build.ninja that emulate the behavior of mma in the current build system. Also fixes checkbuild to depend on checkbuild files and installable files, but not installed files. Change-Id: I8bad6e93387940df7439dbd4554f6d79f924c65f
* Rename Blueprints to Android.bpColin Cross2015-05-201-16/+16
| | | | | | | Rename module definition files to Android.bp to avoid conflicts with another project called Blueprint. Change-Id: I105a07555eb7890f56120deab9036cf9ae5d8525
* Add support for building on Darwin hostsColin Cross2015-05-071-6/+7
| | | | | | Add toolchain and build rules for building on Darwin. Change-Id: I78e21f4051b2941182121b28c9ddfa24396ada41
* Update build.ninja.inColin Cross2015-05-051-1/+1
| | | | | | Update build.ninja.in after Ib4bd1e0abc58ab514a7dd4a01008af645d6a3d13 Change-Id: I069a1334097966a748deacfc58d716d3ae554fef
* Initial androidbp translator.Andres Morales2015-04-301-4/+29
| | | | | | Translates Android.bp files back to Android.mk Change-Id: Ib4bd1e0abc58ab514a7dd4a01008af645d6a3d13
* Move globbing on top of pathtools.GlobWithExcludesColin Cross2015-04-291-11/+13
| | | | | | | | pathtools.GlobWithExcludes contains all the features of glob.GlobWithDepFile now, make GlobWithDepFile a wrapper around GlobWithExcludes that writes the results to a file. Change-Id: Ie75d9042845505f499aac7fa00d3c90f8ecab4f7
* java: add genrule support to java buildsColin Cross2015-04-291-4/+5
| | | | | | | Add support for source files generated by genrule or gensrcs to java builds. Change-Id: I39762b2ab65fa4cf92724300edc4ba995845ce92
* Add support for building android appsColin Cross2015-04-201-2/+4
| | | | | | | | Add support for running aapt to generate R.java and Manifest.java, compiling java into jar, adding resources to the jar to convert it into an apk, signing the apk, and zipaligning the apk. Change-Id: I7a73fef590d07f35b3d0b56a8571780c09bb10ae
* Update build.ninja.in for blueprint changesColin Cross2015-04-151-28/+29
| | | | Change-Id: Ibc2bf4919f780b1fefefa9c5a2a02166b326b57a
* Add aidl file support to java buildsColin Cross2015-04-081-7/+9
| | | | | | | Add support for aidl files listed in srcs for java builds, and an aidl_preprocess module type for framework and sdk aidls. Change-Id: I3aa537f4483822e5b534c74d0b35f13a938f8947
* Move config into common and provide helperColin Cross2015-04-081-47/+20
| | | | | | | | | Using ctx.Config().(Config) everywhere is a mouthful, and it is inefficient to do the type assertion. Put the Config interface into the context, and provide an AConfig() to return the Config already converted to the right type. Change-Id: I301a1fd7d2a005580aabca7866a37c5d42ad8c69
* Add yacc and lex supportColin Cross2015-04-081-5/+6
| | | | | | | | Add support for yacc (.y or .yy) and lex (.l or .ll) files. Also tweak locations of .o files for normal and generated sources to makes sure they don't collide. Change-Id: I03172cddbdc022525bf392a81d72050406b8cdb3
* Support java libraries, binaries, and prebuiltsColin Cross2015-04-031-14/+60
| | | | | | | | Add support for compiling java libraries (.jar files with or without .dex), java binaries (.jar files with a wrapper script to run them), and java prebuilts (for the SDK .jars) Change-Id: Id624da64c92cf20c6d9577c6bb06e5b212af0d1b
* Support dependencies on environment variablesColin Cross2015-03-261-16/+58
| | | | | | | | | | | | | | | | | | | Ninja can't depend on environment variables, so modifying build behavior based on environment variables requires coordinating between the soong script that invokes ninja and the soong_build manifest generator. Allow any module to call Config.Getenv to get the contents of an environment variable while registering a dependency on it. After all modules have been processed write out the state of all used environment variables to a JSON file called .soong.environment. During the next build the soong script will use the soong_env tool to compare the contents of .soong.environment to the current environment, and force a build manifest regeneration by deleting the .soong.environment file if any variables have changed. Change-Id: Id0d81933a857bc2fc1cd7a393a3c6cec73dc4824
* Add art_cc_library module typeColin Cross2015-03-251-11/+36
| | | | Change-Id: I7aba376b755f3ce431f7b2f555a85a0ef5323453
* Update import paths for changes to blueprintColin Cross2015-03-231-87/+98
| | | | | | | Blueprint has been modified to include a canonical import path, update soong to match. Change-Id: If29d31afbf3bf2e6364961a66456fa5f8f738455
* Add gensrcs module typeColin Cross2015-03-191-11/+36
| | | | | | gensrcs allows sources to be generated by a specified command. Change-Id: I725086fcdcd72bfe6c07fb8903e7b520678a247f
* Add support for checkbuild targetColin Cross2015-03-171-4/+5
| | | | | | | | | | | | | Modules can choose to add "installed files", which are files that a product can depend on to cause the module to build, and "checkbuild files", which will only be built if another module that needs to build depends on them. For every target, add a module-install and a module-checkbuild target that create dependencies on those files, and then add a global checkbuild target that depends on all the module-checkbuild targets. Also add a module target for each module that depends on module-install and module-checkbuild. Change-Id: I801389ad6ab9806b71d92cd327a0f9cb7582e0df
* Add androidmk to BlueprintsColin Cross2015-03-141-2/+45
| | | | Change-Id: I2c8f17bda7ff0b5fc95a80e5bf72776f6e23be05
* Add soong_build primary builderColin Cross2015-03-131-3/+162
| | | | | | | Initial build logic for building android with soong. It can build a variety of C and C++ files for arm/arm64 and host. Change-Id: I10eb37c2c2a50be6af1bb5fd568c0962b9476bf0
* Initial soongColin Cross2015-03-041-0/+249
This creates the infrastructure that will be used to bootstrap the soong primary builder through blueprint and ninja. Change-Id: Iebed8f369e4db41b207d0b2a48a7a54a4dd7d45d