aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn/BUILD.gn
Commit message (Collapse)AuthorAge
...
* clang on windows supportGravatar Mike Klein2017-07-31
| | | | | | | | | | | | | | | | | 1) Run python bin/fetch-clang-win 2) Set clang_win = "../bin/clang_win" 3) ??? 4) Profit Most changes here are to pass the right -mfoo flags to Clang to enable advanced instruction sets, or fixed warning-as-errors. BUG=skia:2679 Change-Id: Ieed145d35c209131c7c16fdd3ee11a3de4a1a921 Reviewed-on: https://skia-review.googlesource.com/28740 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add arc support to gpu Obj c++ codeGravatar Greg Daniel2017-07-12
| | | | | | | | | | | | | This is mainly for getting ready to start adding lots of metal backend code. I've also update the "gpu tools" target to require ARC with involved updating one IOS file in there. Bug: skia: Change-Id: Ied22e8fe7532445cc274efb529e3450654a6614b Reviewed-on: https://skia-review.googlesource.com/22484 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Re-re-land sksl fragment processor supportGravatar Ethan Nicholas2017-06-29
| | | | | | | | | | This reverts commit 5ce397205528f82084fc650c2ce27d246c01da33. Bug: skia: Change-Id: I88260c90004610a1cf8ad1a87c2b4b222525bbb6 Reviewed-on: https://skia-review.googlesource.com/21108 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Revert "Re-land sksl fragment processor support"Gravatar Mike Klein2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c070939fd1a954b7a492bc30f0cf64a664b90181. Reason for revert: This has some knock-on effects in the generation of Android.bp from our GN files. See gn/gn_to_bp.py? We're seeing things like "tmp/tmpsBVycx/gen/" end up in the include search path in Android.bp, which obviously don't exist there... Original change's description: > Re-land sksl fragment processor support > > This reverts commit ed50200682e0de72c3abecaa4d5324ebcd1ed9f9. > > Bug: skia: > Change-Id: I9caa7454b391450620d6989dc472abb3cf7a2cab > Reviewed-on: https://skia-review.googlesource.com/20965 > Reviewed-by: Ben Wagner <benjaminwagner@google.com> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> TBR=benjaminwagner@google.com,ethannicholas@google.com Change-Id: I502486b5405923b322429219f4cc396a45a14cea No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/20990 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Re-land sksl fragment processor supportGravatar Ethan Nicholas2017-06-27
| | | | | | | | | | This reverts commit ed50200682e0de72c3abecaa4d5324ebcd1ed9f9. Bug: skia: Change-Id: I9caa7454b391450620d6989dc472abb3cf7a2cab Reviewed-on: https://skia-review.googlesource.com/20965 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Upgrade android build (and infrastructure) to use ndk r15.Gravatar Derek Sollenberger2017-06-27
| | | | | | | | | | Bug: 6672 Change-Id: Ia6c6bae8a9adfd75172d7116487dfa63c3d69670 Reviewed-on: https://skia-review.googlesource.com/20904 Commit-Queue: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Eric Boren <borenet@google.com>
* Revert "sksl fragment processor support"Gravatar Ethan Nicholas2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ccf59917d3fe7aaf59de714acfbd0596503f324f. Reason for revert: breaking iOS bots Original change's description: > sksl fragment processor support > > Bug: skia: > Change-Id: Ia3b0305c2b0c78074303831f628fb01852b90d34 > Reviewed-on: https://skia-review.googlesource.com/17843 > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Ben Wagner <benjaminwagner@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,benjaminwagner@google.com,ethannicholas@google.com Change-Id: I0a33060c7c42c7b44c5c13d443ac42958291c2f1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/20962 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* sksl fragment processor supportGravatar Ethan Nicholas2017-06-27
| | | | | | | | | Bug: skia: Change-Id: Ia3b0305c2b0c78074303831f628fb01852b90d34 Reviewed-on: https://skia-review.googlesource.com/17843 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Describe GCC-like asm steps as "assemble ..."Gravatar Mike Klein2017-04-26
| | | | | | | | | Oddly, the MSVC toolchain already says "assemble ...". Change-Id: Iabf06afa1b7c05b5699a26813f1469346be439a5 Reviewed-on: https://skia-review.googlesource.com/14367 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* stop disabling threadsafe staticsGravatar Mike Klein2017-04-07
| | | | | | | | | Chrome's got threadsafe statics, Android too, Flutter too, and heck, we even have them on all our Windows builds. No one responded to my mail about them. Let's stop turning them off on not-Windows! Change-Id: Iadf00336aa73df3f694ac019c9d54a3f2257a3bd Reviewed-on: https://skia-review.googlesource.com/11683 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* remove -mdspr2Gravatar Mike Klein2017-04-04
| | | | | | | | | | | | | | | | | | | | | | | | I set -mdspr2 unconditionally on 32-bit MIPS builds only to not have to deal with setting it conditionally on the source files specifically requiring those instructions. Since then, I've deleted all the source files specifically requiring -mdspr2 (and -mdsp). No one understood them and they were only accelerating really uninteresting cases, like 565 blits. So, we haven't needed -mdspr2 anywhere for a while, and removing it will unblock running these builds on the CI20 dev boards, which support neither -mdsp nor -mdsp2. BUG=skia:1437 CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-Clang-mipsel-Debug-Android,Build-Ubuntu-Clang-mipsel-Release-Android Change-Id: Idda56fd8bb37ba064b78b4cddd8878b37dfe9502 Reviewed-on: https://skia-review.googlesource.com/11284 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Derek Sollenberger <djsollen@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* make _win.S know if it's 64-bitGravatar Mike Klein2017-03-30
| | | | | | | | | | | | | I think this is the root of my Windows / Chrome problems. Even on 32-bit builds, Chrome compiles nacl64.exe in 64-bit mode. So to make things simple, always put _win.S in the sources, and no-op it away when assembling for 32-bit. Change-Id: I19f163491739a6c0cbdedd0ce353f1d2289907ae Reviewed-on: https://skia-review.googlesource.com/10637 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add extra_asmflagsGravatar Kevin Lubick2017-03-28
| | | | | | | | | | This makes it easier to cross-compile for non-Android ARM (e.g. Raspberry PI) Bug: skia: Change-Id: I4414d933bc38d56009aefcbe10e68f7c70964d9c Reviewed-on: https://skia-review.googlesource.com/10291 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* turn on hidden visibility flags on iOSGravatar Mike Klein2017-03-28
| | | | | | | | | | | | | These new images came up when I turned them off the other day: https://gold.skia.org/search?blame=eec23d113149569414e325ac6fd5a9253945628b&fdiffmax=-1&fref=false&frgbamax=-1&head=true&include=false&limit=50&match=gamma_correct&match=name&metric=combined&neg=false&pos=false&query=source_type%3Dgm&sort=desc&unt=true Some sort of ODR problem? :/ Change-Id: I9b2575948c3bd5710476e6501e8ec27933c277f6 Reviewed-on: https://skia-review.googlesource.com/10287 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* focus hidden-visibility flagsGravatar Mike Klein2017-03-27
| | | | | | | | | This makes things like dladdr and backtrace_symbols not totally useless on Linux. Change-Id: I26666a76c5b50fbf88aaf9709c869de0a697bb02 Reviewed-on: https://skia-review.googlesource.com/10176 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Support vs2017.Gravatar Ben Wagner2017-03-21
| | | | | | | Change-Id: Icb333d34705c86f6204a5265b645a2a215e60ad6 Reviewed-on: https://skia-review.googlesource.com/9624 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Added support for building for tvOSGravatar Matthew Leibowitz2017-03-14
| | | | | | | | | | | | | | | This change is just to add support for building for tvOS. It is exactly the same as iOS, just using a different SDK. I had to change the two lines for libjpeg-turbo so that it will run for both tvOS and iOS. BUG=skia: Change-Id: I6ae5fc4257df74c0f321e5d2d71584f6a52ec3a6 Reviewed-on: https://skia-review.googlesource.com/9660 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Add iOS simulator support in GN.Gravatar Mike Klein2017-03-13
| | | | | | | | | | | | This builds fine on my laptop, but fails to link on the bots, so I'm leaving out a new Build bot for now. BUG=skia:6329 Change-Id: I4b33770f13ab9dec914d090b45d9921b19ee2c9d Reviewed-on: https://skia-review.googlesource.com/9519 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Be able to compile nanobench for ChromecastGravatar Kevin Lubick2017-03-07
| | | | | | | | | | | | | | | | | | | | | | | | Get toolchain from https://goto.google.com/ncoqy and put in $CAST_TOOLCHAIN gn gen out/chromecast --args='cc="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-gcc" cxx="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-g++" ar="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-ar" is_official_build=true skia_use_fontconfig=false extra_ldflags=["-static-libstdc++","-static-libgcc"] target_cpu="arm" skia_enable_gpu=false skia_use_system_freetype2=false' ninja -C out/chromecast nanobench We go with is_official_build to minimize binary size, as the chromecast does not have much onboard storage. They do not package libstdc++ so we add the link options: -static-libstdc++ -static-libgcc -momit-leaf-frame-pointer is not supported, so we delete it, as it is not important. BUG=skia: Change-Id: I7b0882ab5d6109f07345a2d59df265efef9b9554 Reviewed-on: https://skia-review.googlesource.com/9338 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Support Android NDK r14.Gravatar Mike Klein2017-03-06
| | | | | | | | | | | | | | | | | | | | simpleperf has moved a little since r13. To support both, remove its copy step. Explicitly disable the Clang integrated assembler on MIPS. It has only understood the 'usw' (unaligned store) pseudoinstruction for about 4 months, and that won't be part of a Clang release until the upcoming Clang 4.0. Must be that -no-integrated-as was the default in r13. All six platforms build on my laptop with r14 now. Will follow up with the CL that moves the bots to r14. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm64-Debug-Android,Build-Ubuntu-Clang-arm-Debug-Android,Build-Ubuntu-Clang-arm64-Debug-Android,Build-Ubuntu-Clang-mips64el-Debug-Android,Build-Ubuntu-Clang-mipsel-Debug-Android,Build-Ubuntu-Clang-x64-Debug-Android,Build-Ubuntu-Clang-x86-Debug-Android,Build-Win-Clang-arm64-Release-Android Change-Id: Ic00981d534613ebab8f6e7646b967493728b91d9 Reviewed-on: https://skia-review.googlesource.com/9237 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Derek Sollenberger <djsollen@google.com>
* SkJumper: WindowsGravatar Mike Klein2017-02-21
| | | | | | | | | | | | | - Compile stages with -DWIN to pick up MS-specific start_pipeline(). - Add SkJumper_generated_win.S with MS-specific assembly. - Add a minimal asm tool to our GN Windows toolchain. The SkRasterPipeline_f16 benchmark run ~4x faster on my desktop. Change-Id: Ia45afb4ecb6a055e2c0e43f0f54f59e081c23b7f Reviewed-on: https://skia-review.googlesource.com/8778 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Set asmflags when building for iOS.Gravatar Mike Klein2017-02-17
| | | | | | | | | | It's probably best we build iOS assembly with the iOS SDK and the right architecture settings in Clang... Change-Id: I68119641b1f86267ca85434b5a7f6ed37838ce23 Reviewed-on: https://skia-review.googlesource.com/8680 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Strip dead code on all Release builds.Gravatar Mike Klein2017-02-10
| | | | | | | | | | | | | | | | Today we do this only on Windows (/OPT:REF). This extends to Mac-likes (-dead_strip) and non-Macs (-ffunction-sections, -fdata-sections, -Wl,--gc-sections). Should be no harm passing -ffunction-sections and -fdata-sections on Mac too. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-Clang-x86_64-Release-Mini Change-Id: I3a1b41be1d258ff509b0355215cb25dab47db57b Reviewed-on: https://skia-review.googlesource.com/8307 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Make iOS main() functions normal.Gravatar Mike Klein2017-02-06
| | | | | | | | | | | The weird foo_mains are no longer needed when we build with GN. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm-Debug-iOS Change-Id: Iae50696741e0dc277d96dda4968a1ae41cb17c8a Reviewed-on: https://skia-review.googlesource.com/8064 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Stephan Altmueller <stephana@google.com>
* Make flag parsing work in GN-built iOS nanobench.Gravatar Mike Klein2017-01-31
| | | | | | | | | | | Just like DM. CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-Arm7-Debug,Build-Mac-Clang-arm64-Debug-GN_iOS Change-Id: I4af3fa1813e3b7ee48407096e91373b5fee569c7 Reviewed-on: https://skia-review.googlesource.com/7824 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* gn: iOS packaging scriptGravatar Mike Klein2017-01-31
| | | | | | | | | | | | | | This is enough to run DM on my iPad. I've tweaks DM so that it can run as built by both GN and GYP. When we kill off GYP, all the dm_main() nonsense goes away. CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-Arm7-Debug,Build-Mac-Clang-arm64-Debug-GN_iOS Change-Id: I59176bc203ee3180618b94ac5f9d291e0ad20b62 Reviewed-on: https://skia-review.googlesource.com/7757 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Hal Canary <halcanary@google.com>
* GN: add 32-bit and Release iOS builders.Gravatar Mike Klein2017-01-23
| | | | | | | | | | | | And roll recipes to the point where they pass target_cpu to GN, adding x86_64 as an alias for x64. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm64-Debug-GN_iOS,Build-Mac-Clang-arm64-Release-GN_iOS,Build-Mac-Clang-arm-Debug-GN_iOS,Build-Mac-Clang-arm-Release-GN_iOS Change-Id: I1933d5803ec7f59f78576c5a7b16489362905a97 Reviewed-on: https://skia-review.googlesource.com/7403 Reviewed-by: Eric Boren <borenet@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Try /MTd on Debug Windows builds."Gravatar Mike Klein2017-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 58ce2bc51a318e53e3e6f1ef297c5adc775b0fec. Reason for revert: warnings / errors when building ANGLE. Original change's description: > Try /MTd on Debug Windows builds. > > The people clamor for it! I doubt we'll care in our testing. > > BUG=skia:5928 > > Change-Id: I80d3948fd1f5d0b956c308bc3a6183b8660575ae > Reviewed-on: https://skia-review.googlesource.com/7364 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Ben Wagner <bungeman@google.com> > TBR=mtklein@chromium.org,bungeman@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:5928 Change-Id: Id6ab3de7ebb5394749233429bada2f5244ff2978 Reviewed-on: https://skia-review.googlesource.com/7372 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Try /MTd on Debug Windows builds.Gravatar Mike Klein2017-01-21
| | | | | | | | | | | | The people clamor for it! I doubt we'll care in our testing. BUG=skia:5928 Change-Id: I80d3948fd1f5d0b956c308bc3a6183b8660575ae Reviewed-on: https://skia-review.googlesource.com/7364 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Get latest ANGLE as of January 6, 2017Gravatar Brian Osman2017-01-11
| | | | | | | | | | | | Also add ANGLE ES3 predefined configs. BUG=skia: CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE Change-Id: Ib7394afa961da1afe91c6dfefe08528273d3087c Reviewed-on: https://skia-review.googlesource.com/6698 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Start including 'winrt' in Windows toolchainGravatar Brian Osman2017-01-10
| | | | | | | | | | | | | | | | | Recent versions of ANGLE require this. See: https://skia-review.googlesource.com/c/6698/ This also updates us to the latest version of the Windows SDK, 2015 Update 3 (Windows 10 SDK). BUG=skia: CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win2k8-MSVC-GCE-CPU-AVX2-x86_64-Debug-GDI,Test-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug-Vulkan,Test-Win2k8-MSVC-GCE-CPU-AVX2-x86_64-Release Change-Id: I42c8cabc87717f8695763f2c5573b27ab8ab65be Reviewed-on: https://skia-review.googlesource.com/6801 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Disable clang -Wsigned-enum-bitfield warningsGravatar Matt Sarett2017-01-04
| | | | | | | | | | | | | | Full error text: error: enums in the Microsoft ABI are signed integers by default; consider giving the enum Properties an unsigned underlying type to make this code portable [-Werror,-Wsigned-enum-bitfield] BUG=skia: Change-Id: I1491dd94c894e383fed401880fc04562140f7a66 Reviewed-on: https://skia-review.googlesource.com/6594 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Specify "/utf-8" with Visual C++.Gravatar Ben Wagner2017-01-03
| | | | | | | | | | | This sets the source and executable character set to utf-8. This avoids issues with local code pages and avoids adding an unwanted BOM. Change-Id: If854c0001c2363f3262d20e28dce30c1e733536a Reviewed-on: https://skia-review.googlesource.com/6547 Commit-Queue: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* switch to libstdc++ for standalone Android builds.Gravatar Mike Klein2016-12-14
| | | | | | | | | This makes it possible to target NDK API 18 (K) again. Change-Id: Id3d1f19b2904792b4001d2ea0942cc1ab6cf732e Reviewed-on: https://skia-review.googlesource.com/6081 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add move semantics to SkTHash*Gravatar Mike Klein2016-12-13
| | | | | | | | | | | | | | | | The more I look at std::unordered_map and co., the less I like them. I think we might want to bet on SkTHash*. As a simple first improvement, add move support. Next comes shrinking, and then I'll start moving over SkTDynamicHash users. BUG=skia:6053 Change-Id: Ifdb5d713aab66434ca271c7f18a0cbbb0720099c Reviewed-on: https://skia-review.googlesource.com/5943 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Hal Canary <halcanary@google.com>
* update Win/Android toolchain setup after rolling GNGravatar Mike Klein2016-12-09
| | | | | | | | | | | The new GN doesn't like "ar = ar + ...", etc. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-arm64-Release-Android Change-Id: Ib131ee367c4af144f8ffb8562fc26b67675e4f45 Reviewed-on: https://skia-review.googlesource.com/5726 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add the ability to use different mallocs.Gravatar Herb Derby2016-12-09
| | | | | | | | | | | | | gn gen --args='malloc="tcmalloc"' gn gen --args='malloc="jemalloc"' or if the library is in a non-standard directory gn gen --args='malloc="tcmalloc" extra_ldflags="-L<path-to-library>"' Change-Id: Icacd837d11392a1971f298ccddd69a5a6781f6cf Reviewed-on: https://skia-review.googlesource.com/5629 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* On mips64el, use -B instead of linking .o manually.Gravatar Mike Klein2016-12-08
| | | | | | | | | | | These .o are only appropriate for linking executables; others would be used if we link an .so. -B turns out to be the flag we really wanted here anyway, adding that directory to the search path for all these .o files, letting Clang pick the right one. The existing comment is now correct for both the lib_dirs and ldflags +=. Change-Id: I66d9aada12477756142726828cf66c142ca76a48 Reviewed-on: https://skia-review.googlesource.com/5657 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* -pie applies only to executablesGravatar Mike Klein2016-12-06
| | | | | | | Change-Id: I36dff113145befbfb4f69810a474394d5d0ca4ed Reviewed-on: https://skia-review.googlesource.com/5553 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Use /MD for Windows builds."Gravatar Joe Gregorio2016-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit cab79aadad30e48fc7b4ba9868d6badf3798beba. Reason for revert: Bots crashing. Original change's description: > Use /MD for Windows builds. > > I think the default is /MT, static linking. > This should make our builds smaller, and compatible with clients using /MD. > > Change-Id: Id8a39a029925eda2627532bbd0223c693300f5da > Reviewed-on: https://skia-review.googlesource.com/5277 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,bungeman@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Iff644250a23175e44a4282e7aaea0e2a2adc1ce0 Reviewed-on: https://skia-review.googlesource.com/5310 Commit-Queue: Joe Gregorio <jcgregorio@google.com> Reviewed-by: Joe Gregorio <jcgregorio@google.com>
* Use /MD for Windows builds.Gravatar Mike Klein2016-11-29
| | | | | | | | | | I think the default is /MT, static linking. This should make our builds smaller, and compatible with clients using /MD. Change-Id: Id8a39a029925eda2627532bbd0223c693300f5da Reviewed-on: https://skia-review.googlesource.com/5277 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Turn off /arch:AVX[2] on Windows builds."Gravatar Mike Klein2016-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c89e2438ae24c862087f8ca1cb076052edbb27ea. Reason for revert: I'm going to stub this code out in Chrome instead for now. Chrome's not going to land something that looks like this, so I'd rather undo it than leave Skia in this odd state. Original change's description: > Turn off /arch:AVX[2] on Windows builds. > > This canaries a similar change Chrome may need. > > BUG=chromium:666707 > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5005 > > Change-Id: Ibf7f9941968d905d865b9be1e63ebbf768870175 > Reviewed-on: https://skia-review.googlesource.com/5005 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,brucedawson@chromium.org,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I9562f7877749c61f6ba4d48d6c4b557f09876128 Reviewed-on: https://skia-review.googlesource.com/5069 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Turn off /arch:AVX[2] on Windows builds.Gravatar Mike Klein2016-11-18
| | | | | | | | | | | | | This canaries a similar change Chrome may need. BUG=chromium:666707 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5005 Change-Id: Ibf7f9941968d905d865b9be1e63ebbf768870175 Reviewed-on: https://skia-review.googlesource.com/5005 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GN: add public headers warnings check.Gravatar Mike Klein2016-11-16
| | | | | | | | | | | | We already generate skia.h to include all public headers for Fiddle. This just includes it with -Wunused-parameter turned on as an error. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4901 Change-Id: Ia55a901c09a3c9c9d6d35a43259431dba3532ed9 Reviewed-on: https://skia-review.googlesource.com/4901 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GN: detect is_clang cheaply when possible.Gravatar Mike Klein2016-11-14
| | | | | | | | | | | | | | | | | | | | Running is_clang.py is the current long-poll in `gn gen` time. We can avoid it trivially in a few situations: - We always use Clang on Android, iOS, and Mac. - If cc and cxx are clang and clang++, it's Clang. This cuts `gn gen` time from 80ms to 20ms on my laptop. (Did you know gn has a --tracelog=trace.log option for creating Chrome-tracing-compatible traces? Pretty neat.) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4746 Change-Id: Ic81d221675e8309cc9942bb9e62243d86658b02d Reviewed-on: https://skia-review.googlesource.com/4746 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Ben Wagner <bungeman@google.com>
* Add GN iOS builder.Gravatar Mike Klein2016-11-07
| | | | | | | | | | | This gets up a bot to build for iOS via GN as much as we can right now. This is unlikely to be the long term structure of the iOS bots... by the time we add Test/Perf bots we'll likely need to have a gn_ios_flavor.py. But for now, this keeps the GN iOS build such as it is working. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4457 Change-Id: Ideb10ae3f4ab5530ad153237a343dd5c0e7dd02f Reviewed-on: https://skia-review.googlesource.com/4457 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Eric Boren <borenet@google.com>
* GN: quiet alink spam on MacGravatar Mike Klein2016-11-07
| | | | | | | | | | | | | | | When building on Mac you see lots of spam about object files with no symbols when linking libskia.a. This filters them out. We have to do this in a Python script anyway, so I've consolidated into the existing gn/ar.py. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4447 Change-Id: I9b18051ba687ec1fcf464a87a8a5929d29c70f24 Reviewed-on: https://skia-review.googlesource.com/4447 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GN: quiet link.exe warning spam.Gravatar Mike Klein2016-11-07
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4448 Change-Id: Iabc76cf111a62783770725a6cbf3a4284f35502b Reviewed-on: https://skia-review.googlesource.com/4448 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GN: iOS basicsGravatar Mike Klein2016-11-03
| | | | | | | | | | | | | | | This doesn't create any apps or bundles or sign anything, but it all compiles and links. Note the awkward transitional hack I used to make each tool's tool_main() serve as the real main() again when built with GN, while keeping the existing setup with GYP. Fun... BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4350 Change-Id: I632753d5d8e5848380854f413bf5905d676bfcf4 Reviewed-on: https://skia-review.googlesource.com/4350 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* For debug builds, -O0 by default, adding -O1 only on bots.Gravatar Mike Klein2016-11-02
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4344 Change-Id: Idc1435d75e51ea0b54d369efa91993d369aa74c0 Reviewed-on: https://skia-review.googlesource.com/4344 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>