# libopcodes.la - a libtool library file
# Generated by libtool (GNU libtool 1.3134 2009-11-29) 2.2.7a
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

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

# Names of this library.
library_names='libopcodes-2.25.51.so libopcodes-2.25.51.so libopcodes.so'

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

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

# Libraries that this one depends upon.
dependency_libs=' -L/usr/local/google/home/poist/gfiber/buildroot/buildroot-prowl-local/buildroot/output/host/lib -L/usr/local/google/home/poist/gfiber/buildroot/buildroot-prowl-local/buildroot/output/host/usr/lib -L/usr/local/google/home/poist/gfiber/buildroot/buildroot-prowl-local/buildroot/output/build/host-gdb-arc-2016.03-gdb/opcodes/../libiberty/pic -liberty'

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

# Version information for libopcodes.
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/poist/gfiber/buildroot/buildroot-prowl-local/buildroot/output/host/usr/x86_64-pc-linux-gnu/arc-buildroot-linux-uclibc/lib'
