nspr_4.29.bb 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. SUMMARY = "Netscape Portable Runtime Library"
  2. HOMEPAGE = "http://www.mozilla.org/projects/nspr/"
  3. LICENSE = "GPL-2.0 | MPL-2.0 | LGPL-2.1"
  4. LIC_FILES_CHKSUM = "file://configure.in;beginline=3;endline=6;md5=90c2fdee38e45d6302abcfe475c8b5c5 \
  5. file://Makefile.in;beginline=4;endline=38;md5=beda1dbb98a515f557d3e58ef06bca99"
  6. SECTION = "libs/network"
  7. SRC_URI = "http://ftp.mozilla.org/pub/nspr/releases/v${PV}/src/nspr-${PV}.tar.gz \
  8. file://remove-rpath-from-tests.patch \
  9. file://fix-build-on-x86_64.patch \
  10. file://remove-srcdir-from-configure-in.patch \
  11. file://0002-Add-nios2-support.patch \
  12. file://0001-md-Fix-build-with-musl.patch \
  13. file://Makefile.in-remove-_BUILD_STRING-and-_BUILD_TIME.patch \
  14. file://nspr.pc.in \
  15. "
  16. CACHED_CONFIGUREVARS_append_libc-musl = " CFLAGS='${CFLAGS} -D_PR_POLL_AVAILABLE \
  17. -D_PR_HAVE_OFF64_T -D_PR_INET6 -D_PR_HAVE_INET_NTOP \
  18. -D_PR_HAVE_GETHOSTBYNAME2 -D_PR_HAVE_GETADDRINFO \
  19. -D_PR_INET6_PROBE -DNO_DLOPEN_NULL'"
  20. UPSTREAM_CHECK_URI = "http://ftp.mozilla.org/pub/nspr/releases/"
  21. UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+)/"
  22. SRC_URI[md5sum] = "a546926d3c8e887be02c668c1293da92"
  23. SRC_URI[sha256sum] = "22286bdb8059d74632cc7c2865c139e63953ecfb33bf4362ab58827e86e92582"
  24. CVE_PRODUCT = "netscape_portable_runtime"
  25. S = "${WORKDIR}/nspr-${PV}/nspr"
  26. RDEPENDS_${PN}-dev += "perl"
  27. TARGET_CC_ARCH += "${LDFLAGS}"
  28. TESTS = " \
  29. accept \
  30. acceptread \
  31. acceptreademu \
  32. affinity \
  33. alarm \
  34. anonfm \
  35. atomic \
  36. attach \
  37. bigfile \
  38. cleanup \
  39. cltsrv \
  40. concur \
  41. cvar \
  42. cvar2 \
  43. dlltest \
  44. dtoa \
  45. errcodes \
  46. exit \
  47. fdcach \
  48. fileio \
  49. foreign \
  50. formattm \
  51. fsync \
  52. gethost \
  53. getproto \
  54. i2l \
  55. initclk \
  56. inrval \
  57. instrumt \
  58. intrio \
  59. intrupt \
  60. io_timeout \
  61. ioconthr \
  62. join \
  63. joinkk \
  64. joinku \
  65. joinuk \
  66. joinuu \
  67. layer \
  68. lazyinit \
  69. libfilename \
  70. lltest \
  71. lock \
  72. lockfile \
  73. logfile \
  74. logger \
  75. many_cv \
  76. multiwait \
  77. nameshm1 \
  78. nblayer \
  79. nonblock \
  80. ntioto \
  81. ntoh \
  82. op_2long \
  83. op_excl \
  84. op_filnf \
  85. op_filok \
  86. op_nofil \
  87. parent \
  88. parsetm \
  89. peek \
  90. perf \
  91. pipeping \
  92. pipeping2 \
  93. pipeself \
  94. poll_nm \
  95. poll_to \
  96. pollable \
  97. prftest \
  98. primblok \
  99. provider \
  100. prpollml \
  101. ranfile \
  102. randseed \
  103. reinit \
  104. rwlocktest \
  105. sel_spd \
  106. selct_er \
  107. selct_nm \
  108. selct_to \
  109. selintr \
  110. sema \
  111. semaerr \
  112. semaping \
  113. sendzlf \
  114. server_test \
  115. servr_kk \
  116. servr_uk \
  117. servr_ku \
  118. servr_uu \
  119. short_thread \
  120. sigpipe \
  121. socket \
  122. sockopt \
  123. sockping \
  124. sprintf \
  125. stack \
  126. stdio \
  127. str2addr \
  128. strod \
  129. switch \
  130. system \
  131. testbit \
  132. testfile \
  133. threads \
  134. timemac \
  135. timetest \
  136. tpd \
  137. udpsrv \
  138. vercheck \
  139. version \
  140. writev \
  141. xnotify \
  142. zerolen"
  143. inherit autotools multilib_script
  144. MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/nspr-config"
  145. PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
  146. PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
  147. # Do not install nspr in usr/include, but in usr/include/nspr, the
  148. # preferred path upstream.
  149. EXTRA_OECONF += "--includedir=${includedir}/nspr"
  150. do_compile_prepend() {
  151. oe_runmake CROSS_COMPILE=1 CFLAGS="-DXP_UNIX ${BUILD_CFLAGS}" LDFLAGS="" CC="${BUILD_CC}" -C config export
  152. }
  153. do_compile_append() {
  154. oe_runmake -C pr/tests
  155. }
  156. do_install_append() {
  157. install -D ${WORKDIR}/nspr.pc.in ${D}${libdir}/pkgconfig/nspr.pc
  158. sed -i \
  159. -e 's:NSPRVERSION:${PV}:g' \
  160. -e 's:OEPREFIX:${prefix}:g' \
  161. -e 's:OELIBDIR:${libdir}:g' \
  162. -e 's:OEINCDIR:${includedir}:g' \
  163. -e 's:OEEXECPREFIX:${exec_prefix}:g' \
  164. ${D}${libdir}/pkgconfig/nspr.pc
  165. mkdir -p ${D}${libdir}/nspr/tests
  166. install -m 0755 ${S}/pr/tests/runtests.pl ${D}${libdir}/nspr/tests
  167. install -m 0755 ${S}/pr/tests/runtests.sh ${D}${libdir}/nspr/tests
  168. cd ${B}/pr/tests
  169. install -m 0755 ${TESTS} ${D}${libdir}/nspr/tests
  170. # delete compile-et.pl and perr.properties from ${bindir} because these are
  171. # only used to generate prerr.c and prerr.h files from prerr.et at compile
  172. # time
  173. rm ${D}${bindir}/compile-et.pl ${D}${bindir}/prerr.properties
  174. }
  175. FILES_${PN} = "${libdir}/lib*.so"
  176. FILES_${PN}-dev = "${bindir}/* ${libdir}/nspr/tests/* ${libdir}/pkgconfig \
  177. ${includedir}/* ${datadir}/aclocal/* "
  178. BBCLASSEXTEND = "native nativesdk"