summary refs log tree commit diff
path: root/pkgs/build-support/bintools-wrapper/add-flags.sh
blob: 7d118d20fc6820a0310c72353824bf085b74fae3 (plain) (blame)
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
36
37
38
39
40
# See cc-wrapper for comments.
var_templates_list=(
    NIX+IGNORE_LD_THROUGH_GCC
    NIX+LDFLAGS
    NIX+LDFLAGS_BEFORE
    NIX+LDFLAGS_AFTER
    NIX+LDFLAGS_HARDEN
)
var_templates_bool=(
    NIX+SET_BUILD_ID
    NIX+DONT_SET_RPATH
)

declare -a role_infixes=()
if [ "${NIX_BINTOOLS_WRAPPER_@infixSalt@_TARGET_BUILD:-}" ]; then
    role_infixes+=(_BUILD_)
fi
if [ "${NIX_BINTOOLS_WRAPPER_@infixSalt@_TARGET_HOST:-}" ]; then
    role_infixes+=(_)
fi
if [ "${NIX_BINTOOLS_WRAPPER_@infixSalt@_TARGET_TARGET:-}" ]; then
    role_infixes+=(_TARGET_)
fi

for var in "${var_templates_list[@]}"; do
    mangleVarList "$var" "${role_infixes[@]}"
done
for var in "${var_templates_bool[@]}"; do
    mangleVarBool "$var" "${role_infixes[@]}"
done

if [ -e @out@/nix-support/libc-ldflags ]; then
    NIX_@infixSalt@_LDFLAGS+=" $(< @out@/nix-support/libc-ldflags)"
fi

if [ -e @out@/nix-support/libc-ldflags-before ]; then
    NIX_@infixSalt@_LDFLAGS_BEFORE="$(< @out@/nix-support/libc-ldflags-before) $NIX_@infixSalt@_LDFLAGS_BEFORE"
fi

export NIX_BINTOOLS_WRAPPER_@infixSalt@_FLAGS_SET=1