# libglog.la - a libtool library file
# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1ubuntu1
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

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

# Names of this library.
library_names='libglog.so.0.0.0 libglog.so.0 libglog.so'

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

# Linker flags that can not go in dependency_libs.
inherited_linker_flags=''

# Libraries that this one depends upon.
dependency_libs=' -L/tmp/libglog-chaorenl/gcc/lib/gcc/x86_64-linux/4.8 -L/tmp/libglog-chaorenl/gcc/x86_64-linux/lib64 -lpthread'

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

# Version information for libglog.
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='/tmp/libglog-chaorenl/install/lib'
