# libgobject-2.0.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=''

# Names of this library.
library_names=''

# The name of the static archive.
old_library='libgobject-2.0.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/zyy/sources/emu-master-dev/external/qemu/bqad/install-windows-x86_64/lib -L/usr/local/google/home/zyy/sources/emu-master-dev/external/qemu/bqad/install-windows-x86_64/lib64 /usr/local/google/home/zyy/sources/emu-master-dev/external/qemu/bqad/install-windows-x86_64/lib/libglib-2.0.la -lws2_32 -lole32 -lwinmm -lshlwapi /usr/local/google/home/zyy/sources/emu-master-dev/external/qemu/bqad/install-windows-x86_64/lib/../lib/libffi.la'

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

# Version information for libgobject-2.0.
current=3800
age=3800
revision=2

# 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/zyy/sources/emu-master-dev/external/qemu/bqad/install-windows-x86_64/lib'
