From nobody Sat Feb 7 15:26:28 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1569582741; cv=none; d=zoho.com; s=zohoarc; b=hAxirP/n9xwmRRVNy/U664kHXoVcFYFWIHExAdaZ7DzZuojaGF/Cw/qt1rld/d7fzZ3me/2lkmEzKRu2kPSwjurYJOHNCksU6mn3Po0zP8hxuUWaucnnZem3iAuhCpjoVqZk0E3Kdu0ap4sMEG7J3fY2PW/j+EJsvUl72q+DYVM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1569582741; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=S64EWXFUE7Ga7memGhUW/iX76R28tL/C5TMwj8pxdTA=; b=JxfIhf5sAH4qFrAgriNjztongw10stwkbCqGCueLIdgFxEg2AeAR3L+yFbwHUJrOumtqOxoRl/208aPCoOOYf4CC95QqSh2cOcNC9NE15p1aFR4sgNL7U55sMyT5FuHjcIIE+P+t2McksDv6xWlKrtpjXlLuMBuN7IPTB0JtgXk= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1569582741814210.46280585192164; Fri, 27 Sep 2019 04:12:21 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 114DDC02490A; Fri, 27 Sep 2019 11:12:20 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E2C705D9E1; Fri, 27 Sep 2019 11:12:19 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 9753883549; Fri, 27 Sep 2019 11:12:19 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x8RBCCTh028247 for ; Fri, 27 Sep 2019 07:12:12 -0400 Received: by smtp.corp.redhat.com (Postfix) id 51E7060F88; Fri, 27 Sep 2019 11:12:12 +0000 (UTC) Received: from domokun.gsslab.fab.redhat.com (dhcp-94.gsslab.fab.redhat.com [10.33.9.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9544760BF3; Fri, 27 Sep 2019 11:12:11 +0000 (UTC) From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Date: Fri, 27 Sep 2019 12:11:54 +0100 Message-Id: <20190927111158.20653-8-berrange@redhat.com> In-Reply-To: <20190927111158.20653-1-berrange@redhat.com> References: <20190927111158.20653-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-loop: libvir-list@redhat.com Cc: Pavel Hrdina Subject: [libvirt] [PATCH 07/11] build: use meson for building NSS modules X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Fri, 27 Sep 2019 11:12:20 +0000 (UTC) Switch over to using meson for building the two NSS modules Signed-off-by: Daniel P. Berrang=C3=A9 --- meson.build | 5 ++ tools/Makefile.am | 112 +----------------------------------------- tools/meson.build | 2 + tools/nss/meson.build | 63 ++++++++++++++++++++++++ 4 files changed, 72 insertions(+), 110 deletions(-) create mode 100644 tools/meson.build create mode 100644 tools/nss/meson.build diff --git a/meson.build b/meson.build index 1b9efde467..53ee9e331f 100644 --- a/meson.build +++ b/meson.build @@ -21,6 +21,7 @@ pkg_doc_dir =3D data_dir / 'doc' / meson.project_name() += '-' + meson.project_vers =20 public_inc_dir =3D include_directories('include') gnulib_inc_dir =3D include_directories('gnulib/lib') +top_inc_dir =3D include_directories('.') =20 cc =3D meson.get_compiler('c') =20 @@ -32,5 +33,9 @@ gnulib_dep =3D declare_dependency( =20 meson.add_dist_script('build-aux' / 'dist.py', meson.source_root(), meson.= build_root()) =20 +yajl_min_version =3D '>=3D 2.0.3' +yajl_dep =3D dependency('yajl', version: yajl_min_version) + subdir('src') subdir('examples') +subdir('tools') diff --git a/tools/Makefile.am b/tools/Makefile.am index 29fdbfe846..a294224a99 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -354,10 +354,10 @@ POD2MAN =3D pod2man -c "Virtualization Support" -r "$= (PACKAGE)-$(VERSION)" < $< > $@-t && \ mv $@-t $@ =20 -install-data-local: install-systemd install-nss \ +install-data-local: install-systemd \ install-bash-completion =20 -uninstall-local: uninstall-systemd uninstall-nss \ +uninstall-local: uninstall-systemd \ uninstall-bash-completion =20 install-sysconfig: @@ -470,114 +470,6 @@ wireshark/src/libvirt/protocol.h: wireshark/util/genx= drstub.pl \ =20 endif WITH_WIRESHARK_DISSECTOR =20 -if WITH_BSD_NSS -LIBVIRT_NSS_SYMBOL_FILE =3D \ - $(srcdir)/nss/libvirt_nss_bsd.syms -LIBVIRT_GUEST_NSS_SYMBOL_FILE =3D \ - $(LIBVIRT_NSS_SYMBOL_FILE) -NSS_SO_VER =3D 1 - -install-nss: - ( cd $(DESTDIR)$(libdir) && \ - rm -f nss_libvirt.so.$(NSS_SO_VER) && \ - $(LN_S) libnss_libvirt.so.$(NSS_SO_VER) nss_libvirt.so.$(NSS_SO_VER) &&= \ - rm -f nss_libvirt_guest.so.$(NSS_SO_VER) && \ - $(LN_S) libnss_libvirt_guest.so.$(NSS_SO_VER) \ - nss_libvirt_guest.so.$(NSS_SO_VER)) - -uninstall-nss: - -rm -f $(DESTDIR)$(libdir)/nss_libvirt.so.$(NSS_SO_VER) - -rm -f $(DESTDIR)$(libdir)/nss_libvirt_guest.so.$(NSS_SO_VER) -else ! WITH_BSD_NSS -LIBVIRT_NSS_SYMBOL_FILE =3D \ - $(srcdir)/nss/libvirt_nss.syms -LIBVIRT_GUEST_NSS_SYMBOL_FILE =3D \ - $(srcdir)/nss/libvirt_guest_nss.syms -NSS_SO_VER =3D 2 - -install-nss: -uninstall-nss: -endif ! WITH_BSD_NSS - -LIBVIRT_NSS_SOURCES =3D \ - nss/libvirt_nss.c \ - nss/libvirt_nss.h \ - nss/libvirt_nss_leases.c \ - nss/libvirt_nss_leases.h \ - $(NULL) - -if WITH_NSS -noinst_LTLIBRARIES +=3D nss/libnss_libvirt_impl.la -nss_libnss_libvirt_impl_la_SOURCES =3D \ - $(LIBVIRT_NSS_SOURCES) - -nss_libnss_libvirt_impl_la_CPPFLAGS =3D $(STANDALONE_CPPFLAGS) -nss_libnss_libvirt_impl_la_CFLAGS =3D \ - -DLIBVIRT_NSS \ - $(YAJL_CFLAGS) \ - $(AM_CFLAGS) \ - $(NULL) - -nss_libnss_libvirt_impl_la_LIBADD =3D \ - $(YAJL_LIBS) \ - $(NULL) - -nss_libnss_libvirt_la_SOURCES =3D -nss_libnss_libvirt_la_LDFLAGS =3D \ - $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_NSS_SYMBOL_FILE) \ - $(AM_LDFLAGS) \ - -module \ - -export-dynamic \ - -avoid-version \ - -shared \ - -shrext .so.$(NSS_SO_VER) - -nss_libnss_libvirt_la_LIBADD =3D \ - nss/libnss_libvirt_impl.la - -noinst_LTLIBRARIES +=3D nss/libnss_libvirt_guest_impl.la -nss_libnss_libvirt_guest_impl_la_SOURCES =3D \ - $(LIBVIRT_NSS_SOURCES) \ - nss/libvirt_nss_macs.h \ - nss/libvirt_nss_macs.c \ - $(NULL) - -nss_libnss_libvirt_guest_impl_la_CPPFLAGS =3D $(STANDALONE_CPPFLAGS) -nss_libnss_libvirt_guest_impl_la_CFLAGS =3D \ - -DLIBVIRT_NSS \ - -DLIBVIRT_NSS_GUEST \ - $(YAJL_CFLAGS) \ - $(AM_CFLAGS) \ - $(NULL) - -nss_libnss_libvirt_guest_impl_la_LIBADD =3D \ - $(YAJL_LIBS) \ - $(NULL) - -nss_libnss_libvirt_guest_la_SOURCES =3D -nss_libnss_libvirt_guest_la_LDFLAGS =3D \ - $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_GUEST_NSS_SYMBOL_FILE) \ - $(AM_LDFLAGS) \ - -module \ - -export-dynamic \ - -avoid-version \ - -shared \ - -shrext .so.$(NSS_SO_VER) - -nss_libnss_libvirt_guest_la_LIBADD =3D \ - nss/libnss_libvirt_guest_impl.la - -lib_LTLIBRARIES =3D \ - nss/libnss_libvirt.la \ - nss/libnss_libvirt_guest.la - -endif WITH_NSS - -EXTRA_DIST +=3D $(LIBVIRT_NSS_SOURCES) \ - $(srcdir)/nss/libvirt_nss.syms \ - $(srcdir)/nss/libvirt_nss_bsd.syms \ - $(srcdir)/nss/libvirt_guest_nss.syms - clean-local: -rm -rf wireshark/src/libvirt =20 diff --git a/tools/meson.build b/tools/meson.build new file mode 100644 index 0000000000..dd2da4adc7 --- /dev/null +++ b/tools/meson.build @@ -0,0 +1,2 @@ + +subdir('nss') diff --git a/tools/nss/meson.build b/tools/nss/meson.build new file mode 100644 index 0000000000..c21cfdfa9d --- /dev/null +++ b/tools/nss/meson.build @@ -0,0 +1,63 @@ + +if host_machine.system() =3D=3D 'freebsd' + with_nss =3D true + libnss_prefix =3D '' + libnss_so_version =3D '1' + libnss_syms =3D 'libvirt_nss_bsd.syms' + libnss_guest_syms =3D 'libvirt_nss_bsd.syms' +elif host_machine.system() =3D=3D 'linux' + with_nss =3D true + libnss_prefix =3D 'lib' + libnss_so_version =3D '2' + libnss_syms =3D 'libvirt_nss.syms' + libnss_guest_syms =3D 'libvirt_guest_nss.syms' +else + with_nss =3D false +endif + +if with_nss + libnss_common_src =3D [ + 'libvirt_nss.c', + 'libvirt_nss.h', + 'libvirt_nss_leases.c', + 'libvirt_nss_leases.h' + ] + + libnss_src =3D libnss_common_src + libnss_guest_src =3D libnss_common_src + [ + 'libvirt_nss_macs.c', + 'libvirt_nss_macs.h', + ] + + libnss_deps =3D [yajl_dep] + libnss_link_args =3D [ + '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), libn= ss_syms) + ] + libnss_guest_link_args =3D [ + '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), libn= ss_guest_syms) + ] + libnss_inc_dirs =3D [top_inc_dir] + + libnss_libvirt_so =3D shared_library('nss_libvirt', + libnss_src, + name_prefix: libnss_prefix, + version: libnss_so_version, + c_args: ['-DLIBVIRT_NSS'], + link_args: libnss_link_args, + dependencies: libnss_deps, + include_directories: libnss_inc_dirs, + link_depends: libnss_syms) + + libnss_libvirt_guest_so =3D shared_library('nss_libvirt_guest', + libnss_guest_src, + name_prefix: libnss_prefix, + version: libnss_so_version, + c_args: ['-DLIBVIRT_NSS', + '-DLIBVIRT_NSS_GUEST'], + link_args: libnss_guest_link_args, + dependencies: libnss_deps, + include_directories: libnss_inc_dirs, + link_depends: libnss_guest_syms) + + +endif --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list