libcacard: remove libcacard-specific CFLAGS and LIBS from global vars
Currently all what's needed for single file libcacard/vcard_emul_nss.c (libnss cflags) and hw/usb/ccid-card-emulated.c (libcacard includes) together with the libs is added to global QEMU_CFLAGS and libs_softmmu. Use the cflags only where really used (for two mentioned files), and libs only where needed. While at it, rename variables to better reflect reality: libcacard_* is really nss_*. This needs a bit more tweaking: $(NSS_LIBS) should not contain $glib_libs (ditto for _cflags). But in order to fix it, some more preparations should be made first. So add a FIXME comment. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
		
							parent
							
								
									2a8e6c7a85
								
							
						
					
					
						commit
						9d171bd937
					
				| 
						 | 
					@ -31,6 +31,8 @@ libcacard-y += libcacard/vcard_emul_nss.o
 | 
				
			||||||
libcacard-y += libcacard/vcard_emul_type.o
 | 
					libcacard-y += libcacard/vcard_emul_type.o
 | 
				
			||||||
libcacard-y += libcacard/card_7816.o
 | 
					libcacard-y += libcacard/card_7816.o
 | 
				
			||||||
libcacard-y += libcacard/vcardt.o
 | 
					libcacard-y += libcacard/vcardt.o
 | 
				
			||||||
 | 
					libcacard/vcard_emul_nss.o-cflags := $(NSS_CFLAGS)
 | 
				
			||||||
 | 
					libcacard/vcard_emul_nss.o-libs := $(NSS_LIBS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
######################################################################
 | 
					######################################################################
 | 
				
			||||||
# Target independent part of system emulation. The long term path is to
 | 
					# Target independent part of system emulation. The long term path is to
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3470,10 +3470,10 @@ if test "$smartcard_nss" != "no"; then
 | 
				
			||||||
#include <pk11pub.h>
 | 
					#include <pk11pub.h>
 | 
				
			||||||
int main(void) { PK11_FreeSlot(0); return 0; }
 | 
					int main(void) { PK11_FreeSlot(0); return 0; }
 | 
				
			||||||
EOF
 | 
					EOF
 | 
				
			||||||
    smartcard_includes="-I\$(SRC_PATH)/libcacard"
 | 
					    # FIXME: do not include $glib_* in here
 | 
				
			||||||
    libcacard_libs="$($pkg_config --libs nss 2>/dev/null) $glib_libs"
 | 
					    nss_libs="$($pkg_config --libs nss 2>/dev/null) $glib_libs"
 | 
				
			||||||
    libcacard_cflags="$($pkg_config --cflags nss 2>/dev/null) $glib_cflags"
 | 
					    nss_cflags="$($pkg_config --cflags nss 2>/dev/null) $glib_cflags"
 | 
				
			||||||
    test_cflags="$libcacard_cflags"
 | 
					    test_cflags="$nss_cflags"
 | 
				
			||||||
    # The header files in nss < 3.13.3 have a bug which causes them to
 | 
					    # The header files in nss < 3.13.3 have a bug which causes them to
 | 
				
			||||||
    # emit a warning. If we're going to compile QEMU with -Werror, then
 | 
					    # emit a warning. If we're going to compile QEMU with -Werror, then
 | 
				
			||||||
    # test that the headers don't have this bug. Otherwise we would pass
 | 
					    # test that the headers don't have this bug. Otherwise we would pass
 | 
				
			||||||
| 
						 | 
					@ -3483,11 +3483,8 @@ EOF
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
    if test -n "$libtool" &&
 | 
					    if test -n "$libtool" &&
 | 
				
			||||||
       $pkg_config --atleast-version=3.12.8 nss && \
 | 
					       $pkg_config --atleast-version=3.12.8 nss && \
 | 
				
			||||||
      compile_prog "$test_cflags" "$libcacard_libs"; then
 | 
					      compile_prog "$test_cflags" "$nss_libs"; then
 | 
				
			||||||
        smartcard_nss="yes"
 | 
					        smartcard_nss="yes"
 | 
				
			||||||
        QEMU_CFLAGS="$QEMU_CFLAGS $libcacard_cflags"
 | 
					 | 
				
			||||||
        QEMU_INCLUDES="$QEMU_INCLUDES $smartcard_includes"
 | 
					 | 
				
			||||||
        libs_softmmu="$libcacard_libs $libs_softmmu"
 | 
					 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
        if test "$smartcard_nss" = "yes"; then
 | 
					        if test "$smartcard_nss" = "yes"; then
 | 
				
			||||||
            feature_not_found "nss"
 | 
					            feature_not_found "nss"
 | 
				
			||||||
| 
						 | 
					@ -4499,8 +4496,8 @@ fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if test "$smartcard_nss" = "yes" ; then
 | 
					if test "$smartcard_nss" = "yes" ; then
 | 
				
			||||||
  echo "CONFIG_SMARTCARD_NSS=y" >> $config_host_mak
 | 
					  echo "CONFIG_SMARTCARD_NSS=y" >> $config_host_mak
 | 
				
			||||||
  echo "libcacard_libs=$libcacard_libs" >> $config_host_mak
 | 
					  echo "NSS_LIBS=$nss_libs" >> $config_host_mak
 | 
				
			||||||
  echo "libcacard_cflags=$libcacard_cflags" >> $config_host_mak
 | 
					  echo "NSS_CFLAGS=$nss_cflags" >> $config_host_mak
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if test "$libusb" = "yes" ; then
 | 
					if test "$libusb" = "yes" ; then
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,7 @@ ifeq ($(CONFIG_USB_SMARTCARD),y)
 | 
				
			||||||
common-obj-y                          += dev-smartcard-reader.o
 | 
					common-obj-y                          += dev-smartcard-reader.o
 | 
				
			||||||
common-obj-y                          += ccid-card-passthru.o
 | 
					common-obj-y                          += ccid-card-passthru.o
 | 
				
			||||||
common-obj-$(CONFIG_SMARTCARD_NSS)    += ccid-card-emulated.o
 | 
					common-obj-$(CONFIG_SMARTCARD_NSS)    += ccid-card-emulated.o
 | 
				
			||||||
 | 
					ccid-card-emulated.o-cflags := -I$(SRC_PATH)/libcacard
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ifeq ($(CONFIG_POSIX),y)
 | 
					ifeq ($(CONFIG_POSIX),y)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,7 +25,6 @@ vscclient$(EXESUF): libcacard/vscclient.o libcacard.la
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libcacard.la: LDFLAGS += -rpath $(libdir) -no-undefined \
 | 
					libcacard.la: LDFLAGS += -rpath $(libdir) -no-undefined \
 | 
				
			||||||
	-export-syms $(SRC_PATH)/libcacard/libcacard.syms
 | 
						-export-syms $(SRC_PATH)/libcacard/libcacard.syms
 | 
				
			||||||
libcacard.la: LIBS = $(libcacard_libs)
 | 
					 | 
				
			||||||
libcacard.la: $(libcacard-lobj-y)
 | 
					libcacard.la: $(libcacard-lobj-y)
 | 
				
			||||||
	$(call LINK,$^)
 | 
						$(call LINK,$^)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue