Skip to content
Snippets Groups Projects
  • Simon McVittie's avatar
    8fb99b99
    inspect-library: Treat "-" as meaning stdin · 8fb99b99
    Simon McVittie authored
    
    To test:
    
        echo "foo@Base" | ./_build/helpers/x86_64-linux-gnu-inspect-library libz.so.1 -
    
    This isn't used for anything yet, but when we give it more integration
    into the library, we might want to use a pipe to supply the
    list of symbols. For instance, if we use deb-symbols(5) symbols lists
    (which describe one or more shared libraries, each with their symbols)
    to describe the Steam Runtime, then we'll want something like this
    pseudocode:
    
        while lines remain:
            SONAME = next line until first whitespace
    
            run helper with pipes on stdin and stdout
    
            while next line starts with one of ('|', '*', ' '):
                if next line starts with ' ':
                    symbol@version = rest of line until first whitespace
                    write symbol@version to pipe
                else:
                    ignore '* Field: value' or '| alternative dependency'
    
            close pipe to helper's stdin
            collect results from stdout
            collect exit status
            add SrtLibrary to list of libraries
    
    Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
    8fb99b99
    History
    inspect-library: Treat "-" as meaning stdin
    Simon McVittie authored
    
    To test:
    
        echo "foo@Base" | ./_build/helpers/x86_64-linux-gnu-inspect-library libz.so.1 -
    
    This isn't used for anything yet, but when we give it more integration
    into the library, we might want to use a pipe to supply the
    list of symbols. For instance, if we use deb-symbols(5) symbols lists
    (which describe one or more shared libraries, each with their symbols)
    to describe the Steam Runtime, then we'll want something like this
    pseudocode:
    
        while lines remain:
            SONAME = next line until first whitespace
    
            run helper with pipes on stdin and stdout
    
            while next line starts with one of ('|', '*', ' '):
                if next line starts with ' ':
                    symbol@version = rest of line until first whitespace
                    write symbol@version to pipe
                else:
                    ignore '* Field: value' or '| alternative dependency'
    
            close pipe to helper's stdin
            collect results from stdout
            collect exit status
            add SrtLibrary to list of libraries
    
    Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
inspect-library.c 7.83 KiB