[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XEN PATCH for-4.17 v5 10/17] libs: Fix auto-generation of version-script for unstable libs


  • To: Anthony Perard <anthony.perard@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Andrew Cooper <Andrew.Cooper3@xxxxxxxxxx>
  • Date: Fri, 14 Oct 2022 18:16:27 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=uIONNLrXBpAeoEaP+No6PhZbzwu4shbsAq2JsBllwwU=; b=Uo4CQLyV/VUE+qEdKkuVi05ZDOq45B1NT7EcHJgFymZAKn+kh62Oc0+a5gEoYcofblA0qHWNTjpBsVeDaA3Ea/wrELltpdTakgHR4XPURebmBU9Wn7rE3qYZW13k7wEVmdM2Y+cQbvNmUwaHTimE2pvexLJlcV6DjEPiHH4I0hqH/HDWpPmrFU3QUZ9oUFUPFqmpHq6i1b9xFvqT2B4AGQZ2ILhxzLz7EOVMWKkkcpE3uW8jUzvb++VNMJjpgZb/J7WHdiyZ9kI8xBa3jQ/0pTZZEsCLD1gmr7nGrm+09aCHMr1Z5QzKat7v2Q4Zl9hVUlkjPUNZSR7bq4QlyYhaIQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SlUKrPbsk+YijX+B+1ohxyctAmTR1TNlqc2YmWKw06JOeQnT7z6NNBYci4DPFOBQbE9cPS+G+jjliLBCNjCRR36SdCUmvie92qBULQVinaC/wdIIfN05czqbtfAHgm4aB2j1h8C49+uB/INFEh2tgH8qviFvL6gGSmsjGNggSsfbAGZgn8Yaii9/jOd3I+fherbN9JdJqp7+nh3J2X6GXybQU98AUyDaLFqRN9ijCbTtsIE1I3TKgodA4MAWkbDsqDaEEZ+EapRKR33IYQ3w4RMmKgOPqRykLz1DUPk2cxGOof5htxel+IRtdlkjaS6tKZRvqU0PoKAj0m6CZk5plw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: George Dunlap <George.Dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Juergen Gross <jgross@xxxxxxxx>
  • Delivery-date: Fri, 14 Oct 2022 18:16:39 +0000
  • Ironport-data: A9a23:h+3oSqxTasGdesSa/Yd6t+fpxyrEfRIJ4+MujC+fZmUNrF6WrkVSy jdMD2GOafnZMzb8e9B0Odm+pE4P7ZHQy4cwGQU4/yAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHPykYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbyRFtspvlDs15K6o4WtB4gRiDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwwvp8DGZI0 fsiOiEETwmRpt6fmoOkRbw57igjBJGD0II3nFhFlGucKMl8BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTL++xrswA/zyQouFTpGPPTdsaHWoN+mUGAq 3id12/4HgsbJJqUzj/tHneE1rSWzXyqBdN6+LuQ59JW3nORlk8qFxwvZVHlvaiet1zgYocKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z VLPlNTsbRRtrbmURHS15rqS6zSoNkA9NnQebCUJSQ8E5djLo4wpiB/LCNF5H8adkdndCTz2h TeQo0AWhboJitUQ/76m5l2BiDWpzqUlVSYw7wTTG2e6tAVwYdf/Y5TysQSLq/FdMIyeU1+N+ mAenNST5/wPCpfLkzGRROIKH/ei4PPt3CDgvGOD1qIJr1yFk0NPt6gKiN2iDC+F6vo5RAI=
  • Ironport-hdrordr: A9a23:RP9Gi6NybBfppcBcT2L155DYdb4zR+YMi2TDiHoddfUFSKalfp 6V98jzjSWE8wr4WBkb6LO90DHpewKQyXcH2/hqAV7EZnirhILIFvAp0WKG+VHd8kLFh4lgPM tbEpSWTeeAdWSS7vyKrzVQcexQpuVvmZrA7Yix854ud3ASV0gK1XYaNu/vKDwTeOAwP+tdKH Pz3Kp6jgvlXU5SQtWwB3EDUeSGjcbMjojabRkPAANiwBWSjBuzgYSKUiSw71M7aXdi0L0i+W /Kn0jS/aO4qcy2zRfayiv684lWot380dFObfb8yvT9aw+cyTpAVr4RHoFqjwpF5N1HL2xa1+ Ukli1QffibLUmhOF1d7yGdgjUImwxelkMKgWXo/UcL5/aJCg7SQvAx+76wOHHimjUdlcA536 RR022DsZ1LSRvGgSTm/tDNEwpnj0yuvBMZ4KcuZlFkIPwjgYVq3Poi1VIQFI1FEDPx6YghHu UrBMbA5OxOeVffa3zCpGFgzNGlQ3x2R369MwM/k93Q1yITkGFyzkMeysBalnAc9IglQ50B4+ jfKKxnmLxHU8dTZ6NgA+UKR9exFwX2MFrxGXPXJU6iGLAMOnrLpZKy6LIp5PuycJhN15c2kI SpaiItiYfzQTOaNSSj5uw5zvmWehTNYd3E8LAv27Fp/rvhWbHsLSqPDFgzjsrImYRsPvHm
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHY3wSN2AAamVElMkOHboggsVYl7a4ONB2A
  • Thread-topic: [XEN PATCH for-4.17 v5 10/17] libs: Fix auto-generation of version-script for unstable libs

On 13/10/2022 14:05, Anthony Perard wrote:
> When there isn't a version-script for a shared library (like for
> unstable libs), we create one based on the current Xen version. But
> that version-script became out-of-date as soon as Xen's version
> changes and make as no way to regenerate the version-script on
> rebuild.
>
> In order to allow regenerating the script, we'll have a different
> filename. In order to check if the content is up-to-date, we'll always
> generated it and compare.
>
> But we also need to know if there's already an existing version script
> or if we need to generate one, for that we introduce $(version-script)
> to be used to point to the path of the existing script. (Guessing if a
> version script exist for a stable library with for example $(wildcard)
> won't work as a file will exist when building the library without this
> patch.)
>
> We don't need the version-script unless we are making the shared
> library so it is removed from the "all" target.
>
> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> ---
>
> Alternatively, we could remove the need for to generate a
> version-script, but that would mean the exported symbols won't have a
> version anymore (like before, a few versions of Xen ago). Or, we could
> use --default-symver, but the symboled would be versionned with the
> soname (e.g. "libxenctrl.so.4.16.0") instead of "VERS_4.16.0".

It turns out that the use of VERS_* everywhere is buggy.  We should have
had 'XEN$FOO' in the soname for libraries.  But it's too late for the
stable ones.

As far as the unstable libraries go, it really doesn't matter.  The only
thing we care about (rightly or wrongly) is that you can't mistake the
libraries from different versions of Xen.

--default-symver sounds like it would be ideal, and avoid writing out
temporary version scripts.

~Andrew

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.