1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# /bin/bash
# Perform common build options
. ./build-common.sh
# Compile using the same options as Tcl
if [ -z "${TCLCONFIGSH}" ]; then
TCLCONFIGSH="$(find /usr/lib /usr/lib64 /usr/local/lib /usr/local/lib64 /lib /lib64 -name tclConfig.sh -print -quit)"
fi
. "${TCLCONFIGSH}"
echo "${TCL_CC} -ggdb3 -fPIC -DPIC -Wall -DUSE_TCL_STUBS=1 ${TCL_DEFS} ${TCL_INCLUDE_SPEC} -shared -rdynamic -o tuapi.so tuapi.c ${TCL_STUB_LIB_SPEC}"
eval ${TCL_CC} -ggdb3 -fPIC -DPIC -Wall -DUSE_TCL_STUBS=1 ${TCL_DEFS} ${TCL_INCLUDE_SPEC} -shared -rdynamic -o tuapi.so tuapi.c ${TCL_STUB_LIB_SPEC}
echo 'package ifneeded tuapi '"${tuapi_version}"' [list load [file join $dir tuapi.so]]' > pkgIndex.tcl
|
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
>
|
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
#! /usr/bin/env bash
bashArrayToJSON() (
args=("$@")
jq -M -r -n -c --args '$ARGS.positional' --args -- "${args[@]}"
)
bashStringToJSON() (
string="$1"
eval "tmpArray=($string)"
bashArrayToJSON "${tmpArray[@]}"
)
# Perform common build options
. ./build-common.sh
# Compile using the same options as Tcl
if [ -z "${TCLCONFIGSH}" ]; then
TCLCONFIGSH="$(find /usr/lib /usr/lib64 /usr/local/lib /usr/local/lib64 /lib /lib64 -name tclConfig.sh -print -quit)"
fi
. "${TCLCONFIGSH}"
echo "${TCL_CC} -ggdb3 -fPIC -DPIC -Wall -DUSE_TCL_STUBS=1 ${TCL_DEFS} ${TCL_INCLUDE_SPEC} -shared -rdynamic -o tuapi.so tuapi.c ${TCL_STUB_LIB_SPEC}"
cat << _EOF_ > compile_commands.json.new
[
{
"directory": "$(pwd)",
"file": "tuapi.c",
"arguments": [
"$(echo "${TCL_CC}" | sed 's@ @", "@g')",
"-ggdb3",
"-fPIC",
"-DPIC",
"-Wall",
"-DUSE_TCL_STUBS=1",
$(bashStringToJSON "${TCL_DEFS}" | sed 's@^\[@@;s@\]$@@'),
$(bashStringToJSON "${TCL_INCLUDE_SPEC}" | sed 's@^\[@@;s@\]$@@'),
"-shared",
"-rdynamic",
"-o",
"tuapi.so",
"tuapi.c"
]
}
]
_EOF_
eval ${TCL_CC} -ggdb3 -fPIC -DPIC -Wall -DUSE_TCL_STUBS=1 ${TCL_DEFS} ${TCL_INCLUDE_SPEC} -shared -rdynamic -o tuapi.so tuapi.c ${TCL_STUB_LIB_SPEC} || exit 1
mv compile_commands.json.new compile_commands.json
echo 'package ifneeded tuapi '"${tuapi_version}"' [list load [file join $dir tuapi.so]]' > pkgIndex.tcl
|