libboost-vl.spec 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670
  1. %define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
  2. %define _unpackaged_files_terminate_build 1
  3. # Support for documentation installation As the %%doc macro erases the
  4. # target directory ($RPM_BUILD_ROOT%%{_docdir}/%%{name}), manually
  5. # installed documentation must be saved into a temporary dedicated
  6. # directory.
  7. # XXX note that as of rpm 4.9.1, this shouldn't be necessary anymore.
  8. # We should be able to install directly.
  9. %global boost_docdir __tmp_docdir
  10. %global boost_examplesdir __tmp_examplesdir
  11. %bcond_without context
  12. %bcond_without python3
  13. %bcond_with mpich
  14. %bcond_with openmpi
  15. %define major 1
  16. %define minor 66
  17. %define teeny 0
  18. %define tarname boost
  19. %define lnkver %{major}_%{minor}
  20. %define pkgver %{major}_%{minor}_%{teeny}
  21. %ifnarch %{ix86} x86_64
  22. # Avoid using Boost.Context on non-x86 arches. s390 is not
  23. # supported at all and there were _syntax errors_ in PPC code. This
  24. # should be enabled on a case-by-case basis as the arches are tested
  25. # and fixed.
  26. %bcond_with context
  27. %else
  28. %bcond_without context
  29. %endif
  30. Summary: Portable C++ source libraries
  31. Summary(ja): ポータブルな C++ ソースライブラリ
  32. Name: libboost
  33. Version: %{major}.%{minor}.%{teeny}
  34. Release: 2%{?_dist_release}
  35. Source0: http://downloads.sourceforge.net/%{tarname}/%{tarname}_%{pkgver}.tar.bz2
  36. Source1: ver.py
  37. Source2: libboost_thread.so
  38. License: distributable
  39. Group: System Environment/Libraries
  40. URL: http://www.boost.org/
  41. BuildRequires: python-devel apache2-devel bzip2-devel zlib-devel libicu-devel
  42. BuildRequires: libaio-devel lam
  43. BuildRequires: libquadmath-devel
  44. %if %{with python3}
  45. BuildRequires: python3-devel
  46. %endif
  47. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  48. # https://svn.boost.org/trac/boost/ticket/6150
  49. Patch4: boost-1.50.0-fix-non-utf8-files.patch
  50. # Add a manual page for bjam, based on the on-line documentation:
  51. # http://www.boost.org/boost-build2/doc/html/bbv2/overview.html
  52. Patch5: boost-1.48.0-add-bjam-man-page.patch
  53. # https://bugzilla.redhat.com/show_bug.cgi?id=828856
  54. # https://bugzilla.redhat.com/show_bug.cgi?id=828857
  55. # https://svn.boost.org/trac/boost/ticket/6701
  56. Patch15: boost-1.58.0-pool.patch
  57. # https://svn.boost.org/trac/boost/ticket/5637
  58. Patch25: boost-1.57.0-mpl-print.patch
  59. # https://svn.boost.org/trac/boost/ticket/9038
  60. Patch51: boost-1.58.0-pool-test_linking.patch
  61. # https://bugzilla.redhat.com/show_bug.cgi?id=1102667
  62. Patch61: boost-1.57.0-python-libpython_dep.patch
  63. Patch62: boost-1.57.0-python-abi_letters.patch
  64. # https://bugzilla.redhat.com/show_bug.cgi?id=1190039
  65. Patch65: boost-1.66.0-build-optflags.patch
  66. # Prevent gcc.jam from setting -m32 or -m64.
  67. Patch68: boost-1.58.0-address-model.patch
  68. # https://bugzilla.redhat.com/show_bug.cgi?id=1318383
  69. Patch82: boost-1.60.0-no-rpath.patch
  70. Vendor: Project Vine
  71. Distribution: Vine Linux
  72. Obsoletes: %{name}-date-time-devel %{name}-filesystem-devel %{name}-graph-devel
  73. Obsoletes: %{name}-iostreams-devel %{name}-program-options-devel
  74. Obsoletes: %{name}-python-devel %{name}-regex-devel
  75. Obsoletes: %{name}-serialization-devel %{name}-signals-devel %{name}-test-devel
  76. Obsoletes: %{name}-thread-devel %{name}-wave-devel
  77. %description
  78. Boost provides free peer-reviewed portable C++ source libraries. The emphasis
  79. is on libraries which work well with the C++ Standard Library. The libraries
  80. are intended to be widely useful, and are in regular use by thousands of
  81. programmers across a broad spectrum of applications.
  82. A further goal is to establish "existing practice" and provide reference
  83. implementations so that Boost libraries are suitable for eventual
  84. standardization. Ten Boost libraries will be included in the C++ Standards
  85. Committee's upcoming C++ Standard Library Technical Report as a step toward
  86. becoming part of a future C++ Standard.
  87. %description -l ja
  88. Boost は公開レビューされたフリーのC++ライブラリ群です。 C++ の標準ライブラリに
  89. 準拠することに重点を置いて開発されています。使いやすく、広い分野のアプリ
  90. ケーションにおいて日常的に多くの開発者に用いられることを目指しています。
  91. さらなる目標は、最終的な標準化に適合した「存在する実例」としてリファレンス実装
  92. を提供することです。10 の Boost ライブラリが、将来の C++ 標準になるための一歩
  93. として、C++ 標準化委員会が策定中の C++ 標準ライブラリテクニカルレポートに
  94. 含まれる予定です。
  95. %package atomic
  96. Summary: Run-Time component of boost atomic library
  97. Group: System Environment/Libraries
  98. %description atomic
  99. Run-Time support for Boost.Atomic, a library that provides atomic data
  100. types and operations on these data types, as well as memory ordering
  101. constraints required for coordinating multiple threads through atomic
  102. variables.
  103. %package chrono
  104. Summary: Run-Time component of boost chrono library
  105. Group: System Environment/Libraries
  106. Requires: %{name}-system = %{version}-%{release}
  107. %description chrono
  108. Run-Time support for Boost.Chrono, a set of useful time utilities.
  109. %package container
  110. Summary: Run-Time component of boost container library
  111. Group: System Environment/Libraries
  112. Requires: %{name} = %{version}-%{release}
  113. %description container
  114. Boost.Container library implements several well-known containers,
  115. including STL containers. The aim of the library is to offers advanced
  116. features not present in standard containers or to offer the latest
  117. standard draft features for compilers that comply with C++03.
  118. %if %{with context}
  119. %package context
  120. Summary: Run-Time component of boost context switching library
  121. Group: System Environment/Libraries
  122. Requires: %{name} = %{version}-%{release}
  123. %description context
  124. Run-Time support for Boost.Context, a foundational library that
  125. provides a sort of cooperative multitasking on a single thread.
  126. %package coroutine
  127. Summary: Run-Time component of boost coroutine library
  128. Group: System Environment/Libraries
  129. Requires: %{name} = %{version}-%{release}
  130. %description coroutine
  131. Run-Time support for Boost.Coroutine, a library that provides
  132. generalized subroutines which allow multiple entry points for
  133. suspending and resuming execution.
  134. %endif
  135. %package date-time
  136. Summary: Set of data-time libralies in %{name}
  137. Group: System Environment/Libraries
  138. Requires: %{name} = %{version}-%{release}
  139. %description date-time
  140. Set of data-time libralies in %{name}
  141. %package filesystem
  142. Summary: Set of filesystem operation libralies in %{name}
  143. Group: System Environment/Libraries
  144. Requires: %{name} = %{version}-%{release}
  145. %description filesystem
  146. Set of filesystem operation libralies in %{name}
  147. %package graph
  148. Summary: Set of Graphviz libralies in %{name}
  149. Group: System Environment/Libraries
  150. Requires: %{name} = %{version}-%{release}
  151. %description graph
  152. Set of Graphviz libralies in %{name}
  153. %package iostreams
  154. Summary: Set of streams and i/o filters libralies in %{name}
  155. Group: System Environment/Libraries
  156. Requires: %{name} = %{version}-%{release}
  157. %description iostreams
  158. Set of streams and i/o filters libralies in %{name}
  159. %package locale
  160. Summary: Run-Time component of boost locale library
  161. Group: System Environment/Libraries
  162. Requires: %{name}-chrono = %{version}-%{release}
  163. Requires: %{name}-system = %{version}-%{release}
  164. Requires: %{name}-thread = %{version}-%{release}
  165. %description locale
  166. Run-Time support for Boost.Locale, a set of localization and Unicode
  167. handling tools.
  168. %package log
  169. Summary: Run-Time component of boost logging library
  170. Group: System Environment/Libraries
  171. %description log
  172. Boost.Log library aims to make logging significantly easier for the
  173. application developer. It provides a wide range of out-of-the-box
  174. tools along with public interfaces for extending the library.
  175. %package math
  176. Summary: Set of math libralies in %{name}
  177. Group: System Environment/Libraries
  178. Requires: %{name} = %{version}-%{release}
  179. %description math
  180. Set of math libralies in %{name}
  181. %package program-options
  182. Summary: Set of program options libralies in %{name}
  183. Group: System Environment/Libraries
  184. Requires: %{name} = %{version}-%{release}
  185. %description program-options
  186. Set of program options libralies in %{name}
  187. %package python
  188. Summary: Set of Python libralies in %{name}
  189. Group: System Environment/Libraries
  190. Requires: %{name} = %{version}-%{release}
  191. %description python
  192. Set of Python libralies in %{name}
  193. %if %{with python3}
  194. %package python3
  195. Summary: Run-Time component of boost python library for Python 3
  196. Group: System Environment/Libraries
  197. %description python3
  198. The Boost Python Library is a framework for interfacing Python and
  199. C++. It allows you to quickly and seamlessly expose C++ classes,
  200. functions and objects to Python, and vice versa, using no special
  201. tools -- just your C++ compiler. This package contains run-time
  202. support for Boost Python Library compiled for Python 3.
  203. %package python3-devel
  204. Summary: Shared object symbolic links for Boost.Python 3
  205. Group: System Environment/Libraries
  206. Requires: %{name}-python3 = %{version}-%{release}
  207. Requires: %{name}-devel = %{version}-%{release}
  208. %description python3-devel
  209. Shared object symbolic links for Python 3 variant of Boost.Python.
  210. %endif
  211. %package random
  212. Summary: Set of random number generation libralies in %{name}
  213. Group: System Environment/Libraries
  214. Requires: %{name} = %{version}-%{release}
  215. %description random
  216. Set of random number generation libralies in %{name}
  217. %package regex
  218. Summary: Set of regular expression libralies in %{name}
  219. Group: System Environment/Libraries
  220. Requires: %{name} = %{version}-%{release}
  221. %description regex
  222. Set of regular expression libralies in %{name}
  223. %package serialization
  224. Summary: Set of serialization libralies in %{name}
  225. Group: System Environment/Libraries
  226. Requires: %{name} = %{version}-%{release}
  227. %description serialization
  228. Set of serialization libralies in %{name}
  229. %package signals
  230. Summary: Set of signals and slots libralies in %{name}
  231. Group: System Environment/Libraries
  232. Requires: %{name} = %{version}-%{release}
  233. %description signals
  234. Set of signals and slots libralies in %{name}
  235. %package stacktrace
  236. Summary: Call-stack libraries in %{name}
  237. Group: System Environment/Libraries
  238. Requires: %{name} = %{version}-%{release}
  239. %description stacktrace
  240. simple C++03 library that provides information about call sequence in a
  241. human-readable form
  242. %package system
  243. Summary: Operating system support
  244. Group: System Environment/Libraries
  245. Requires: %{name} = %{version}-%{release}
  246. %description system
  247. Operating system support, including the diagnostics support
  248. that will be part of the C++0x standard library
  249. %package test
  250. Summary: Set of libraries for writing and executing tests in %{name}
  251. Group: System Environment/Libraries
  252. Requires: %{name} = %{version}-%{release}
  253. %description test
  254. Set of libraries for writing and executing tests in %{name}
  255. %package thread
  256. Summary: Set of multi-thread libraries in %{name}
  257. Group: System Environment/Libraries
  258. Requires: %{name} = %{version}-%{release}
  259. %description thread
  260. Set of multi-thread libraries in %{name}
  261. %package timer
  262. Summary: Run-Time component of boost timer library
  263. Group: System Environment/Libraries
  264. Requires: %{name}-chrono = %{version}-%{release}
  265. Requires: %{name}-system = %{version}-%{release}
  266. %description timer
  267. "How long does my C++ code take to run?"
  268. The Boost Timer library answers that question and does so portably,
  269. with as little as one #include and one additional line of code.
  270. %package type_erasure
  271. Summary: Run-Time component of boost type erasure library
  272. Group: System Environment/Libraries
  273. Requires: %{name}-chrono = %{version}-%{release}
  274. Requires: %{name}-system = %{version}-%{release}
  275. %description type_erasure
  276. The Boost.TypeErasure library provides runtime polymorphism in C++
  277. that is more flexible than that provided by the core language.
  278. %package wave
  279. Summary: Set of wave libraries in %{name}
  280. Group: System Environment/Libraries
  281. Requires: %{name} = %{version}-%{release}
  282. %description wave
  283. Set of wave libraries in %{name}
  284. %package devel
  285. Summary: Header files and libraries for developing apps which will use %{name}
  286. Summary(ja): %{name}の開発に必要なヘッダファイル及びライブラリ
  287. Group: Development/Libraries
  288. Requires: %{name} = %{version}-%{release}
  289. Requires: libicu-devel
  290. Requires: libquadmath-devel
  291. %description devel
  292. The %{name}-devel package contains the header files and libraries needed
  293. to develop programs that use the Boost library.
  294. %description devel -l ja
  295. %{name}-devel パッケージは Boost ライブラリを使うプログラムの開発に必要な
  296. ヘッダファイルやライブラリを含んでいます。
  297. %package doc
  298. Summary: Documents of %{name}
  299. Summary(ja): %{name}のドキュメント
  300. Group: Applications/Documentation
  301. Requires: %{name} = %{version}-%{release}
  302. %description doc
  303. The %{name}-doc package contains the documents about the boost library.
  304. %description doc -l ja
  305. %{name}-doc パッケージは Boost ライブラリについてのドキュメントを含んでいます。
  306. %package build
  307. Summary: Cross platform build system for C++ projects
  308. Group: Development/Tools
  309. Requires: %{name}-jam
  310. BuildArch: noarch
  311. %description build
  312. Boost.Build is an easy way to build C++ projects, everywhere. You name
  313. your pieces of executable and libraries and list their sources. Boost.Build
  314. takes care about compiling your sources with the right options,
  315. creating static and shared libraries, making pieces of executable, and other
  316. chores -- whether you're using GCC, MSVC, or a dozen more supported
  317. C++ compilers -- on Windows, OSX, Linux and commercial UNIX systems.
  318. %package doctools
  319. Summary: Tools for working with Boost documentation
  320. Group: Applications/Publishing
  321. Requires: docbook-dtds
  322. Requires: docbook-style-xsl
  323. %description doctools
  324. Tools for working with Boost documentation in BoostBook or QuickBook format.
  325. %package jam
  326. Summary: A low-level build tool
  327. Group: Development/Tools
  328. %description jam
  329. Boost.Jam (BJam) is the low-level build engine tool for Boost.Build.
  330. Historically, Boost.Jam is based on on FTJam and on Perforce Jam but has grown
  331. a number of significant features and is now developed independently
  332. %if %{with openmpi}
  333. %package openmpi
  334. Summary: Run-Time component of Boost.MPI library
  335. Group: System Environment/Libraries
  336. BuildRequires: openmpi-devel
  337. Requires: %{name}-serialization = %{version}-%{release}
  338. %description openmpi
  339. Run-Time support for Boost.MPI-OpenMPI, a library providing a clean C++
  340. API over the OpenMPI implementation of MPI.
  341. %package openmpi-python
  342. Summary: Python run-time component of Boost.MPI library
  343. Group: System Environment/Libraries
  344. Requires: %{name}-openmpi%{?_isa} = %{version}-%{release}
  345. Requires: %{name}-python%{?_isa} = %{version}-%{release}
  346. Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
  347. %description openmpi-python
  348. Python support for Boost.MPI-OpenMPI, a library providing a clean C++
  349. API over the OpenMPI implementation of MPI.
  350. %package graph-openmpi
  351. Summary: Run-Time component of parallel boost graph library
  352. Group: System Environment/Libraries
  353. Requires: %{name}-openmpi%{?_isa} = %{version}-%{release}
  354. Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
  355. %description graph-openmpi
  356. Run-Time support for the Parallel BGL graph library. The interface and
  357. graph components are generic, in the same sense as the the Standard
  358. Template Library (STL). This libraries in this package use OpenMPI
  359. back-end to do the parallel work.
  360. %endif
  361. %if %{with mpich}
  362. %package mpich
  363. Summary: Run-Time component of Boost.MPI library
  364. Group: System Environment/Libraries
  365. BuildRequires: mpich-devel
  366. Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
  367. Provides: boost-mpich2 = %{version}-%{release}
  368. Obsoletes: boost-mpich2 < 1.53.0-9
  369. %description mpich
  370. Run-Time support for Boost.MPI-MPICH, a library providing a clean C++
  371. API over the MPICH implementation of MPI.
  372. %package mpich-python
  373. Summary: Python run-time component of Boost.MPI library
  374. Group: System Environment/Libraries
  375. Requires: %{name}-mpich%{?_isa} = %{version}-%{release}
  376. Requires: %{name}-python%{?_isa} = %{version}-%{release}
  377. Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
  378. Provides: boost-mpich2-python = %{version}-%{release}
  379. Obsoletes: boost-mpich2-python < 1.53.0-9
  380. %description mpich-python
  381. Python support for Boost.MPI-MPICH, a library providing a clean C++
  382. API over the MPICH implementation of MPI.
  383. %package graph-mpich
  384. Summary: Run-Time component of parallel boost graph library
  385. Group: System Environment/Libraries
  386. Requires: %{name}-mpich%{?_isa} = %{version}-%{release}
  387. Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
  388. Provides: boost-graph-mpich2 = %{version}-%{release}
  389. Obsoletes: boost-graph-mpich2 < 1.53.0-9
  390. %description graph-mpich
  391. Run-Time support for the Parallel BGL graph library. The interface and
  392. graph components are generic, in the same sense as the the Standard
  393. Template Library (STL). This libraries in this package use MPICH
  394. back-end to do the parallel work.
  395. %endif
  396. #### compat32 packages ####
  397. %package -n compat32-%{name}-atomic
  398. Summary: Run-Time component of boost atomic library
  399. Group: System Environment/Libraries
  400. %description -n compat32-%{name}-atomic
  401. Run-Time support for Boost.Atomic, a library that provides atomic data
  402. types and operations on these data types, as well as memory ordering
  403. constraints required for coordinating multiple threads through atomic
  404. variables.
  405. %package -n compat32-%{name}-chrono
  406. Summary: Run-Time component of boost chrono library
  407. Group: System Environment/Libraries
  408. Requires: compat32-%{name}-system = %{version}-%{release}
  409. %description -n compat32-%{name}-chrono
  410. Run-Time support for Boost.Chrono, a set of useful time utilities.
  411. %package -n compat32-%{name}-container
  412. Summary: Run-Time component of boost container library
  413. Group: System Environment/Libraries
  414. %description -n compat32-%{name}-container
  415. Boost.Container library implements several well-known containers,
  416. including STL containers. The aim of the library is to offers advanced
  417. features not present in standard containers or to offer the latest
  418. standard draft features for compilers that comply with C++03.
  419. %if %{with context}
  420. %package -n compat32-%{name}-context
  421. Summary: Run-Time component of boost context switching library
  422. Group: System Environment/Libraries
  423. %description -n compat32-%{name}-context
  424. Run-Time support for Boost.Context, a foundational library that
  425. provides a sort of cooperative multitasking on a single thread.
  426. %package -n compat32-%{name}-coroutine
  427. Summary: Run-Time component of boost coroutine library
  428. Group: System Environment/Libraries
  429. %description -n compat32-%{name}-coroutine
  430. Run-Time support for Boost.Coroutine, a library that provides
  431. generalized subroutines which allow multiple entry points for
  432. suspending and resuming execution.
  433. %endif
  434. %package -n compat32-%{name}-date-time
  435. Summary: Set of data-time libralies in %{name}
  436. Group: System Environment/Libraries
  437. %description -n compat32-%{name}-date-time
  438. Set of data-time libralies in %{name}
  439. %package -n compat32-%{name}-filesystem
  440. Summary: Set of filesystem operation libralies in %{name}
  441. Group: System Environment/Libraries
  442. %description -n compat32-%{name}-filesystem
  443. Set of filesystem operation libralies in %{name}
  444. %if 0
  445. %package -n compat32-%{name}-graph
  446. Summary: Set of Graphviz libralies in %{name}
  447. Group: System Environment/Libraries
  448. %description -n compat32-%{name}-graph
  449. Set of Graphviz libralies in %{name}
  450. %endif
  451. %package -n compat32-%{name}-iostreams
  452. Summary: Set of streams and i/o filters libralies in %{name}
  453. Group: System Environment/Libraries
  454. %description -n compat32-%{name}-iostreams
  455. Set of streams and i/o filters libralies in %{name}
  456. %if 0
  457. %package -n compat32-%{name}-locale
  458. Summary: Run-Time component of boost locale library
  459. Group: System Environment/Libraries
  460. Requires: compat32-%{name}-chrono = %{version}-%{release}
  461. Requires: compat32-%{name}-system = %{version}-%{release}
  462. Requires: compat32-%{name}-thread = %{version}-%{release}
  463. %description -n compat32-%{name}-locale
  464. Run-Time support for Boost.Locale, a set of localization and Unicode
  465. handling tools.
  466. %endif
  467. %if 0
  468. %package -n compat32-%{name}-log
  469. Summary: Run-Time component of boost logging library
  470. Group: System Environment/Libraries
  471. %description -n compat32-%{name}-log
  472. Boost.Log library aims to make logging significantly easier for the
  473. application developer. It provides a wide range of out-of-the-box
  474. tools along with public interfaces for extending the library.
  475. %endif
  476. %package -n compat32-%{name}-math
  477. Summary: Set of math libralies in %{name}
  478. Group: System Environment/Libraries
  479. %description -n compat32-%{name}-math
  480. Set of math libralies in %{name}
  481. %package -n compat32-%{name}-program-options
  482. Summary: Set of program options libralies in %{name}
  483. Group: System Environment/Libraries
  484. %description -n compat32-%{name}-program-options
  485. Set of program options libralies in %{name}
  486. %if 0
  487. %package -n compat32-%{name}-python
  488. Summary: Set of Python libralies in %{name}
  489. Group: System Environment/Libraries
  490. %description -n compat32-%{name}-python
  491. Set of Python libralies in %{name}
  492. %endif
  493. %if 0
  494. %if %{with python3}
  495. %package -n compat32-%{name}-python3
  496. Summary: Run-Time component of boost python library for Python 3
  497. Group: System Environment/Libraries
  498. %description -n compat32-%{name}-python3
  499. The Boost Python Library is a framework for interfacing Python and
  500. C++. It allows you to quickly and seamlessly expose C++ classes,
  501. functions and objects to Python, and vice versa, using no special
  502. tools -- just your C++ compiler. This package contains run-time
  503. support for Boost Python Library compiled for Python 3.
  504. %endif
  505. %endif
  506. %package -n compat32-%{name}-random
  507. Summary: Set of random number generation libralies in %{name}
  508. Group: System Environment/Libraries
  509. %description -n compat32-%{name}-random
  510. Set of random number generation libralies in %{name}
  511. %if 0
  512. %package -n compat32-%{name}-regex
  513. Summary: Set of regular expression libralies in %{name}
  514. Group: System Environment/Libraries
  515. %description -n compat32-%{name}-regex
  516. Set of regular expression libralies in %{name}
  517. %endif
  518. %package -n compat32-%{name}-serialization
  519. Summary: Set of serialization libralies in %{name}
  520. Group: System Environment/Libraries
  521. %description -n compat32-%{name}-serialization
  522. Set of serialization libralies in %{name}
  523. %package -n compat32-%{name}-signals
  524. Summary: Set of signals and slots libralies in %{name}
  525. Group: System Environment/Libraries
  526. %description -n compat32-%{name}-signals
  527. Set of signals and slots libralies in %{name}
  528. %package -n compat32-%{name}-stacktrace
  529. Summary: Call-stack libraries in %{name}
  530. Group: System Environment/Libraries
  531. Requires: %{name} = %{version}-%{release}
  532. %description -n compat32-%{name}-stacktrace
  533. simple C++03 library that provides information about call sequence in a
  534. human-readable form
  535. %package -n compat32-%{name}-system
  536. Summary: Operating system support
  537. Group: System Environment/Libraries
  538. %description -n compat32-%{name}-system
  539. Operating system support, including the diagnostics support
  540. that will be part of the C++0x standard library
  541. %package -n compat32-%{name}-test
  542. Summary: Set of libraries for writing and executing tests in %{name}
  543. Group: System Environment/Libraries
  544. %description -n compat32-%{name}-test
  545. Set of libraries for writing and executing tests in %{name}
  546. %package -n compat32-%{name}-thread
  547. Summary: Set of multi-thread libraries in %{name}
  548. Group: System Environment/Libraries
  549. %description -n compat32-%{name}-thread
  550. Set of multi-thread libraries in %{name}
  551. %package -n compat32-%{name}-timer
  552. Summary: Run-Time component of boost timer library
  553. Group: System Environment/Libraries
  554. Requires: compat32-%{name}-chrono = %{version}-%{release}
  555. Requires: compat32-%{name}-system = %{version}-%{release}
  556. %description -n compat32-%{name}-timer
  557. "How long does my C++ code take to run?"
  558. The Boost Timer library answers that question and does so portably,
  559. with as little as one #include and one additional line of code.
  560. %package -n compat32-%{name}-type_erasure
  561. Summary: Run-Time component of boost type erasure library
  562. Group: System Environment/Libraries
  563. Requires: compat32-%{name}-chrono = %{version}-%{release}
  564. Requires: compat32-%{name}-system = %{version}-%{release}
  565. %description -n compat32-%{name}-type_erasure
  566. The Boost.TypeErasure library provides runtime polymorphism in C++
  567. that is more flexible than that provided by the core language.
  568. %package -n compat32-%{name}-wave
  569. Summary: Set of wave libraries in %{name}
  570. Group: System Environment/Libraries
  571. %description -n compat32-%{name}-wave
  572. Set of wave libraries in %{name}
  573. %prep
  574. %setup -q -n %{tarname}_%{pkgver}
  575. %patch4 -p1
  576. %patch5 -p1
  577. %patch15 -p0
  578. %patch25 -p1
  579. %patch51 -p1
  580. %patch61 -p1
  581. %patch62 -p1
  582. %patch65 -p1
  583. %patch68 -p1
  584. %patch82 -p0
  585. # At least python2_version needs to be a macro so that it's visible in
  586. # %%install as well.
  587. %global python2_version %(/usr/bin/python2 %{SOURCE1})
  588. %if %{with python3}
  589. %global python3_version %(/usr/bin/python3 %{SOURCE1})
  590. %global python3_abiflags %(/usr/bin/python3-config --abiflags)
  591. %endif
  592. %build
  593. : PYTHON2_VERSION=%{python2_version}
  594. %if %{with python3}
  595. : PYTHON3_VERSION=%{python3_version}
  596. : PYTHON3_ABIFLAGS=%{python3_abiflags}
  597. %endif
  598. # There are many strict aliasing warnings, and it's not feasible to go
  599. # through them all at this time.
  600. # There are also lots of noisy but harmless unused local typedef warnings.
  601. export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs -Wno-deprecated-declarations"
  602. cat > ./tools/build/src/user-config.jam << "EOF"
  603. import os ;
  604. local RPM_OPT_FLAGS = [ os.environ RPM_OPT_FLAGS ] ;
  605. using gcc : : : <compileflags>$(RPM_OPT_FLAGS) ;
  606. %if %{with openmpi} || %{with mpich}
  607. using mpi ;
  608. %endif
  609. using python : %{python2_version} : /usr/bin/python2 : /usr/include/python%{python2_version} : : : : ;
  610. EOF
  611. ./bootstrap.sh --with-toolset=gcc --with-icu
  612. # N.B. When we build the following with PCH, parts of boost (math
  613. # library in particular) end up being built second time during
  614. # installation. Unsure why that is, but all sub-builds need to be
  615. # built with pch=off to avoid this.
  616. echo ============================= build serial ==================
  617. ./b2 -d+2 -q %{?_smp_mflags} \
  618. --without-mpi --without-graph_parallel --build-dir=serial \
  619. %if !%{with context}
  620. --without-context --without-coroutine --without-coroutine2 \
  621. --without-fiber \
  622. %endif
  623. variant=release threading=multi debug-symbols=on pch=off \
  624. python=%{python2_version} stage
  625. # See libs/thread/build/Jamfile.v2 for where this file comes from.
  626. if [ $(find serial -type f -name has_atomic_flag_lockfree \
  627. -print -quit | wc -l) -ne 0 ]; then
  628. DEF=D
  629. else
  630. DEF=U
  631. fi
  632. m4 -${DEF}HAS_ATOMIC_FLAG_LOCKFREE -DVERSION=%{version} \
  633. %{SOURCE2} > $(basename %{SOURCE2})
  634. %if %{with python3}
  635. # Previously, we built python 2.x and 3.x interfaces simultaneously.
  636. # However, this doesn't work once trying to build other Python components
  637. # such as libboost_numpy. Therefore, we build for each separately, while
  638. # minimizing duplicate compilation as much as possible.
  639. cat > python3-config.jam << "EOF"
  640. import os ;
  641. local RPM_OPT_FLAGS = [ os.environ RPM_OPT_FLAGS ] ;
  642. using gcc : : : <compileflags>$(RPM_OPT_FLAGS) ;
  643. %if %{with openmpi} || %{with mpich}
  644. using mpi ;
  645. %endif
  646. using python : %{python3_version} : /usr/bin/python3 : /usr/include/python%{python3_version}%{python3_abiflags} : : : : %{python3_abiflags} ;
  647. EOF
  648. echo ============================= build serial-py3 ==================
  649. ./b2 -d+2 -q %{?_smp_mflags} \
  650. --user-config=./python3-config.jam \
  651. --with-python --build-dir=serial-py3 \
  652. variant=release threading=multi debug-symbols=on pch=off \
  653. python=%{python3_version} stage
  654. %endif
  655. # Build MPI parts of Boost with OpenMPI support
  656. %if %{with openmpi} || %{with mpich}
  657. # First, purge all modules so that user environment doesn't conflict
  658. # with the build.
  659. module purge ||:
  660. %endif
  661. %if %{with openmpi}
  662. %{_openmpi_load}
  663. echo ============================= build $MPI_COMPILER ==================
  664. ./b2 -d+2 -q %{?_smp_mflags} \
  665. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER \
  666. variant=release threading=multi debug-symbols=on pch=off \
  667. python=%{python2_version} stage
  668. %if %{with python3}
  669. echo ============================= build $MPI_COMPILER-py3 ==================
  670. ./b2 -d+2 -q %{?_smp_mflags} \
  671. --user-config=./python3-config.jam \
  672. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER-py3 \
  673. variant=release threading=multi debug-symbols=on pch=off \
  674. python=%{python3_version} stage
  675. %endif
  676. %{_openmpi_unload}
  677. export PATH=/bin${PATH:+:}$PATH
  678. %endif
  679. # Build MPI parts of Boost with MPICH support
  680. %if %{with mpich}
  681. %{_mpich_load}
  682. echo ============================= build $MPI_COMPILER ==================
  683. ./b2 -d+2 -q %{?_smp_mflags} \
  684. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER \
  685. variant=release threading=multi debug-symbols=on pch=off \
  686. python=%{python2_version} stage
  687. %if %{with python3}
  688. echo ============================= build $MPI_COMPILER-py3 ==================
  689. ./b2 -d+2 -q %{?_smp_mflags} \
  690. --user-config=./python3-config.jam \
  691. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER-py3 \
  692. variant=release threading=multi debug-symbols=on pch=off \
  693. python=%{python3_version} stage
  694. %endif
  695. %{_mpich_unload}
  696. export PATH=/bin${PATH:+:}$PATH
  697. %endif
  698. echo ============================= build Boost.Build ==================
  699. (cd tools/build
  700. ./bootstrap.sh --with-toolset=gcc)
  701. %check
  702. :
  703. %install
  704. rm -rf $RPM_BUILD_ROOT
  705. #cd %{_builddir}/%{name}_%{pkgver}
  706. %if %{with openmpi} || %{with mpich}
  707. # First, purge all modules so that user environment doesn't conflict
  708. # with the build.
  709. module purge ||:
  710. %endif
  711. %if %{with openmpi}
  712. %{_openmpi_load}
  713. # XXX We want to extract this from RPM flags
  714. # b2 instruction-set=i686 etc.
  715. echo ============================= install $MPI_COMPILER ==================
  716. ./b2 -q %{?_smp_mflags} \
  717. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER \
  718. --stagedir=${RPM_BUILD_ROOT}${MPI_HOME} \
  719. variant=release threading=multi debug-symbols=on pch=off \
  720. python=%{python2_version} stage
  721. # Move Python module to proper location for automatic loading
  722. mkdir -p ${RPM_BUILD_ROOT}%{python2_sitearch}/openmpi/boost
  723. touch ${RPM_BUILD_ROOT}%{python2_sitearch}/openmpi/boost/__init__.py
  724. mv ${RPM_BUILD_ROOT}${MPI_HOME}/lib/mpi.so \
  725. ${RPM_BUILD_ROOT}%{python2_sitearch}/openmpi/boost/
  726. %if %{with python3}
  727. echo ============================= install $MPI_COMPILER-py3 ==================
  728. ./b2 -q %{?_smp_mflags} \
  729. --user-config=./python3-config.jam \
  730. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER-py3 \
  731. --stagedir=${RPM_BUILD_ROOT}${MPI_HOME} \
  732. variant=release threading=multi debug-symbols=on pch=off \
  733. python=%{python3_version} stage
  734. # Move Python module to proper location for automatic loading
  735. mkdir -p ${RPM_BUILD_ROOT}%{python3_sitearch}/openmpi/boost
  736. touch ${RPM_BUILD_ROOT}%{python3_sitearch}/openmpi/boost/__init__.py
  737. mv ${RPM_BUILD_ROOT}${MPI_HOME}/lib/mpi.so \
  738. ${RPM_BUILD_ROOT}%{python3_sitearch}/openmpi/boost/
  739. %endif
  740. # Remove generic parts of boost that were built for dependencies.
  741. rm -f ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_{python,{w,}serialization}*
  742. %{_openmpi_unload}
  743. export PATH=/bin${PATH:+:}$PATH
  744. %endif
  745. %if %{with mpich}
  746. %{_mpich_load}
  747. echo ============================= install $MPI_COMPILER ==================
  748. ./b2 -q %{?_smp_mflags} \
  749. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER \
  750. --stagedir=${RPM_BUILD_ROOT}${MPI_HOME} \
  751. variant=release threading=multi debug-symbols=on pch=off \
  752. python=%{python2_version} stage
  753. # Move Python module to proper location for automatic loading
  754. mkdir -p ${RPM_BUILD_ROOT}%{python2_sitearch}/mpich/boost
  755. touch ${RPM_BUILD_ROOT}%{python2_sitearch}/mpich/boost/__init__.py
  756. mv ${RPM_BUILD_ROOT}${MPI_HOME}/lib/mpi.so \
  757. ${RPM_BUILD_ROOT}%{python2_sitearch}/mpich/boost/
  758. %if %{with python3}
  759. echo ============================= install $MPI_COMPILER-py3 ==================
  760. ./b2 -q %{?_smp_mflags} \
  761. --user-config=./python3-config.jam \
  762. --with-mpi --with-graph_parallel --build-dir=$MPI_COMPILER-py3 \
  763. --stagedir=${RPM_BUILD_ROOT}${MPI_HOME} \
  764. variant=release threading=multi debug-symbols=on pch=off \
  765. python=%{python3_version} stage
  766. # Move Python module to proper location for automatic loading
  767. mkdir -p ${RPM_BUILD_ROOT}%{python3_sitearch}/mpich/boost
  768. touch ${RPM_BUILD_ROOT}%{python3_sitearch}/mpich/boost/__init__.py
  769. mv ${RPM_BUILD_ROOT}${MPI_HOME}/lib/mpi.so \
  770. ${RPM_BUILD_ROOT}%{python3_sitearch}/mpich/boost/
  771. %endif
  772. # Remove generic parts of boost that were built for dependencies.
  773. rm -f ${RPM_BUILD_ROOT}${MPI_HOME}/lib/libboost_{python,{w,}serialization}*
  774. %{_mpich_unload}
  775. export PATH=/bin${PATH:+:}$PATH
  776. %endif
  777. echo ============================= install serial ==================
  778. ./b2 -d+2 -q %{?_smp_mflags} \
  779. --without-mpi --without-graph_parallel --build-dir=serial \
  780. %if !%{with context}
  781. --without-context --without-coroutine --without-coroutine2 \
  782. --without-fiber \
  783. %endif
  784. --prefix=$RPM_BUILD_ROOT%{_prefix} \
  785. --libdir=$RPM_BUILD_ROOT%{_libdir} \
  786. variant=release threading=multi debug-symbols=on pch=off \
  787. python=%{python2_version} install
  788. # Override DSO symlink with a linker script. See the linker script
  789. # itself for details of why we need to do this.
  790. [ -f $RPM_BUILD_ROOT%{_libdir}/libboost_thread.so ] # Must be present
  791. rm -f $RPM_BUILD_ROOT%{_libdir}/libboost_thread.so
  792. install -p -m 644 $(basename %{SOURCE2}) $RPM_BUILD_ROOT%{_libdir}/
  793. %if %{with python3}
  794. echo ============================= install serial-py3 ==================
  795. ./b2 -d+2 -q %{?_smp_mflags} \
  796. --user-config=python3-config.jam \
  797. --with-python --build-dir=serial-py3 \
  798. --prefix=$RPM_BUILD_ROOT%{_prefix} \
  799. --libdir=$RPM_BUILD_ROOT%{_libdir} \
  800. variant=release threading=multi debug-symbols=on pch=off \
  801. python=%{python3_version} install
  802. %endif
  803. echo ============================= install Boost.Build ==================
  804. (cd tools/build
  805. ./b2 --prefix=$RPM_BUILD_ROOT%{_prefix} install
  806. # Fix some permissions
  807. chmod -x $RPM_BUILD_ROOT%{_datadir}/boost-build/src/build/alias.py
  808. chmod +x $RPM_BUILD_ROOT%{_datadir}/boost-build/src/tools/doxproc.py
  809. # We don't want to distribute this
  810. rm -f $RPM_BUILD_ROOT%{_bindir}/b2
  811. # Not a real file
  812. rm -f $RPM_BUILD_ROOT%{_datadir}/boost-build/src/build/project.ann.py
  813. # Empty file
  814. rm -f $RPM_BUILD_ROOT%{_datadir}/boost-build/src/tools/doxygen/windows-paths-check.hpp
  815. # Install the manual page
  816. %{__install} -p -m 644 v2/doc/bjam.1 -D $RPM_BUILD_ROOT%{_mandir}/man1/bjam.1
  817. )
  818. echo ============================= install Boost.QuickBook ==================
  819. (cd tools/quickbook
  820. ../build/b2 --prefix=$RPM_BUILD_ROOT%{_prefix}
  821. %{__install} -p -m 755 ../../dist/bin/quickbook $RPM_BUILD_ROOT%{_bindir}/
  822. cd ../boostbook
  823. find dtd -type f -name '*.dtd' | while read tobeinstalledfiles; do
  824. install -p -m 644 $tobeinstalledfiles -D $RPM_BUILD_ROOT%{_datadir}/boostbook/$tobeinstalledfiles
  825. done
  826. find xsl -type f | while read tobeinstalledfiles; do
  827. install -p -m 644 $tobeinstalledfiles -D $RPM_BUILD_ROOT%{_datadir}/boostbook/$tobeinstalledfiles
  828. done
  829. )
  830. # Install documentation files (HTML pages) within the temporary place
  831. echo ============================= install documentation ==================
  832. # Prepare the place to temporarily store the generated documentation
  833. rm -rf %{boost_docdir} && %{__mkdir_p} %{boost_docdir}/html
  834. DOCPATH=%{boost_docdir}
  835. DOCREGEX='.*\.\(html?\|css\|png\|gif\)'
  836. find libs doc more -type f -regex $DOCREGEX \
  837. | sed -n '/\//{s,/[^/]*$,,;p}' \
  838. | sort -u > tmp-doc-directories
  839. sed "s:^:$DOCPATH/:" tmp-doc-directories \
  840. | xargs -P 0 --no-run-if-empty %{__install} -d
  841. cat tmp-doc-directories | while read tobeinstalleddocdir; do
  842. find $tobeinstalleddocdir -mindepth 1 -maxdepth 1 -regex $DOCREGEX -print0 \
  843. | xargs -P 0 -0 %{__install} -p -m 644 -t $DOCPATH/$tobeinstalleddocdir
  844. done
  845. rm -f tmp-doc-directories
  846. %{__install} -p -m 644 -t $DOCPATH LICENSE_1_0.txt index.htm index.html boost.png rst.css boost.css
  847. echo ============================= install examples ==================
  848. # Fix a few non-standard issues (DOS and/or non-UTF8 files)
  849. sed -i -e 's/\r//g' libs/geometry/example/ml02_distance_strategy.cpp
  850. for tmp_doc_file in flyweight/example/Jamfile.v2 \
  851. format/example/sample_new_features.cpp multi_index/example/Jamfile.v2 \
  852. multi_index/example/hashed.cpp serialization/example/demo_output.txt
  853. do
  854. mv libs/${tmp_doc_file} libs/${tmp_doc_file}.iso8859
  855. iconv -f ISO8859-1 -t UTF8 < libs/${tmp_doc_file}.iso8859 > libs/${tmp_doc_file}
  856. touch -r libs/${tmp_doc_file}.iso8859 libs/${tmp_doc_file}
  857. rm -f libs/${tmp_doc_file}.iso8859
  858. done
  859. # Prepare the place to temporarily store the examples
  860. rm -rf %{boost_examplesdir} && mkdir -p %{boost_examplesdir}/html
  861. EXAMPLESPATH=%{boost_examplesdir}
  862. find libs -type d -name example -exec find {} -type f \; \
  863. | sed -n '/\//{s,/[^/]*$,,;p}' \
  864. | sort -u > tmp-doc-directories
  865. sed "s:^:$EXAMPLESPATH/:" tmp-doc-directories \
  866. | xargs -P 0 --no-run-if-empty %{__install} -d
  867. rm -f tmp-doc-files-to-be-installed && touch tmp-doc-files-to-be-installed
  868. cat tmp-doc-directories | while read tobeinstalleddocdir
  869. do
  870. find $tobeinstalleddocdir -mindepth 1 -maxdepth 1 -type f \
  871. >> tmp-doc-files-to-be-installed
  872. done
  873. cat tmp-doc-files-to-be-installed | while read tobeinstalledfiles
  874. do
  875. if test -s $tobeinstalledfiles
  876. then
  877. tobeinstalleddocdir=`dirname $tobeinstalledfiles`
  878. %{__install} -p -m 644 -t $EXAMPLESPATH/$tobeinstalleddocdir $tobeinstalledfiles
  879. fi
  880. done
  881. rm -f tmp-doc-files-to-be-installed
  882. rm -f tmp-doc-directories
  883. %{__install} -p -m 644 -t $EXAMPLESPATH LICENSE_1_0.txt
  884. # MPI subpackages don't need the ldconfig magic. They are hidden by
  885. # default, in MPI back-end-specific directory, and only show to the
  886. # user after the relevant environment module has been loaded.
  887. # rpmlint will report that as errors, but it is fine.
  888. ln -s ./%{tarname} ${RPM_BUILD_ROOT}/%{_includedir}/%{tarname}-%{lnkver}
  889. # remove unuse files
  890. rm -f ${RPM_BUILD_ROOT}/%{_libdir}/%{name}_*.a
  891. %clean
  892. rm -rf $RPM_BUILD_ROOT
  893. # MPI subpackages don't need the ldconfig magic. They are hidden by
  894. # default, in MPI back-end-specific directory, and only show to the
  895. # user after the relevant environment module has been loaded.
  896. # rpmlint will report that as errors, but it is fine.
  897. %post atomic -p /sbin/ldconfig
  898. %post chrono -p /sbin/ldconfig
  899. %post container -p /sbin/ldconfig
  900. %if %{with context}
  901. %post context -p /sbin/ldconfig
  902. %post coroutine -p /sbin/ldconfig
  903. %endif
  904. %post date-time -p /sbin/ldconfig
  905. %post filesystem -p /sbin/ldconfig
  906. %post graph -p /sbin/ldconfig
  907. %post iostreams -p /sbin/ldconfig
  908. %post locale -p /sbin/ldconfig
  909. %post log -p /sbin/ldconfig
  910. %post math -p /sbin/ldconfig
  911. %post program-options -p /sbin/ldconfig
  912. %post python -p /sbin/ldconfig
  913. %post random -p /sbin/ldconfig
  914. %post regex -p /sbin/ldconfig
  915. %post serialization -p /sbin/ldconfig
  916. %post signals -p /sbin/ldconfig
  917. %post system -p /sbin/ldconfig
  918. %post test -p /sbin/ldconfig
  919. %post thread -p /sbin/ldconfig
  920. %post timer -p /sbin/ldconfig
  921. %post type_erasure -p /sbin/ldconfig
  922. %post wave -p /sbin/ldconfig
  923. %postun atomic -p /sbin/ldconfig
  924. %postun chrono -p /sbin/ldconfig
  925. %postun container -p /sbin/ldconfig
  926. %if %{with context}
  927. %postun context -p /sbin/ldconfig
  928. %postun coroutine -p /sbin/ldconfig
  929. %endif
  930. %postun date-time -p /sbin/ldconfig
  931. %postun filesystem -p /sbin/ldconfig
  932. %postun graph -p /sbin/ldconfig
  933. %postun iostreams -p /sbin/ldconfig
  934. %postun locale -p /sbin/ldconfig
  935. %postun log -p /sbin/ldconfig
  936. %postun math -p /sbin/ldconfig
  937. %postun program-options -p /sbin/ldconfig
  938. %postun python -p /sbin/ldconfig
  939. %postun random -p /sbin/ldconfig
  940. %postun regex -p /sbin/ldconfig
  941. %postun serialization -p /sbin/ldconfig
  942. %postun signals -p /sbin/ldconfig
  943. %postun system -p /sbin/ldconfig
  944. %postun test -p /sbin/ldconfig
  945. %postun thread -p /sbin/ldconfig
  946. %postun timer -p /sbin/ldconfig
  947. %postun type_erasure -p /sbin/ldconfig
  948. %postun wave -p /sbin/ldconfig
  949. %files
  950. %defattr(-,root,root)
  951. %doc LICENSE_1_0.txt
  952. %files atomic
  953. %defattr(-, root, root, -)
  954. %doc LICENSE_1_0.txt
  955. %{_libdir}/libboost_atomic.so.*
  956. %files chrono
  957. %defattr(-, root, root, -)
  958. %doc LICENSE_1_0.txt
  959. %{_libdir}/libboost_chrono.so.*
  960. %files container
  961. %license LICENSE_1_0.txt
  962. %{_libdir}/libboost_container.so.*
  963. %if %{with context}
  964. %files context
  965. %defattr(-, root, root, -)
  966. %doc LICENSE_1_0.txt
  967. %{_libdir}/libboost_context.so.*
  968. %files coroutine
  969. %license LICENSE_1_0.txt
  970. %{_libdir}/libboost_coroutine.so.*
  971. %endif
  972. %files date-time
  973. %doc LICENSE_1_0.txt
  974. %{_libdir}/%{name}_date_time*.so.*
  975. %files filesystem
  976. %doc LICENSE_1_0.txt
  977. %{_libdir}/%{name}_filesystem*.so.*
  978. %files graph
  979. %doc LICENSE_1_0.txt
  980. %{_libdir}/%{name}_graph*.so.*
  981. %files iostreams
  982. %doc LICENSE_1_0.txt
  983. %{_libdir}/%{name}_iostreams*.so.*
  984. %files locale
  985. %defattr(-, root, root, -)
  986. %doc LICENSE_1_0.txt
  987. %{_libdir}/libboost_locale.so.*
  988. %files log
  989. %defattr(-, root, root, -)
  990. %doc LICENSE_1_0.txt
  991. %{_libdir}/libboost_log.so.*
  992. %{_libdir}/libboost_log_setup.so.*
  993. %files math
  994. %doc LICENSE_1_0.txt
  995. %{_libdir}/%{name}_math_*.so.*
  996. %files program-options
  997. %doc LICENSE_1_0.txt
  998. %{_libdir}/%{name}_program_options*.so.*
  999. %files python
  1000. %doc LICENSE_1_0.txt
  1001. %{_libdir}/%{name}_python.so.*
  1002. %if %{with python3}
  1003. %files python3
  1004. %license LICENSE_1_0.txt
  1005. %{_libdir}/libboost_python3.so.*
  1006. %files python3-devel
  1007. %license LICENSE_1_0.txt
  1008. %{_libdir}/libboost_python3.so
  1009. %endif
  1010. %files random
  1011. %doc LICENSE_1_0.txt
  1012. %{_libdir}/%{name}_random*.so.*
  1013. %files regex
  1014. %doc LICENSE_1_0.txt
  1015. %{_libdir}/%{name}_regex*.so.*
  1016. %files serialization
  1017. %doc LICENSE_1_0.txt
  1018. %{_libdir}/%{name}_serialization*.so.*
  1019. %{_libdir}/%{name}_wserialization*.so.*
  1020. %files signals
  1021. %doc LICENSE_1_0.txt
  1022. %{_libdir}/%{name}_signals*.so.*
  1023. %files stacktrace
  1024. %doc LICENSE_1_0.txt
  1025. %{_libdir}/%{name}_stacktrace*.so.*
  1026. %files system
  1027. %doc LICENSE_1_0.txt
  1028. %{_libdir}/%{name}_system*.so.*
  1029. %files test
  1030. %doc LICENSE_1_0.txt
  1031. %{_libdir}/%{name}_prg_exec_monitor*.so.*
  1032. %{_libdir}/%{name}_unit_test_framework*.so.*
  1033. %files thread
  1034. %doc LICENSE_1_0.txt
  1035. %{_libdir}/%{name}_thread*.so.*
  1036. %files timer
  1037. %defattr(-, root, root, -)
  1038. %doc LICENSE_1_0.txt
  1039. %{_libdir}/libboost_timer.so.*
  1040. %files type_erasure
  1041. %license LICENSE_1_0.txt
  1042. %{_libdir}/libboost_type_erasure.so.*
  1043. %files wave
  1044. %doc LICENSE_1_0.txt
  1045. %{_libdir}/%{name}_wave*.so.*
  1046. %files devel
  1047. %defattr(-,root,root)
  1048. %{_includedir}/boost/
  1049. %{_includedir}/boost-%{lnkver}
  1050. %{_libdir}/%{name}_*.so
  1051. %files doc
  1052. %doc index.htm index.html boost.css boost.png rst.css doc libs more
  1053. %files build
  1054. %license LICENSE_1_0.txt
  1055. %{_datadir}/boost-build
  1056. %files doctools
  1057. %license LICENSE_1_0.txt
  1058. %{_bindir}/quickbook
  1059. %{_datadir}/boostbook/
  1060. %files jam
  1061. %license LICENSE_1_0.txt
  1062. %{_bindir}/bjam
  1063. %{_mandir}/man1/bjam.1*
  1064. # OpenMPI packages
  1065. %if %{with openmpi}
  1066. %files openmpi
  1067. %license LICENSE_1_0.txt
  1068. %{_libdir}/openmpi/lib/libboost_mpi.so.*
  1069. %files openmpi-python
  1070. %license LICENSE_1_0.txt
  1071. %{_libdir}/openmpi/lib/libboost_mpi_python.so.*
  1072. %{_libdir}/openmpi/lib/mpi.so
  1073. %files graph-openmpi
  1074. %license LICENSE_1_0.txt
  1075. %{_libdir}/openmpi/lib/libboost_graph_parallel.so.*
  1076. %endif
  1077. # MPICH packages
  1078. %if %{with mpich}
  1079. %files mpich
  1080. %license LICENSE_1_0.txt
  1081. %{_libdir}/mpich/lib/libboost_mpi.so.*
  1082. %files mpich-python
  1083. %license LICENSE_1_0.txt
  1084. %{_libdir}/mpich/lib/libboost_mpi_python.so.*
  1085. %{_libdir}/mpich/lib/mpi.so
  1086. %files graph-mpich
  1087. %license LICENSE_1_0.txt
  1088. %{_libdir}/mpich/lib/libboost_graph_parallel.so.*
  1089. %endif
  1090. %if %{build_compat32}
  1091. %files -n compat32-%{name}-atomic
  1092. %defattr(-, root, root, -)
  1093. %doc LICENSE_1_0.txt
  1094. %{_libdir}/libboost_atomic.so.*
  1095. %files -n compat32-%{name}-chrono
  1096. %defattr(-, root, root, -)
  1097. %doc LICENSE_1_0.txt
  1098. %{_libdir}/libboost_chrono.so.*
  1099. %files -n compat32-%{name}-container
  1100. %license LICENSE_1_0.txt
  1101. %{_libdir}/libboost_container.so.*
  1102. %if %{with context}
  1103. %files -n compat32-%{name}-context
  1104. %defattr(-, root, root, -)
  1105. %doc LICENSE_1_0.txt
  1106. %{_libdir}/libboost_context.so.*
  1107. %files -n compat32-%{name}-coroutine
  1108. %license LICENSE_1_0.txt
  1109. %{_libdir}/libboost_coroutine.so.*
  1110. %endif
  1111. %files -n compat32-%{name}-date-time
  1112. %doc LICENSE_1_0.txt
  1113. %{_libdir}/%{name}_date_time*.so.*
  1114. %files -n compat32-%{name}-filesystem
  1115. %doc LICENSE_1_0.txt
  1116. %{_libdir}/%{name}_filesystem*.so.*
  1117. %if 0
  1118. %files -n compat32-%{name}-graph
  1119. %doc LICENSE_1_0.txt
  1120. %{_libdir}/%{name}_graph*.so.*
  1121. %endif
  1122. %files -n compat32-%{name}-iostreams
  1123. %doc LICENSE_1_0.txt
  1124. %{_libdir}/%{name}_iostreams*.so.*
  1125. %if 0
  1126. %files -n compat32-%{name}-locale
  1127. %defattr(-, root, root, -)
  1128. %doc LICENSE_1_0.txt
  1129. %{_libdir}/libboost_locale.so.*
  1130. %endif
  1131. %if 0
  1132. %files -n compat32-%{name}-log
  1133. %defattr(-, root, root, -)
  1134. %doc LICENSE_1_0.txt
  1135. %{_libdir}/libboost_log.so.*
  1136. %{_libdir}/libboost_log_setup.so.*
  1137. %endif
  1138. %files -n compat32-%{name}-math
  1139. %doc LICENSE_1_0.txt
  1140. %{_libdir}/%{name}_math_*.so.*
  1141. %files -n compat32-%{name}-program-options
  1142. %doc LICENSE_1_0.txt
  1143. %{_libdir}/%{name}_program_options*.so.*
  1144. %if 0
  1145. %files -n compat32-%{name}-python
  1146. %doc LICENSE_1_0.txt
  1147. %{_libdir}/%{name}_python.so.*
  1148. %if %{with python3}
  1149. %files -n compat32-%{name}-python3
  1150. %license LICENSE_1_0.txt
  1151. %{_libdir}/libboost_python3.so.*
  1152. %endif
  1153. %endif
  1154. %files -n compat32-%{name}-random
  1155. %doc LICENSE_1_0.txt
  1156. %{_libdir}/%{name}_random*.so.*
  1157. %if 0
  1158. %files -n compat32-%{name}-regex
  1159. %doc LICENSE_1_0.txt
  1160. %{_libdir}/%{name}_regex*.so.*
  1161. %endif
  1162. %files -n compat32-%{name}-serialization
  1163. %doc LICENSE_1_0.txt
  1164. %{_libdir}/%{name}_serialization*.so.*
  1165. %{_libdir}/%{name}_wserialization*.so.*
  1166. %files -n compat32-%{name}-signals
  1167. %doc LICENSE_1_0.txt
  1168. %{_libdir}/%{name}_signals*.so.*
  1169. %files -n compat32-%{name}-stacktrace
  1170. %doc LICENSE_1_0.txt
  1171. %{_libdir}/%{name}_stacktrace*.so.*
  1172. %files -n compat32-%{name}-system
  1173. %doc LICENSE_1_0.txt
  1174. %{_libdir}/%{name}_system*.so.*
  1175. %files -n compat32-%{name}-test
  1176. %doc LICENSE_1_0.txt
  1177. %{_libdir}/%{name}_prg_exec_monitor*.so.*
  1178. %{_libdir}/%{name}_unit_test_framework*.so.*
  1179. %files -n compat32-%{name}-thread
  1180. %doc LICENSE_1_0.txt
  1181. %{_libdir}/%{name}_thread*.so.*
  1182. %files -n compat32-%{name}-timer
  1183. %defattr(-, root, root, -)
  1184. %doc LICENSE_1_0.txt
  1185. %{_libdir}/libboost_timer.so.*
  1186. %files -n compat32-%{name}-type_erasure
  1187. %license LICENSE_1_0.txt
  1188. %{_libdir}/libboost_type_erasure.so.*
  1189. %files -n compat32-%{name}-wave
  1190. %doc LICENSE_1_0.txt
  1191. %{_libdir}/%{name}_wave*.so.*
  1192. %endif
  1193. %changelog
  1194. * Mon Jan 08 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.66.0-2
  1195. - rebuilt with libicu-60.2.
  1196. * Sun Jan 07 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.66.0-1
  1197. - updated to boost_1_66_0.
  1198. - dropped Patch36, 63 and 81.
  1199. - updated Patch65.
  1200. - imported Patch82 from rawhide.
  1201. - added a subpackage 'libboost-stacktrace'.
  1202. * Sat Jul 16 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.60.0-3
  1203. - added compat32-* packages.
  1204. * Tue Jun 28 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.60.0-2
  1205. - rebuild with python3-3.5.2
  1206. * Mon Jun 6 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.60.0-1
  1207. - updated to boost_1_60_0.
  1208. - dropped all patches.
  1209. - imported patches from rawhide.
  1210. - moved *.so into libboost-devel.
  1211. * Mon Nov 25 2013 IWAI, Masaharu <iwaim.sub@gmail.com> 1.54.0-1
  1212. - update to boost_1_54_0
  1213. - all package: including license file
  1214. - drop boost_filesystem patch (Patch0)
  1215. - sync Fedora boost-1.54.0-5.fc21
  1216. - new packages: atomic, chrono, context, locale, log, timer
  1217. - add patches
  1218. - Patch4, 5, 9, 15, 18..28, 31..38, 42..55
  1219. * Sun Feb 20 2011 Munehiro Yamamoto <munepi@vinelinux.org> 1.45.0-2
  1220. - fixed crashing throwing exception
  1221. "std::runtime_error: locale::facet::_S_create_c_locale name not valid"
  1222. on some systems (FreeBSD and some linuxes) when current locale
  1223. (LANG,LC_ALL) is not "C"
  1224. * Tue Jan 18 2011 Shu KONNO <owa@bg.wakwak.com> 1.45.0-1
  1225. - updated to boost_1_45_0
  1226. - added random sub-package
  1227. * Wed Apr 14 2010 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 1.42.0-4
  1228. - rebuilt again on ppc
  1229. * Sat Apr 10 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.42.0-3
  1230. - rebuilt with libicu-4.4
  1231. * Mon Feb 08 2010 Shu KONNO <owa@bg.wakwak.com> 1.42.0-2
  1232. - added "-licui18n" to bjam
  1233. - added BR: lam
  1234. * Sun Feb 07 2010 Shu KONNO <owa@bg.wakwak.com> 1.42.0-1
  1235. - updated to boost_1_42_0
  1236. - rebuilt with new toolchain and python-2.6
  1237. - added user-config.jam to make libboost_mpi
  1238. - added BR: libaio-devel
  1239. - added %%{post,postun} -p /sbin/ldconfig
  1240. - dropt no use parameter EXPAT_INCLUDE and EXPAT_LIBPATH
  1241. - dropt %{_libdir}/%{name}_test_exec_monitor-*.a in %%files %{name}-test
  1242. - dropt %%{post,postun} devel section
  1243. * Sun Mar 22 2009 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.36.0-2vl5
  1244. - rebuilt with libicu-4.0.1
  1245. - changed Group to System Environment/Libraries (except devel package)
  1246. * Sat Aug 16 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.36.0-1vl5
  1247. - new upstream release
  1248. - add -math subpackage
  1249. * Fri Aug 15 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.35.0-2vl5
  1250. - build with python-2.5
  1251. - add libboost_XXXX.so symlinks
  1252. * Thu May 8 2008 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.35.0-1vl5
  1253. - upstream release
  1254. - applied new versioning policy
  1255. - add EXPAT_INCLUDE and EXPAT_LIBPATH to enable GraphML support
  1256. - add new package libboost-system
  1257. - Obsolete: *-devel packages
  1258. * Sat Sep 8 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.34.1-0vl3
  1259. - rebuilt with libicu-3.6
  1260. - changed doc Group to Applications/Documentation
  1261. * Sat Aug 18 2007 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.34.1-0vl2
  1262. - upstream release
  1263. * Thu Jun 14 2007 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.34.0-0vl3
  1264. - add --libdir=%%{_libdir} to cope with x86_64 environment
  1265. * Sun Jun 10 2007 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.34.0-0vl2
  1266. - upstream release
  1267. - use Easy Build and Install process with ./configure
  1268. - add BuildRequires: libicu-devel
  1269. - remove %%{_libdir}/libboost_test_exec_monitor-*.so* from %%files -n libboost-test
  1270. - add new packages: libboost-graph, libboost-graph-devel, libboost-wave
  1271. - add files to doc package
  1272. * Sun May 13 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 1.33.1-0vl2
  1273. - rebuilt with new toolchain
  1274. * Sat Feb 4 2006 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.33.1-0vl1
  1275. - upstream release
  1276. * Mon Dec 12 2005 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.33.0-0vl3
  1277. - fixed typo in Groups:
  1278. - devel packages also moved to Development/Libraries group
  1279. * Mon Sep 19 2005 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 1.33.0-0vl2
  1280. - spec modified to avoid errors on non-ix86 archtecture
  1281. (previously the path linuxx86 was explicitly used)
  1282. * Sun Sep 11 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.33.0-0vl1
  1283. - initial release for Vine Linux
  1284. * Sat Sep 10 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.33.0-0vl0.3
  1285. - link /usr/include/boost_%{lnkver}/boost to /usr/include/boost
  1286. * Sat Sep 10 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.33.0-0vl0.2
  1287. - change package name from boost to libboost
  1288. - separated into sub-packages
  1289. * Fri Jun 17 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.33.0-0vl0.1
  1290. - upstream release
  1291. - add BuildRequires: bzip2-devel zlib-devel
  1292. * Fri Jun 17 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.7
  1293. - added so.* file
  1294. * Mon Apr 25 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.6
  1295. - moved %post, %postun script to -devel package
  1296. * Mon Apr 25 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.5
  1297. - moved doc/html to -devel package
  1298. - make a symbolic link on %{_includedir}/boost
  1299. * Mon Apr 25 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.4
  1300. - fixed character code to euc-jp
  1301. * Mon Apr 25 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.3
  1302. - add %doc files
  1303. * Fri Apr 22 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.2
  1304. - remove Requires
  1305. - split -devel package
  1306. * Fri Apr 22 2005 KANEKO Seiji <giraffe@m2.pbc.ne.jp> 1.32.0-0vl0.1
  1307. - initial build for Vine Linux