# libfakeroot.la - a libtool library file
# Generated by libtool (GNU libtool) 2.4.6
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libfakeroot-0.so'

# Names of this library.
library_names='libfakeroot-0.so libfakeroot-0.so libfakeroot.so'

# The name of the static archive.
old_library=''

# Linker flags that cannot go in dependency_libs.
inherited_linker_flags=''

# Libraries that this one depends upon.
dependency_libs=' -L/usr/local/google/home/tabba/work/kayvium/android-kvm/out/buildroot/per-package/host-fakeroot/host/lib -ldl'

# Names of additional weak libraries provided by this library
weak_library_names=''

# Version information for libfakeroot.
current=0
age=0
revision=0

# Is this an already installed library?
installed=yes

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/local/google/home/tabba/work/kayvium/android-kvm/out/buildroot/per-package/host-fakeroot/host/lib'
