summaryrefslogtreecommitdiff
path: root/tools/list-globals
blob: 7ac2805ecab650df7315597375d5512767e2a72b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/bash

#**************************************************************************
#*                                                                        *
#*                                 OCaml                                  *
#*                                                                        *
#*                 Stephen Dolan, University of Cambridge                 *
#*                                                                        *
#*   Copyright 2017 Stephen Dolan.                                        *
#*                                                                        *
#*   All rights reserved.  This file is distributed under the terms of    *
#*   the GNU Lesser General Public License version 2.1, with the          *
#*   special exception on linking described in the file LICENSE.          *
#*                                                                        *
#**************************************************************************

[ -z "$@" ] && { echo "Usage: $0 <foo.[oa]>" > /dev/stderr; exit 2; }

nm -A -f sysv "$@" |\
  awk '
    BEGIN {FS = " *[|] *"}
    NF > 1 && $4 != "TLS" && $7 != ".text" && $7 != "*COM*" \
    && $3 !~ /^[TtURr]$/ {print $3 " " $1}
  '