File: linkopts.bzl

package info (click to toggle)
webkit2gtk 2.51.1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 455,340 kB
  • sloc: cpp: 3,865,253; javascript: 197,710; ansic: 165,177; python: 49,241; asm: 21,868; ruby: 18,095; perl: 16,926; xml: 4,623; sh: 2,409; yacc: 2,356; java: 2,019; lex: 1,330; pascal: 372; makefile: 210
file content (35 lines) | stat: -rw-r--r-- 999 bytes parent folder | download | duplicates (35)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"""
THIS IS THE EXTERNAL-ONLY VERSION OF THIS FILE. G3 HAS ITS OWN.

This file contains flags for the C++ linker, referred to by Bazel as linkopts.

Now that we have a modular build, this file could maybe go away and folded into our toolchains.

"""

CORE_LINKOPTS = select({
    "@platforms//os:android": [
        "-landroid",
        "-ldl",
        "-llog",  # Provides __android_log_vprint, needed by //src/ports/SkDebug_android.cpp.
    ],
    "//conditions:default": [],
})

OPT_LEVEL = select({
    "//bazel/common_config_settings:debug_build": [],
    "//bazel/common_config_settings:fast_build_linux": [
        "-Wl,--strip-debug",
    ],
    "//bazel/common_config_settings:fast_build_mac": [],
    "//bazel/common_config_settings:release_build_mac": [
        "-dead_strip",
    ],
    "//bazel/common_config_settings:release_build_linux": [
        "-Wl,--gc-sections",
        "-Wl,--strip-all",
    ],
    "//conditions:default": [],
})

DEFAULT_LINKOPTS = CORE_LINKOPTS + OPT_LEVEL