mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
meson: scripts: introduce meson-gen-sym.py script
Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Neal Gompa <ngompa13@gmail.com>
This commit is contained in:
parent
cc409ac5ed
commit
8fc4d28dba
29
scripts/meson-gen-sym.py
Executable file
29
scripts/meson-gen-sym.py
Executable file
@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
|
||||
if len(sys.argv) < 5:
|
||||
print('invalid arguments')
|
||||
print('usage: {0} OUTPUT VERSION PUBLIC PRIVATE ...')
|
||||
sys.exit(1)
|
||||
|
||||
outfilepath = sys.argv[1]
|
||||
version = sys.argv[2]
|
||||
public = sys.argv[3]
|
||||
private = sys.argv[4:]
|
||||
|
||||
with open(outfilepath, 'w') as out:
|
||||
out.write('# WARNING: generated from the following files:\n\n')
|
||||
|
||||
with open(public) as tmp:
|
||||
out.write(tmp.read())
|
||||
|
||||
out.write('\n\n# Private symbols\n\n')
|
||||
out.write('{0} {{\n\n'.format(version))
|
||||
out.write('global:\n\n')
|
||||
|
||||
for priv in private:
|
||||
with open(priv) as tmp:
|
||||
out.write(tmp.read())
|
||||
|
||||
out.write('\n\nlocal:\n*;\n\n};')
|
@ -19,6 +19,7 @@ scripts = [
|
||||
'hvsupport.py',
|
||||
'hyperv_wmi_generator.py',
|
||||
'meson-gen-def.py',
|
||||
'meson-gen-sym.py',
|
||||
'meson-python.sh',
|
||||
'mock-noinline.py',
|
||||
'prohibit-duplicate-header.py',
|
||||
|
@ -293,20 +293,6 @@ endif ! WITH_LIBSSH
|
||||
|
||||
BUILT_SOURCES += $(GENERATED_SYM_FILES)
|
||||
|
||||
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
|
||||
$(ACCESS_DRIVER_SYM_FILES) \
|
||||
$(top_builddir)/config.status
|
||||
$(AM_V_GEN)rm -f $@-tmp $@ ; \
|
||||
printf '# WARNING: generated from the following:\n# $^\n\n' >$@-tmp && \
|
||||
cat $(srcdir)/libvirt_public.syms >>$@-tmp && \
|
||||
printf '\n\n# Private symbols\n\n' >>$@-tmp && \
|
||||
printf 'LIBVIRT_PRIVATE_$(VERSION) {\n\n' >>$@-tmp && \
|
||||
printf 'global:\n\n' >>$@-tmp && \
|
||||
cat $(USED_SYM_FILES) $(ACCESS_DRIVER_SYM_FILES) >>$@-tmp && \
|
||||
printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
|
||||
chmod a-w $@-tmp && \
|
||||
mv $@-tmp libvirt.syms
|
||||
|
||||
# Empty source list - it merely links a bunch of convenience libs together
|
||||
libvirt_la_SOURCES =
|
||||
libvirt_la_LDFLAGS = \
|
||||
|
Loading…
Reference in New Issue
Block a user