From 1d27ed3581400ced05479d6f344f7275a6f54323 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vivek=20Das=C2=A0Mohapatra?= <vivek@collabora.co.uk> Date: Fri, 12 May 2017 16:18:38 +0100 Subject: [PATCH] Tidy up the intermediate file use in the sub library code generator --- generate-stublib.sh | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/generate-stublib.sh b/generate-stublib.sh index 0087a3c8d..9cef4eaa4 100755 --- a/generate-stublib.sh +++ b/generate-stublib.sh @@ -34,23 +34,26 @@ echo -n > $proxy_src.map; exec >& $proxy_src; cat $top/capsule-shim.h; -for proxied_target in $proxied_dso $(cat $proxy_extra); + +for pt in $proxied_dso $(cat $proxy_extra); do - while read symbol version dependency; - do - case $version in - @*) - echo "VERSIONED_STUB ( $symbol, $version );"; - node=${version##*@}; - NODE[$node]=${NODE[$node]:-}" "$symbol; - ;; - *) - echo "UNVERSIONED_STUB( $symbol );"; - ;; - esac; - echo " { \"$symbol\" }," >> $proxy_src.symbols - done < <($top/print-libstubs $proxied_target); -done; + $top/print-libstubs $pt; +done > $proxy_src.symbols; + +while read symbol version dependency; +do + case $version in + @*) + echo "VERSIONED_STUB ( $symbol, $version );"; + node=${version##*@}; + NODE[$node]=${NODE[$node]:-}" "$symbol; + ;; + *) + echo "UNVERSIONED_STUB( $symbol );"; + ;; + esac; +done < $proxy_src.symbols; + cat - <<EOF static Lmid_t symbol_ns; static char *prefix; @@ -63,6 +66,7 @@ static const char *exclude[] = { // MUST NOT be pulled from the capsule prefixed "libpthread-2.19.so", "libdl.so.2", EOF + while read excluded x; do case $excluded in lib*) printf "%32s \"%s\",\n" "" $excluded; ;; esac; @@ -84,7 +88,9 @@ static void __attribute__ ((constructor)) _capsule_init (void) capsule_item_t relocs[] = { EOF -cat $proxy_src.symbols; + +while read sym x; do echo " { \"$sym\" },"; done < $proxy_src.symbols; + cat - <<EOF { NULL } }; -- GitLab