summaryrefslogtreecommitdiffstats
path: root/build
Commit message (Collapse)AuthorAgeFilesLines
* Some changes necessary to build an optimized binary on Linux.evanm@google.com2008-11-111-1/+1
| | | | | | | | | | | | | | | | | Two other speedup changes that I'm not including: root_env = Environment( tools = ['component_setup'], + RPATH=[], And linux_env.Tool('target_platform_linux') -linux_env.Tool('target_debug') +linux_env.Tool('target_optimized') Review URL: http://codereview.chromium.org/10292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5193 0039d316-1c4b-4281-b951-d872f2087c98
* Replace 7z with ar.paulg@google.com2008-11-111-1/+1
| | | | | | Review URL: http://codereview.chromium.org/10299 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5191 0039d316-1c4b-4281-b951-d872f2087c98
* Serialize links on Linux. Should fix ↵dkegel@google.com2008-11-101-0/+4
| | | | | | | | http://code.google.com/p/chromium/issues/detail?id=3805 Review URL: http://codereview.chromium.org/9463 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5131 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce build verbosity after r5042mark@chromium.org2008-11-081-0/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5068 0039d316-1c4b-4281-b951-d872f2087c98
* Adding in new solution builder pattern.bradnelson@chromium.org2008-11-081-31/+51
| | | | | | Review URL: http://codereview.chromium.org/10231 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5047 0039d316-1c4b-4281-b951-d872f2087c98
* Dramatically improve the link time in release mode. Today's MC Hammer Xcodemark@chromium.org2008-11-076-5/+406
| | | | | | | | Voodoo lesson: don't use the slow dsymutil utility; instead, make a "fake" .dSYM that contains the original unstripped Mach-O file. Review URL: http://codereview.chromium.org/9659 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5042 0039d316-1c4b-4281-b951-d872f2087c98
* Set cpus=1 on systems where we don't (yet) know how to deducesgk@google.com2008-11-071-2/+2
| | | | | | | | | | | the number of CPUs. This at least allows the build to function on unknown systems. Remove a now-unnecessary addition of $V8_DIR to LIBPATH. The v8 libraries now get installed in $LIBS_DIR like everyone else. Review URL: http://codereview.chromium.org/10208 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5007 0039d316-1c4b-4281-b951-d872f2087c98
* A more friendly build error on linuxtc@google.com2008-11-061-3/+12
| | | | | | | | | when packages are not found by pkg-config. Review URL: http://codereview.chromium.org/9618 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4856 0039d316-1c4b-4281-b951-d872f2087c98
* Make better (and more efficient) use of Hammer functionalitysgk@google.com2008-11-052-2/+13
| | | | | | | | | | | | | in base, net and sandbox: * Remove by-hand Install() and Alias() calls. * Set $COMPONENT_PROGRAM_GROUPS and $COMPONENT_TEST_PROGRAM_GROUPS (with in each foo\foo.scons file) so executables get added automatically to the appropriate Alias. * Set $TESTS_DIR and $STAGING_DIR so executables get linked directly in their final resting place ($TARGET_ROOT). Review URL: http://codereview.chromium.org/9188 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4805 0039d316-1c4b-4281-b951-d872f2087c98
* Unrollback the Scons changes, they weren't the cause of the problem.brettw@google.com2008-11-051-3/+18
| | | | | | Review URL: http://codereview.chromium.org/9184 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4783 0039d316-1c4b-4281-b951-d872f2087c98
* Rollback r4734 to see if it fixes the crashing I experience when starting ↵brettw@google.com2008-11-051-18/+3
| | | | | | | | chrome, as well as the 1MB regression in chrome.dll size. Review URL: http://codereview.chromium.org/8226 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4781 0039d316-1c4b-4281-b951-d872f2087c98
* Adding better project generation (source and build targets).bradnelson@chromium.org2008-11-051-3/+18
| | | | | | | | | Adding fix to targets_msvs to work with chrome hammer.bat in depot_tools. Review URL: http://codereview.chromium.org/9149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4734 0039d316-1c4b-4281-b951-d872f2087c98
* Take Hammer out of the default target list.bradnelson@chromium.org2008-11-041-1/+2
| | | | | | Review URL: http://codereview.chromium.org/9142 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4673 0039d316-1c4b-4281-b951-d872f2087c98
* Adding visual studio solution files.bradnelson@chromium.org2008-11-042-6/+27
| | | | | | | | | Sandbox is currently having a problem with this so it is disabled. Fixed a few stray items. Review URL: http://codereview.chromium.org/9259 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4525 0039d316-1c4b-4281-b951-d872f2087c98
* Add tlslitedkegel@google.com2008-11-041-3/+10
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4522 0039d316-1c4b-4281-b951-d872f2087c98
* Build database files on the Mac (r4486). Sets HEADER_SEARCH_PATHS and addsmark@chromium.org2008-11-031-1/+1
| | | | | | | | | needed files in third_party/WebKit/WebCore/platform/sql and third_party/WebKit/WebCore/storage to webkit.xcodeproj. Makes TestShell.xcodeproj depend on libsqlite. Review URL: http://codereview.chromium.org/9055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4494 0039d316-1c4b-4281-b951-d872f2087c98
* Happy on hardy 64 bit now.dkegel@google.com2008-11-031-8/+23
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4477 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor building unit_tests with SCons for the new structure:sgk@google.com2008-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | * Rename SConscript.unit_tests to test/unit/unit_tests.scons. * Add a new chrome/chrome.scons "master" for building everything chrome. Have it just load the existing SConscript file, and the new test/unit/unit_tests.scons file. We'll move things from SConscript (or elsewhere) into chrome.scons as they get convertd. * Change build/SConscript.main to load chrome/chrome.scons. * Add new using_libjpeg.scons, using_libxml.scons, and using_libxslt.scons "properties" files. * Convert test/unit/unit_tests.scons to use the available using_*.scons files. * Combine settings that were scattered throught test/unit/unit_tests.scons to make it a little more readable. * Add $CHROME_DIR/ to the beginning of the file listed in test/unit/unit_tests.scons, since they're now being interpreted from a SConscript file down two directory levels. Review URL: http://codereview.chromium.org/9005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4448 0039d316-1c4b-4281-b951-d872f2087c98
* A simple script to install whatever is needed to build chromium.dkegel@google.com2008-10-311-0/+85
| | | | | | | | | Initially, it only supports the Ubuntu 8.04 flavor of Linux, but we should expand that as time goes on. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4330 0039d316-1c4b-4281-b951-d872f2087c98
* Get fonts to render in a somewhat recognisable form on Linux.agl@chromium.org2008-10-311-0/+1
| | | | | | | Review URL: http://codereview.chromium.org/8936 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4325 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing use of built_component from SConstructs.bradnelson@chromium.org2008-10-291-1/+1
| | | | | | Review URL: http://codereview.chromium.org/8724 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4189 0039d316-1c4b-4281-b951-d872f2087c98
* Adding in BuildComponents to allow things like Defer and publishing.bradnelson@google.com2008-10-291-145/+173
| | | | | | Review URL: http://codereview.chromium.org/8666 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4153 0039d316-1c4b-4281-b951-d872f2087c98
* Re-apply 4099, v8 build dir change (after manual buildbot cleaning).sgk@google.com2008-10-281-29/+27
| | | | | | Review URL: http://codereview.chromium.org/8688 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4108 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r4099.sgk@google.com2008-10-281-27/+29
| | | | | | Review URL: http://codereview.chromium.org/8685 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4100 0039d316-1c4b-4281-b951-d872f2087c98
* build/SConscript.v8 update, plus fixes:sgk@google.com2008-10-281-29/+27
| | | | | | | | | | | | | | | | * Use SCons -C to invoke the v8 build from our own build directory, using the -Y option to pull all source files from the v8 source directory, to avoid building things under src/v8. * Make sure the build directory exists before we invoke the subsidiary SCons that will chdir there. * Build libv8_snapshot.a in the obj/v8 directory, not src/build. * Remove the svn:ignore property from src/build (specifically libv8snapshot.a). * Correct the $LIBS_DIR location of libv8.a. * Use the actual file names involved instead of local Python variables. * Don't forcibly add our targets to other component's Aliases. Review URL: http://codereview.chromium.org/8851 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4099 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing clobber which was broken by r4051.bradnelson@google.com2008-10-281-1/+1
| | | | | | Review URL: http://codereview.chromium.org/8842 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4082 0039d316-1c4b-4281-b951-d872f2087c98
* Splitting apart the environments to build in.bradnelson@google.com2008-10-281-179/+210
| | | | | | | | This will let use incrementally introduce BuildComponents in SConscript.main Review URL: http://codereview.chromium.org/8807 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4051 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Use SCons -C to invoke the v8 build from our own build directory,"evanm@google.com2008-10-281-26/+27
| | | | | | | | | This reverts r4041. Review URL: http://codereview.chromium.org/8822 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4045 0039d316-1c4b-4281-b951-d872f2087c98
* Use SCons -C to invoke the v8 build from our own build directory,sgk@google.com2008-10-281-27/+26
| | | | | | | | | | | | using the -Y option to pull all source files from the v8 source directory. This requires making sure the build directory exists before we invoke the subsidiary SCons that will chdir there. Other clean up: * Use the actual file names involved instead of local Python variables. * Don't forcibly add our targets to other component's Aliases. Review URL: http://codereview.chromium.org/8639 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4041 0039d316-1c4b-4281-b951-d872f2087c98
* speed up sconstc@google.com2008-10-271-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I did some profiling and found that we spend a lot of time in SCons/Subst.py resolving paths with $ vars in them. By pre-resolving some common $ vars, we can get a 16% speed up of an empty build (running hammer Hammer when everything is already built). On my work desktop, this is a saving from ~180s to do an empty build to ~150s to do an empty build. I found which symbols to pre-resolve by gathering stats on what symbols were resolved during a single run. Originally, these were the top 10 calls to StringSubber.substitute: 91466 /src/gclient-git/src/chrome 89457 $MAIN_DIR/Hammer 89457 $DESTINATION_ROOT 89447 $TARGET_ROOT/obj 65514 $OBJ_ROOT/webkit 18169 $OBJ_ROOT/third_party 8991 -I/src/gclient-git/src/webkit/pending 5700 $THIRD_PARTY_DIR/WebKit 4488 -I/src/gclient-git/src/webkit/port/platform/network 4488 -I/src/gclient-git/src/webkit/port/platform Afterwards, the top 10 calls were: 65514 /src/gclient-git/src/chrome/Hammer/obj/webkit 23933 /src/gclient-git/src/chrome/Hammer/obj 18169 $OBJ_ROOT/third_party 8991 -I/src/gclient-git/src/webkit/pending 5700 $THIRD_PARTY_DIR/WebKit 4488 -I/src/gclient-git/src/webkit/port/platform/network 4488 -I/src/gclient-git/src/webkit/port/platform 3813 $OBJ_ROOT/skia 3498 $THIRD_PARTY_DIR/icu38 3456 $THIRD_PARTY_WEBKIT_DIR/JavaScriptCore Adding these rules cuts the total number of calls to StringSubber.substitute from 1001817 to 665933. Review URL: http://codereview.chromium.org/8608 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4010 0039d316-1c4b-4281-b951-d872f2087c98
* Add CCACHE_DIR to the list of environment variablestc@google.com2008-10-271-6/+9
| | | | | | | | | | that get passed to the build environment. This allows us to have our CCACHE_DIR off of NFS. Review URL: http://codereview.chromium.org/8610 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4002 0039d316-1c4b-4281-b951-d872f2087c98
* Fix SCons build of the sandbox module, splitting out the individualsgk@google.com2008-10-271-1/+1
| | | | | | | targets into the new *.scons file naming scheme. Review URL: http://codereview.chromium.org/8616 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4000 0039d316-1c4b-4281-b951-d872f2087c98
* Fix SCons modules build on Windows:sgk@google.com2008-10-251-1/+8
| | | | | | | | | | | | | | | * Add 'midl' Tool module. * Filter out the default OS_WINDOWS= definition from the Hammer modules, which messes up our build. * Fix the $PLATFORMSDK_VISTA definition. * Remove the current directory from the 'base' Alias (avoid cycles). * Remove by-hand addition of .lib, .pdb and .ilk files to the target list when build shared libraries (multiple places). * Comment out a post-action Touch() of the themes/default resource. (Thanks to bradnelson for many of the above individual fixes.) Review URL: http://codereview.chromium.org/8207 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3980 0039d316-1c4b-4281-b951-d872f2087c98
* Actually adding the new scons toolkit (hammer) base tools to the builtbradnelson@google.com2008-10-241-60/+41
| | | | | | | | | environment. Things have been rigged temporarily so they emit to the same directories. Review URL: http://codereview.chromium.org/8139 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3908 0039d316-1c4b-4281-b951-d872f2087c98
* Build TestShell againmark@chromium.org2008-10-241-1/+14
| | | | | | Review URL: http://codereview.chromium.org/7966 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3900 0039d316-1c4b-4281-b951-d872f2087c98
* Put webkit.xcodeproj:port back into the "all" build by making all.xcodeprojmark@chromium.org2008-10-241-76/+11
| | | | | | | depend on the "all" target in webkit. (Re-sniff port?) Review URL: http://codereview.chromium.org/7959 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3890 0039d316-1c4b-4281-b951-d872f2087c98
* Removing more dependencies on the relative location of $CHROME_SRC_DIR.bradnelson@google.com2008-10-232-5/+5
| | | | | | Review URL: http://codereview.chromium.org/7860 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3843 0039d316-1c4b-4281-b951-d872f2087c98
* Don't build glue as Objective-C++ now that PLATFORM_MAC is off. Re-sniff gluemark@chromium.org2008-10-231-0/+13
| | | | | | | in all.xcodeproj. Review URL: http://codereview.chromium.org/7901 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3800 0039d316-1c4b-4281-b951-d872f2087c98
* Build libxslt on the Mac. This seems to be needed while disablingmark@chromium.org2008-10-221-5/+46
| | | | | | | PLATFORM(MAC). Review URL: http://codereview.chromium.org/7893 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3786 0039d316-1c4b-4281-b951-d872f2087c98
* Take TestShell.xcodeproj:TestShell, webkit.xcodeproj:glue, andmark@chromium.org2008-10-221-26/+80
| | | | | | | | webkit.xcodeproj:port out of the "all" Mac build temporarily to accommodate PLATFORM(MAC) killing in progress. Review URL: http://codereview.chromium.org/7870 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3738 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Mac bustage from DEPS roll r3728mark@chromium.org2008-10-221-0/+1
| | | | | | Review URL: http://codereview.chromium.org/8058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3735 0039d316-1c4b-4281-b951-d872f2087c98
* Using $CHROME_SRC_DIR in place of hash/..bradnelson@google.com2008-10-224-10/+10
| | | | | | | | This will facilitate changing where the main sconstruct lives. Review URL: http://codereview.chromium.org/7847 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3725 0039d316-1c4b-4281-b951-d872f2087c98
* SCons renaming updates for base, net and googleurl:sgk@google.com2008-10-216-117/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rename SConscript files to {module}.scons or {moduel}_lib.scons, depending on the primary target involved. * Separate targets into individual *.scons files, with one construction environment (named "env") per *.scons file. * Add using_{module}.scons files (like .vsprops) that will be used by other modules to add CPPDEFINES, CPPPATH, LIBS and LIBPATH values. * Update other modules' *.scons files to use the new using_{module}.scons files (using a temporary one-liner idiom until we have the ApplySConscript() method from the Hammer modules). * Use the idiom of removing to-be-ported files from the master list, so they can be simply deleted from the to-be-ported list as they get ported in the future, instead of having to shuffle entries between lists. * Use $OBJ_ROOT instead of hard-coded '#/$BUILD_TYPE/' for the $*_DIR variables. * Add a addRepository() call mapping build/ to $TARGET_ROOT/googleurl, so its $OBJ_ROOT value can look like the others'. * Formatting changes, primarily modifying indentation to conform to style guidelines. * Fix copyright headers in some third_party/* modules previously overlooked. * Add rudimentary __doc__ strings, setting up for a future ability to generate meaningful documentation. Review URL: http://codereview.chromium.org/7807 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3675 0039d316-1c4b-4281-b951-d872f2087c98
* Incrementally moving to new patterns.bradnelson@google.com2008-10-211-16/+16
| | | | | | | | HASH/$BUILD_TYPE -> $OBJ_ROOT Review URL: http://codereview.chromium.org/7801 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3646 0039d316-1c4b-4281-b951-d872f2087c98
* Rolling back switch to hammer patterns again.bradnelson@chromium.org2008-10-203-411/+437
| | | | | | Review URL: http://codereview.chromium.org/7530 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3637 0039d316-1c4b-4281-b951-d872f2087c98
* Modules Linux fixes:sgk@google.com2008-10-201-5/+12
| | | | | | | | | | | | | Construct the $THIRD_PARTY_DIR and $WEBKIT_DIR variables consistently with other $*_DIR variables. Don't execute test scripts from the VariantDir by default; everything isn't installed in the proper place yet. Use the 'build_component' variable from the submodule SConstruct files to restrict how much we build by default (e.g. don't try to build all of webkit if you're only working in base or net). Review URL: http://codereview.chromium.org/7524 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3626 0039d316-1c4b-4281-b951-d872f2087c98
* We have several cases where archives depend on each other in a cyclic fashion.agl@chromium.org2008-10-201-0/+17
| | | | | | | | | | | | | | | | (V8Bindings, libport and WebCore being the most significant example.) Since the GNU linker does only a single pass over the archives we need some extra trickery to deal with these unavoidable cycles. That trickey is --start-group and --end-group (aka -( and -) ). That causes ld to loop over the group until no more undefined symbols are found. In an ideal world we would only make groups from those libraries which we knew to be in cycles. However, that's tough with SCons, so we bodge it by making all the archives a group by redefining the linking command here. Review URL: http://codereview.chromium.org/7523 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3623 0039d316-1c4b-4281-b951-d872f2087c98
* Adding in new hammer patterns. Restored from rollback change 3578.bradnelson@chromium.org2008-10-183-437/+404
| | | | | | Review URL: http://codereview.chromium.org/7656 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3597 0039d316-1c4b-4281-b951-d872f2087c98
* Rolling back CL 3578, discovered hammer.bat had not been updated yet.bradnelson@chromium.org2008-10-183-404/+437
| | | | | | Review URL: http://codereview.chromium.org/7507 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3582 0039d316-1c4b-4281-b951-d872f2087c98
* Applying software construction toolkit patterns in scons build.bradnelson@chromium.org2008-10-173-437/+404
| | | | | | Review URL: http://codereview.chromium.org/6569 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3578 0039d316-1c4b-4281-b951-d872f2087c98