summaryrefslogtreecommitdiffstats
path: root/skia/SConscript
Commit message (Collapse)AuthorAgeFilesLines
* Generate all chrome .vcproj files:sgk@google.com2009-01-171-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Path name translation (/ to \) of various MSVSTool attributes. * Explicit keyword= arguments to MSVSProject. This will likely go away eventually in favor of uniform behavior. * Add a relative_path_substitutions array that can be used to substitute in Visual Studio variable like $(OutDir). * Add a local_directory_prefix that can be set to './' to only affect files in the current directory. * Additional Keyword ordering in Tool attributes to continue to match the default order Visual Studio generates. * Add a Derived() proxy class that can wrap a File node to tell the .vcproj generation that we want the derived file, not its source(s), in the file list. * In the individual *.scons files, add the necessary files (mostly .h files) to file lists, and update MSVSProject() calls with the additional necessary information. Result is identical .vcproj files modulo the following differences: * Four locales .vcproj files (da, en-US, he and zh-TW) with source file orders that don't match the other locale .vcproj files have re-ordered file lists to match the rest. * Cosmetic XML changes (white space, ending tags) in: chrome/app/chrome_dll.vcproj chrome/app/generated_resources.vcproj net/build/net_resources.vcproj * Removal or addition of ./ prefixes from various files that don't match the other file specifications within their individual .vcproj files: chrome/installer/util/util.vcproj net/build/net.vcproj net/build/net_unittests.vcproj * Add missing empty sections (<ToolFiles>, <References>, <Globals>) for consistency with other .vcproj files: chrome/tools/test/image_diff/image_diff.vcproj third_party/libpng/libpng.vcproj third_party/zlib/zlib.vcproj * Add missing RootNameSpace attribute: chrome/test/automation/automation.vcproj testing/gtest.vcproj * Use && instead of \r\n as a command separator, to sidestep XML-generation problems: chrome/app/chrome_exe.vcproj * Remove unnecessary (?) duplicate files in the file list: chrome/browser/views/browser_views.vcproj (event_utils.cc and event_utils.h were duplicated) Review URL: http://codereview.chromium.org/17603 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8253 0039d316-1c4b-4281-b951-d872f2087c98
* Add missing SkUnPreMultiply.cpp dependency to fix Linux shared-library build.evan@chromium.org2009-01-161-0/+5
| | | | | | | | Review URL: http://codereview.chromium.org/18333 Patch from Dan Erat <dan@erat.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8237 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up skia's assertions to our logging system.brettw@chromium.org2009-01-121-0/+1
| | | | | | Review URL: http://codereview.chromium.org/17285 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7889 0039d316-1c4b-4281-b951-d872f2087c98
* Updates to Visual Studio project generation to accomodatesgk@google.com2009-01-101-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | recent changes and get rid of cut-and-paste: * Add generation of the new net_resource.vcproj file. * Accomodate the net\net.vsprops file. * New base.vcproj dependency in activex_shim_dll.vcproj. * New tld_cleanup.vcproj dependency in net.vcproj. * New ondemand_updates.vcproj dependencies in gcapi_{dll,lib}.vcproj. * Re-order dump_cache.vcproj dependencies to match new checked-in solutions. * New input file directory layout in zlib (minizip folder) and testing\gtest (hierarchy). * Use a new dest= argument to ChromeMSVSSolution() and ChromeMSVSProject() to get rid of cut-and-pste installation code, and provide a central point for controlling when/whether we want to generate the files only under the build directory, or drop them in place for checking in. * Comment out an unnecessarily verbose warning if the buildtarget is executed with an action that we don't map to specific Visual Studio settings. Sometimes this is normal and okay, but the warning should get restored at some point when we work out the precise conditions under which it makes sense. Review URL: http://codereview.chromium.org/17602 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7856 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Move GdkSkia to skia/extagl@chromium.org2009-01-071-1/+1
| | | | | | | | | | | GdkSkia doesn't belong in our WebKit port. Thus we move it into Skia. A separate change will remove the files from the port repository but, since the build files are all into the main repo, this is a complete change in itself. Review URL: http://codereview.chromium.org/16561 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7635 0039d316-1c4b-4281-b951-d872f2087c98
* Mass convert ChromeStaticLibrary -> ChromeLibrary, including pulling the ↵evanm@google.com2008-12-261-1/+1
| | | | | | | | | | | updated ICU dep that uses it as well. Add a SHARED scons command-line flag to build shared libraries. Review URL: http://codereview.chromium.org/16477 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7479 0039d316-1c4b-4281-b951-d872f2087c98
* Make Skia build as a dynamic library by fixing up the imports.evanm@google.com2008-12-261-1/+3
| | | | | | | | | | The define in the SCons file / vsprops was unused in the Skia source; I imagine usage of it was removed in the recent Skia merge. Review URL: http://codereview.chromium.org/16263 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7471 0039d316-1c4b-4281-b951-d872f2087c98
* Initial subset of .vcproj file generation, covering generation of:sgk@google.com2008-12-241-132/+433
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | base\build\base.vcproj base\build\base_gfx.vcproj base\build\base_unittests.vcproj base\build\debug_message.vcproj skia\skia.vcproj testing\gtest.vcproj third_party\icu38\icu.vcproj third_party\icu38\icudt.vcproj third_party\libpng\libpng.vcproj third_party\zlib\zlib.vcproj Supporting work in *.scons files: * Adds .h files to the input_files lists in the various *.scons files. * Add arguments to ChromeMSVSProject() to actually generate the .vcproj files. * Add MSVS.AddConfig() calls to the *.scons files to preserve the .vsprops inclusion in the generated .vcproj files. (These will go away eventually as we migrate away from .vsprops in favor of using the settings from the SCons configuration.) * Add MSVS.AddConfig() calls to preserve the .vsprops inclusion. * Move the special generation of dmg_fp/*.cc files ahead of the input file list so we can list the generated object files. * Change the 'solutions' Alias to 'msvs' so we don't mislead about what will actually be generated. Updates to the new _Node_MSVS.py module with latest from upstream prototype development: * Support configurability of: * buildtarget (used to generat project name) * RootNamespace * relative_path_prefix (to prepend './') * tools (to avoid repetition in the project configs) * Track the Visual Studio hierarchy in SCons Nodes, not DOM, so we can delay evaluation until after the complete configuration has been specified. * Add a FileList base class for the things that need, with a subclass hierarchy for the different concrete things in our tree, and a FileListWalk() function for traversing hierarchies. * Centralize turning strings into Nodes in the args2nodes() method and have AddFiles() just use it. Updates to chromium_builders.py to support all this * Add knowledge about stripping out noncompilable files (.h files) from input_files lists. * Return a Null() class if we're not generating MSVS files so we don't have to hide the other calls in if:-blocks. * Add custom ChromeFileList subclass of MSVS.FileList as a container for the file list manipulation we need to do. * Move the Chrome*() function definitions out to global space, and just use the generate() function for adding them to the passed-in environment as class methods. * Make a change to SCons (in Node/FS.py) to handle polymorphism in the new MSVS Node hierarchy. Review URL: http://codereview.chromium.org/16447 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7467 0039d316-1c4b-4281-b951-d872f2087c98
* Initial generation of native Visual Studio solution filessgk@google.com2008-12-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (project files still to come). To wit: * Solution file configuration is in *_sln.scons files (base\base_sln.scons, chrome\chrome_sln.scons). * Individual Project file configuration is in the the .scons file for the relevant target (base\base_unittests.scons, third_party\libxml\libxml.scons, etc.)--that is, where their file lists will live. * MSVSProject() calls are currently placeholders that establish the existence of Project Nodes (and Project dependencies) but don't yet have actual Project configuration information (file lists, .vsprops, etc.). * Configuraiton is very manual. In particular, the entries in the .sln file will be written out in exactly the order specified in the configuration(s). The current ordering is taken from our existing .sln files, so we can generate virtually the same configurations on output. * Generated solution files are nearly byte-for-byte identical with our existing .sln files, modulo: * net\dump_cache has a WebsiteProperties sections (making that configurable per project isn't important right now); * sandbox\sandbox.sln was missing a dependency of base.vcproj on on debug_message.vcproj (present in other .sln files) * webkit\webkit.sln was missing dependencies of WebCore.vcproj on libxml_config.vcproj and libxslt_config.vcproj (present in chrome.sln); * add a handful of other miscellaneous missing dependencies on various .vcproj definitions in chrome.sln (present in other .sln files). * remove stats_viewer.csproj from chrome.sln (sorry, mbelshe), which was complicating the solution configuration with unnecessary (for us) "Mixed Platform" types; * All MSVSFolder(), MSVSProject() and MSVSSolution() calls have hard-wired guid= values taken from our existing configuration, so we can: 1) verify generation of working configs; 2) minimize diffs when checking in generated .sln files. We can remove these in the future in favor of extracting them from existing .sln files if we wish. * Add ChromeMSVSFolder(), ChromeMSVSProject() and ChromeMSVSSolution() wrappers to chromium_builders.py, that gate the underlying call to the env.MSVS*() builders based on whether env.Bit('msvs') is set (i.e., we're in --mode=msvs). * Remove platform-specific gating of to-be-ported .scons files that we now need to load on any platform to generate coheren MSVS files. Move the env.Bit('windows') tests for actually building their executables into the individual .scons files. Review URL: http://codereview.chromium.org/14472 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7297 0039d316-1c4b-4281-b951-d872f2087c98
* Convert from using env['PLATFORM'] directly to using the more flexiblesgk@google.com2008-12-181-6/+6
| | | | | | | | | | | | | | | | | | and better-thought-out Hammer env.Bits() idioms: * env['PLATFORM'] == 'win32' => env.Bit('windows') * env['PLATFORM'] == 'posix' => env.Bit('linux') * env['PLATFORM'] == 'darwin' => env.Bit('mac') New idioms: * env.Bit('posix') => really does mean "any POSIX platform" * env.AnyBits('mac', 'linux') => specifically mac or linux, excluding other POSIX platforms Where we were using compound conditionals (e.g., "env['PLATFORM'] in ('posix', 'darwin')") I tried to take my best shot at translating the intent (i.e., "env.Bits('posix')" for something POSIX, "not env.Bits('mac')" for something not yet ported to Mac, etc.) Review URL: http://codereview.chromium.org/15051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7270 0039d316-1c4b-4281-b951-d872f2087c98
* Remove few more errors in mac scons build.phajdan.jr@chromium.org2008-12-151-2/+1
| | | | | | | BUG=5525 Review URL: http://codereview.chromium.org/14113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6981 0039d316-1c4b-4281-b951-d872f2087c98
* New drop of Skia. This is up to CL 121320.brettw@google.com2008-12-121-1/+6
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6925 0039d316-1c4b-4281-b951-d872f2087c98
* Split the cross-platform part of skia_utils_win into skia_utils. Use this newbrettw@google.com2008-12-031-0/+1
| | | | | | | | | function when possible. Add a little documentation. This does not change the Mac build, I'll do that in a separate pass, and the function moved is never used on the mac). Review URL: http://codereview.chromium.org/12917 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6312 0039d316-1c4b-4281-b951-d872f2087c98
* Fix syntax.brettw@google.com2008-12-031-1/+1
| | | | | | Review URL: http://codereview.chromium.org/13104 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6307 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/gfx/skia_util to skia/ext/skia_util_win.brettw@google.com2008-12-031-0/+1
| | | | | | | In a later pass, I will separate off the cross-platform part of this file into skia/ext/skia_util (only one function). Review URL: http://codereview.chromium.org/13101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6306 0039d316-1c4b-4281-b951-d872f2087c98
* Fox Linux build, missing files in scons file.brettw@google.com2008-12-031-0/+2
| | | | | | Review URL: http://codereview.chromium.org/10422 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6294 0039d316-1c4b-4281-b951-d872f2087c98
* Revert my skia file moves because of layout test failures.brettw@google.com2008-12-031-6/+0
| | | | | | Review URL: http://codereview.chromium.org/12892 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6266 0039d316-1c4b-4281-b951-d872f2087c98
* Move convolver, image_operations, and skia_utils from base/gfx to skia/ext.brettw@google.com2008-12-021-0/+6
| | | | | | | | | | | This changes the namespace in those files from "gfx" to "skia". I split skia_utils into two parts, the Windows specific part is now in a separate file called skia_utils_win. There were several obsolete includes of these headers which I removed. I also removed img_resize_perftest which isn't used and has bitrotted. Review URL: http://codereview.chromium.org/12842 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6248 0039d316-1c4b-4281-b951-d872f2087c98
* Rename 'VDMX' to 'Tables' as I'm about to add HDMX parsing.agl@chromium.org2008-11-261-1/+1
| | | | | | | | | TBR=tony Review URL: http://codereview.chromium.org/11609 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6021 0039d316-1c4b-4281-b951-d872f2087c98
* Move port/.../skia/public to skia/ext for Linux. Windows & Mac already moved ↵brettw@google.com2008-11-221-0/+4
| | | | | | | | there. This leaves forwarding headers in base/gfx, which I'll clean up in a future pass. Review URL: http://codereview.chromium.org/11808 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5873 0039d316-1c4b-4281-b951-d872f2087c98
* Parse VDMX tables for font metrics in Skia.agl@chromium.org2008-11-211-0/+1
| | | | | | | | | | | | Although you cannot see the blood, sweat and tears on this changelist, know that they are there. We still aren't quite perfect, but it's better. Review URL: http://codereview.chromium.org/11344 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5868 0039d316-1c4b-4281-b951-d872f2087c98
* Move skia extensions from the port to skia/ext for Windows only. Fixed thebrettw@google.com2008-11-211-0/+6
| | | | | | | | include guards of the moved files, but nothing else. Review URL: http://codereview.chromium.org/11568 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5861 0039d316-1c4b-4281-b951-d872f2087c98
* Move the platform files form port to skia for Mac only. Hopefully this won't ↵brettw@google.com2008-11-211-0/+5
| | | | | | | | affect other platforms. Review URL: http://codereview.chromium.org/11357 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5845 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the set of fonts used for test_shell.agl@chromium.org2008-11-181-1/+1
| | | | | | | | | | | | | With this change, the Google homepage renders pixel exact to Firefox on my Goobuntu box (which isn't using subpixel rendering). Note that, although the pixels are the same, the colours are very slightly different when it comes to anti-aliasing. I suspect this is because Skia is currently missing a gamma table. Review URL: http://codereview.chromium.org/11211 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5614 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 5595maruel@chromium.org2008-11-181-1/+1
| | | | | | Review URL: http://codereview.chromium.org/11230 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5606 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the set of fonts used for test_shell.agl@chromium.org2008-11-181-1/+1
| | | | | | | | | | | | | With this change, the Google homepage renders pixel exact to Firefox on my Goobuntu box (which isn't using subpixel rendering). Note that, although the pixels are the same, the colours are very slightly different when it comes to anti-aliasing. I suspect this is because Skia is currently missing a gamma table. Review URL: http://codereview.chromium.org/11211 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5595 0039d316-1c4b-4281-b951-d872f2087c98
* Use Skia to render fontsagl@chromium.org2008-11-131-0/+10
| | | | | | | | | | | | I've split off the subpixel code from this code at the request of Mike Reed. This code has already been reviewed in 9614. TBR=evan Review URL: http://codereview.chromium.org/10414 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5401 0039d316-1c4b-4281-b951-d872f2087c98
* Using $CHROME_SRC_DIR in place of hash/..bradnelson@google.com2008-10-221-1/+1
| | | | | | | | 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-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* SkStream.cpp was listed twice.agl@chromium.org2008-10-161-1/+0
| | | | | | | | | TBR=evan Review URL: http://codereview.chromium.org/7452 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3486 0039d316-1c4b-4281-b951-d872f2087c98
* Move -Wno-unused_variable (need for some len asserts in skia)sgk@google.com2008-09-241-1/+1
| | | | | | | so it comes after -Wall on the Mac compilation line. Review URL: http://codereview.chromium.org/4255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2556 0039d316-1c4b-4281-b951-d872f2087c98
* Unignore most warnings on POSIX in build/SConscript.main.evanm@google.com2008-09-161-3/+2
| | | | | | | | | BUG=2053 Patch from Paweł Hajdan jr <phajdan.jr@gmail.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2272 0039d316-1c4b-4281-b951-d872f2087c98
* Capture initial SCons build of {base,net,googleurl}_unittests on Mac:sgk@google.com2008-09-111-1/+1
| | | | | | | | | | | | | * Initial flags and options that mimick how XCode builds (e.g. XCode uses "gcc -x c++" to compile C++, but g++ to link it). * Load minimal set of SConscript files: base, googleurl, net, skia, testing, third_party. (breakpad and webkit to come.) * Correct .cc => .mm file names (multiple places). * Add base/{platform_thread,platform_test,worker_pool}_mac.mm. * Remove -Wall when we build Skia, like we do on Linux. Review URL: http://codereview.chromium.org/2435 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2097 0039d316-1c4b-4281-b951-d872f2087c98
* Update Copyright text in SCons config files.sgk@google.com2008-09-011-28/+4
| | | | | | TBR: beng git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1607 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on -Wall -Werror, fixing a few files while I'm here and *temporarily* ↵evanm@google.com2008-08-201-1/+4
| | | | | | disabling some other warnings that take more effort to fix. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1123 0039d316-1c4b-4281-b951-d872f2087c98
* Add skia and our png wrappers. png_codec_unittest and ↵tc@google.com2008-08-141-143/+152
| | | | | | image_operations_unittest pass. This gives us 70 passing unittests. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@878 0039d316-1c4b-4281-b951-d872f2087c98
* Set the svn:eol-style to LF on all SConscript filestc@google.com2008-08-131-193/+193
| | | | | | TBR=evanm git-svn-id: svn://svn.chromium.org/chrome/trunk/src@823 0039d316-1c4b-4281-b951-d872f2087c98
* Convert submodules SConscript files to psuedo-builder calls.sgk@google.com2008-08-031-1/+1
| | | | | | | | TBR: evanm,bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@304 0039d316-1c4b-4281-b951-d872f2087c98
* Initial cleanups en route to coalescing the get-it-built cut-and-paste from ↵sgk@google.com2008-07-311-2/+0
| | | | | | | | | | | | | | | | | | various SConscripts into readable and maintainable shape. To wit: * Put the near-universal settings of /DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS, /DWIN32_LEAN_AND_MEAN, /wd4503 and /wd4819 in the base construction environment. * Sort various unsorted source file lists. * Fix indentation and quoting for consistency in a couple SConscript files that escaped previous dragnets. * Eliminate two left-over uses of Split() for input file lists. * Give the devenv invocation to build v8_shell.exe the full path to the relevant .vcproj file. * Add /nologo to the base LINKFLAGS setting. * Remove various CPPPATH and other settings that have been hanging around commented out from the Visual Studio build (in case we needed them, which we evidently don't). * Get rid of unnecessary env.File() and env.Dir() calls in various settings (esp. CPPPATH) and source file lists. * Add copyright notice to an overlooked SConscript file. * Clean up version.bat invocation. TBR: bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174 0039d316-1c4b-4281-b951-d872f2087c98
* Add skia to the repository.initial.commit2008-07-271-0/+195
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16 0039d316-1c4b-4281-b951-d872f2087c98