deb-symbols.5 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. .\" dpkg manual page - deb-symbols(5)
  2. .\"
  3. .\" Copyright © 2007-2012 Raphaël Hertzog <hertzog@debian.org>
  4. .\" Copyright © 2011, 2013-2015 Guillem Jover <guillem@debian.org>
  5. .\"
  6. .\" This is free software; you can redistribute it and/or modify
  7. .\" it under the terms of the GNU General Public License as published by
  8. .\" the Free Software Foundation; either version 2 of the License, or
  9. .\" (at your option) any later version.
  10. .\"
  11. .\" This is distributed in the hope that it will be useful,
  12. .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. .\" GNU General Public License for more details.
  15. .\"
  16. .\" You should have received a copy of the GNU General Public License
  17. .\" along with this program. If not, see <https://www.gnu.org/licenses/>.
  18. .
  19. .TH deb\-symbols 5 "2011-08-14" "Debian Project" "dpkg utilities"
  20. .SH NAME
  21. deb\-symbols \- Debian's extended shared library information file
  22. .
  23. .SH SYNOPSIS
  24. symbols
  25. .
  26. .SH DESCRIPTION
  27. The format for an extended shared library dependency information entry
  28. in these files is:
  29. .PP
  30. .I library-soname main-dependency-template
  31. .br
  32. [| \fIalternative-dependency-template\fP]
  33. .br
  34. [...]
  35. .br
  36. [* \fIfield-name\fP: \fIfield-value\fP]
  37. .br
  38. [...]
  39. \fIsymbol\fP \fIminimal-version\fP [\fIid-of-dependency-template\fP]
  40. .P
  41. The \fIlibrary-soname\fR is exactly the value of the SONAME field
  42. as exported by \fBobjdump\fR(1). A \fIdependency-template\fR is a
  43. dependency where \fI#MINVER#\fR is dynamically replaced either by
  44. a version check like \(lq(>= \fIminimal-version\fR)\(rq or by nothing (if
  45. an unversioned dependency is deemed sufficient).
  46. .P
  47. Each exported \fIsymbol\fR (listed as \fIname\fR@\fIversion\fR, with
  48. \fIversion\fR being \(lqBase\(rq if the library is not versioned) is associated
  49. to a \fIminimal-version\fR of its dependency template (the main dependency
  50. template is always used and will end up being combined with the dependency
  51. template referenced by \fIid-of-dependency-template\fR if present). The
  52. first alternative dependency template is numbered 1, the second one 2,
  53. etc.
  54. .P
  55. Each entry for a library can also have some fields of meta-information.
  56. Those fields are stored on lines starting with an asterisk. Currently,
  57. the only valid fields are:
  58. .TP
  59. .B Build\-Depends\-Package
  60. It indicates the name of the \(lq\-dev\(rq package associated to the library
  61. and is used by \fBdpkg\-shlibdeps\fP to make sure that the dependency
  62. generated is at least as strict as the corresponding build dependency
  63. (since dpkg 1.14.13).
  64. .TP
  65. .B Ignore\-Blacklist\-Groups
  66. It indicates what blacklist groups should be ignored, as a whitespace
  67. separated list, so that the symbols contained in those groups get
  68. included in the output file (since dpkg 1.17.6).
  69. This should only be necessary for toolchain
  70. packages providing those blacklisted symbols. The available groups are
  71. system dependent, for ELF and GNU-based systems these are \fBaeabi\fP
  72. and \fBgomp\fP.
  73. .SH EXAMPLES
  74. .SS Simple symbols file
  75. .PP
  76. libftp.so.3 libftp3 #MINVER#
  77. DefaultNetbuf@Base 3.1-1-6
  78. FtpAccess@Base 3.1-1-6
  79. [...]
  80. .SS Advanced symbols file
  81. .PP
  82. libGL.so.1 libgl1
  83. .br
  84. | libgl1\-mesa\-glx #MINVER#
  85. .br
  86. * Build\-Depends\-Package: libgl1\-mesa\-dev
  87. publicGlSymbol@Base 6.3-1
  88. [...]
  89. implementationSpecificSymbol@Base 6.5.2-7 1
  90. [...]
  91. .SH SEE ALSO
  92. .BR https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps
  93. .br
  94. .BR dpkg\-shlibdeps (1),
  95. .BR dpkg\-gensymbols (1).