Re: [PROPOSED] [DISCUSS] Marketing FAS Requirements and Activities
by Brian Exelbierd
On 03/02/2016 01:22 PM, Joe Brockmeier wrote:
> Hey all,
>
> During the last two weeks' meetings, we discussed membership
> requirements and what it should take to be a member. I recall this
> coming up again and again, and recalled that it had already been decided
> once. The problem is it wasn't recorded!
>
> This is from an email in 2014 following Flock, when Chris Roberts was
> "marketing lead":
>
> [Begin Quote]
>
> During Flock we had a talk about being active contributors and
> membership in the FAS marketing group and we have come to the following:
>
> To stay active in the FAS group you have to make at least one
> contribution during a release schedule, if you have not made any
> contributions you will be removed from the FAS group.
>
> We have a lot of inactive members and when I did start to remove people,
> I got a lot of feedback from them saying why they were removed. This
> happens in the FI-Aprentice group where if you do not reply to an email
> each month you are removed. If you are removed from the group and would
> like to rejoin that is totally fine, we want to see contribution in
> order to be in the group.
>
> I will post this new information on our Marketing wiki page as well.
>
> [End Quote]
>
> Cite here: http://markmail.org/message/qghmwa3mlq745bxw
>
> So my proposal here is that we stick to what's already been agreed and
> stop re-re-discussing this.
>
> Note to people who say "but I was busy," "I got married that cycle," "I
> was in a coma..." - our response should be "that happens. Contribute
> this cycle, and we'll reinstate you," "congratulations! Contribute this
> cycle, and we'll reinstate you," and "wow! We're so glad you're OK.
> Contribute this cycle, and we'll reinstate you."
>
> In other words: No exceptions.
>
> ## What Constitutes a Contribution?
>
> OK, so maybe what constitutes a contribution is unclear. Let's start
> with what *isn't* something that gets you over the requirement:
>
> * Saying something on the mailing list.
>
> Just participating in a discussion on the list is *not* a contribution.
>
> So what are some of the things that are contributions?
>
> * Managing talking points for one or more editions, or parts of Fedora
> (a spin, a major feature, etc.).
>
> * Writing / compiling a release announcement - or contributing a large
> section to a release announcement. [Fixing a comma splice is not really
> a significant contribution. Managing a section on the Workstation
> Edition is.]
>
> * Working to create one or more flyers or information sheets for an
> edition, Fedora overall, etc.
>
> * Substantial work helping clean up the Marketing wiki.
>
> * Creating materials for Fedora Ambassadors for an event, or talking
> points for an event or events.
>
> * Any observable significant and useful contribution that moves Fedora
> Marketing forward during a release cycle.
>
> * Mentor and bring in new contributors to marketing. We should be
> totally good with granting membership to anybody who spends a lot of
> time teaching other people the ropes, even if that means their
> fingerprints are not as visible on the finished product as if they
> created it solo.
>
> ## Also Proposed
>
> I hope you've read this far - because I have one more proposal:
>
> * We edit the wiki to remove the "add yourself to the FAS group" bit.
>
> (This page:
> https://fedoraproject.org/wiki/Joining_the_Fedora_marketing_project)
>
> Thoughts, comments, flames?
As a non-member, this is exactly what I would want to read on the groups
wiki page. This is also exactly what I would expect. If I am not
active, I am not in the group. Membership isn't a sticker to be
collected for my laptop, it is a recognition of my contributions.
That said, it may be worth archiving who was members during which cycles
for some period to preserve historical recognition, especially if there
isn't an existing record like a commit log.
regards,
bex
8 years, 2 months
[PROPOSED] [DISCUSS] Marketing FAS Requirements and Activities
by Joe Brockmeier
Hey all,
During the last two weeks' meetings, we discussed membership
requirements and what it should take to be a member. I recall this
coming up again and again, and recalled that it had already been decided
once. The problem is it wasn't recorded!
This is from an email in 2014 following Flock, when Chris Roberts was
"marketing lead":
[Begin Quote]
During Flock we had a talk about being active contributors and
membership in the FAS marketing group and we have come to the following:
To stay active in the FAS group you have to make at least one
contribution during a release schedule, if you have not made any
contributions you will be removed from the FAS group.
We have a lot of inactive members and when I did start to remove people,
I got a lot of feedback from them saying why they were removed. This
happens in the FI-Aprentice group where if you do not reply to an email
each month you are removed. If you are removed from the group and would
like to rejoin that is totally fine, we want to see contribution in
order to be in the group.
I will post this new information on our Marketing wiki page as well.
[End Quote]
Cite here: http://markmail.org/message/qghmwa3mlq745bxw
So my proposal here is that we stick to what's already been agreed and
stop re-re-discussing this.
Note to people who say "but I was busy," "I got married that cycle," "I
was in a coma..." - our response should be "that happens. Contribute
this cycle, and we'll reinstate you," "congratulations! Contribute this
cycle, and we'll reinstate you," and "wow! We're so glad you're OK.
Contribute this cycle, and we'll reinstate you."
In other words: No exceptions.
## What Constitutes a Contribution?
OK, so maybe what constitutes a contribution is unclear. Let's start
with what *isn't* something that gets you over the requirement:
* Saying something on the mailing list.
Just participating in a discussion on the list is *not* a contribution.
So what are some of the things that are contributions?
* Managing talking points for one or more editions, or parts of Fedora
(a spin, a major feature, etc.).
* Writing / compiling a release announcement - or contributing a large
section to a release announcement. [Fixing a comma splice is not really
a significant contribution. Managing a section on the Workstation
Edition is.]
* Working to create one or more flyers or information sheets for an
edition, Fedora overall, etc.
* Substantial work helping clean up the Marketing wiki.
* Creating materials for Fedora Ambassadors for an event, or talking
points for an event or events.
* Any observable significant and useful contribution that moves Fedora
Marketing forward during a release cycle.
* Mentor and bring in new contributors to marketing. We should be
totally good with granting membership to anybody who spends a lot of
time teaching other people the ropes, even if that means their
fingerprints are not as visible on the finished product as if they
created it solo.
## Also Proposed
I hope you've read this far - because I have one more proposal:
* We edit the wiki to remove the "add yourself to the FAS group" bit.
(This page:
https://fedoraproject.org/wiki/Joining_the_Fedora_marketing_project)
Thoughts, comments, flames?
Best,
jzb
--
Joe Brockmeier | Community Team, OSAS
jzb(a)redhat.com | http://community.redhat.com/
Twitter: @jzb | http://dissociatedpress.net/
8 years, 2 months
Re: [Marketing] [PROPOSED] [DISCUSS] Marketing FAS Requirements and Activities
by Justin W. Flory
On 03/02/2016 07:22 AM, Joe Brockmeier wrote:
> Hey all,
>
> During the last two weeks' meetings, we discussed membership
> requirements and what it should take to be a member. I recall this
> coming up again and again, and recalled that it had already been decided
> once. The problem is it wasn't recorded!
>
> This is from an email in 2014 following Flock, when Chris Roberts was
> "marketing lead":
>
> [Begin Quote]
>
> During Flock we had a talk about being active contributors and
> membership in the FAS marketing group and we have come to the following:
>
> To stay active in the FAS group you have to make at least one
> contribution during a release schedule, if you have not made any
> contributions you will be removed from the FAS group.
>
> We have a lot of inactive members and when I did start to remove people,
> I got a lot of feedback from them saying why they were removed. This
> happens in the FI-Aprentice group where if you do not reply to an email
> each month you are removed. If you are removed from the group and would
> like to rejoin that is totally fine, we want to see contribution in
> order to be in the group.
>
> I will post this new information on our Marketing wiki page as well.
>
> [End Quote]
>
> Cite here: http://markmail.org/message/qghmwa3mlq745bxw
>
> So my proposal here is that we stick to what's already been agreed and
> stop re-re-discussing this.
>
> Note to people who say "but I was busy," "I got married that cycle," "I
> was in a coma..." - our response should be "that happens. Contribute
> this cycle, and we'll reinstate you," "congratulations! Contribute this
> cycle, and we'll reinstate you," and "wow! We're so glad you're OK.
> Contribute this cycle, and we'll reinstate you."
>
> In other words: No exceptions.
>
> ## What Constitutes a Contribution?
>
> OK, so maybe what constitutes a contribution is unclear. Let's start
> with what *isn't* something that gets you over the requirement:
>
> * Saying something on the mailing list.
>
> Just participating in a discussion on the list is *not* a contribution.
>
> So what are some of the things that are contributions?
>
> * Managing talking points for one or more editions, or parts of Fedora
> (a spin, a major feature, etc.).
>
> * Writing / compiling a release announcement - or contributing a large
> section to a release announcement. [Fixing a comma splice is not really
> a significant contribution. Managing a section on the Workstation
> Edition is.]
>
> * Working to create one or more flyers or information sheets for an
> edition, Fedora overall, etc.
>
> * Substantial work helping clean up the Marketing wiki.
>
> * Creating materials for Fedora Ambassadors for an event, or talking
> points for an event or events.
>
> * Any observable significant and useful contribution that moves Fedora
> Marketing forward during a release cycle.
>
> * Mentor and bring in new contributors to marketing. We should be
> totally good with granting membership to anybody who spends a lot of
> time teaching other people the ropes, even if that means their
> fingerprints are not as visible on the finished product as if they
> created it solo.
>
> ## Also Proposed
>
> I hope you've read this far - because I have one more proposal:
>
> * We edit the wiki to remove the "add yourself to the FAS group" bit.
>
> (This page:
> https://fedoraproject.org/wiki/Joining_the_Fedora_marketing_project)
>
> Thoughts, comments, flames?
I'm +1 to all of the suggestions here, as we discussed in the meeting.
For reference purposes, we agreed in the meeting to incorporate these
proposed discussions into the Marketing "Join" wiki page.
Thanks Joe for putting these together in a formal proposal! jzb++
--
Cheers,
Justin W. Flory
jflory7(a)gmail.com
8 years, 2 months
[Fedora-packaging] Re: Updating one-off contributions documentation
by Otto Urpelainen
Vít Ondruch kirjoitti 15.2.2021 klo 11.21:
>
> Dne 13. 02. 21 v 8:47 Otto Urpelainen napsal(a):
>> Hi,
>>
>> I would like to update the instructions for [One-off contributions][1]
>> to packages. First, they are outdated, there is no need for external Git
>> hosting since the anonymous checkout from src.fp.o method can now be
>> used.
>
> I think the anonymous checkouts are enabled for ages, but the problem is
> that without Fedora account with correct privileges, you cannot create
> the PR on src.fedoraproject.org.
Perhaps the set of required privileges has been relaxed recently, then.
Currently, the anonymous checkout method requires only creating a Fedora
account and maybe some configuration that you can do yourself. That is
how I started contributing to Fedora, and it worked.
>> Currently, the documnetation is in the wiki. Am I correct that this kind
>> of content should go to docs.fp.o? If so, I can make a pull request to
>> move it. Either the whole _Joint he package collection maintainers_
>> page, or just the one-off contributions section. Does anybody here know
>> what would be the correct course of action?
>
> If you open any documentation page, there is a link to "Want to help?
> Learn how to contribute to Fedora Docs." at the bottom. From there, you
> could get to:
>
> https://docs.fedoraproject.org/en-US/fedora-docs/contributing/adding-new-...
[Contributing to existing docs][1] would be more relevant, because the
content would fit well to [Quick Docs][2] that already has packaging
related articles.
However, that is beside the point. The reason why I ask here is that I
am unsure what is the correct location for this material. Both docs and
wiki have similar material. Wiki has more, but on the other hand wiki
declares right on the front page that is [not for documentation][3].
[1]:
https://docs.fedoraproject.org/en-US/fedora-docs/contributing/contributin...
[2]: https://docs.fedoraproject.org/en-US/quick-docs/
[3]: https://fedoraproject.org/wiki/Fedora_Project_Wiki#This_Wiki
>> Docs would be a better location for the one-off contributions section in
>> particular. If anyone needs that information, they likely do not have
>> the required groups in the Fedora Accounts to update the wiki. In case
>> they discover anything is wrong or missing. With docs, that is not a
>> problem, since the pull request method works there.
>
> Not sure if the idea was not that wiki is easier for adjustments,
> because if nothing else, you don't need anybody to approve the PR.
Yes, it is easier to update the wiki than the docs since the
fork-clone-commit-push-PR-review mechanism is not involved. But like I
already said above: "If anyone needs that information, they likely do
not have the required groups in the Fedora Accounts to update the wiki."
This was also my situation when I stated this thread, though I have been
added to a suitable group since then.
I think I will just update the existing wiki page. The wiki or docs
question seems muddy, so I think it is best to simply update the
content where is resides now.
3 years, 2 months
Re: [Marketing] [PROPOSED] [DISCUSS] Marketing FAS Requirements and Activities
by Davinia Siles
Hello everybody!
Looks like I am inactive. My apologies; my family problems drives me
crazy.. but I am reading you!.
Maybe there are people which FAS account is linked to a "dead emails
addresses". For example, this is my main email so maybe I don't say
anything but I am reading. Maybe you should send an email before to
eliminate a FAS account or a emila from the group the kind of "Y*ou have X
days to answer this email If don't you will be eliminated"*.
By the way... I am trying to enter inside in markmail.org I suppose the key
is the same as FAS Fedora account or... It is not?
Regards
Davinia
2016-03-02 13:22 GMT+01:00 Joe Brockmeier <jzb(a)redhat.com>:
> Hey all,
>
> During the last two weeks' meetings, we discussed membership
> requirements and what it should take to be a member. I recall this
> coming up again and again, and recalled that it had already been decided
> once. The problem is it wasn't recorded!
>
> This is from an email in 2014 following Flock, when Chris Roberts was
> "marketing lead":
>
> [Begin Quote]
>
> During Flock we had a talk about being active contributors and
> membership in the FAS marketing group and we have come to the following:
>
> To stay active in the FAS group you have to make at least one
> contribution during a release schedule, if you have not made any
> contributions you will be removed from the FAS group.
>
> We have a lot of inactive members and when I did start to remove people,
> I got a lot of feedback from them saying why they were removed. This
> happens in the FI-Aprentice group where if you do not reply to an email
> each month you are removed. If you are removed from the group and would
> like to rejoin that is totally fine, we want to see contribution in
> order to be in the group.
>
> I will post this new information on our Marketing wiki page as well.
>
> [End Quote]
>
> Cite here: http://markmail.org/message/qghmwa3mlq745bxw
>
> So my proposal here is that we stick to what's already been agreed and
> stop re-re-discussing this.
>
> Note to people who say "but I was busy," "I got married that cycle," "I
> was in a coma..." - our response should be "that happens. Contribute
> this cycle, and we'll reinstate you," "congratulations! Contribute this
> cycle, and we'll reinstate you," and "wow! We're so glad you're OK.
> Contribute this cycle, and we'll reinstate you."
>
> In other words: No exceptions.
>
> ## What Constitutes a Contribution?
>
> OK, so maybe what constitutes a contribution is unclear. Let's start
> with what *isn't* something that gets you over the requirement:
>
> * Saying something on the mailing list.
>
> Just participating in a discussion on the list is *not* a contribution.
>
> So what are some of the things that are contributions?
>
> * Managing talking points for one or more editions, or parts of Fedora
> (a spin, a major feature, etc.).
>
> * Writing / compiling a release announcement - or contributing a large
> section to a release announcement. [Fixing a comma splice is not really
> a significant contribution. Managing a section on the Workstation
> Edition is.]
>
> * Working to create one or more flyers or information sheets for an
> edition, Fedora overall, etc.
>
> * Substantial work helping clean up the Marketing wiki.
>
> * Creating materials for Fedora Ambassadors for an event, or talking
> points for an event or events.
>
> * Any observable significant and useful contribution that moves Fedora
> Marketing forward during a release cycle.
>
> * Mentor and bring in new contributors to marketing. We should be
> totally good with granting membership to anybody who spends a lot of
> time teaching other people the ropes, even if that means their
> fingerprints are not as visible on the finished product as if they
> created it solo.
>
> ## Also Proposed
>
> I hope you've read this far - because I have one more proposal:
>
> * We edit the wiki to remove the "add yourself to the FAS group" bit.
>
> (This page:
> https://fedoraproject.org/wiki/Joining_the_Fedora_marketing_project)
>
> Thoughts, comments, flames?
>
> Best,
>
> jzb
> --
> Joe Brockmeier | Community Team, OSAS
> jzb(a)redhat.com | http://community.redhat.com/
> Twitter: @jzb | http://dissociatedpress.net/
>
>
> --
> marketing mailing list
> marketing(a)lists.fedoraproject.org
> List info or to change your subscription:
> https://admin.fedoraproject.org/mailman/listinfo/marketing
>
--
*Davinia Siles Pardos**dasipar(a)fedoraproyect.org
<dasipar(a)fedoraproyect.org>* *daviniasiles(a)gmail.com
<daviniasiles(a)gmail.com>*
8 years, 2 months
Re: Want to get added into marketing/magazine group.
by Chris Roberts
Hi Sagar,
My name is Chris Roberts and I am one of the Marketing leads for the group. I would like to welcome you to the group to help out with the Marketing Tasks and Fedora Magazine. Currently you do not need to be in a FAS group to contribute. To get access to the group you would need to complete a contribute to the project either by writing an article or helping with a Marketing task. Note to stay in the FAS group once your in, requires you to make at least one contribution a release.
Currently we do not have any IRC meetings but we do meet up for issues that need attention. Most of our communication is over the mailing list.
To get started with the magazine, if you can add your self next to the authors on this wiki page:
http://fedoraproject.org/wiki/Magazine_Team
Also to create an account on the magazine follow this link and use your FAS id to create an account on the site, where you can write articles. We like to keep the Magazine about news with Fedora, and highligihts apps and updates on Fedora in the community, where Fedora Planet is the more blog/personal section to write.
http://fedoramagazine.org/wp-admin
As far as Fedora Marketing tasks, we use Trac to keep tasks that Marketing needs which can be found here:
http://fedoraproject.org/wiki/Marketing
If you need help feel free to reach out to me by email, or in irc as croberts.
Thanks.
Chris Roberts
----- Original Message -----
From: "Sagar Hani" <sagarhani33(a)gmail.com>
To: marketing(a)lists.fedoraproject.org
Sent: Monday, January 12, 2015 7:51:47 AM
Subject: Want to get added into marketing/magazine group.
Hey,
I'm Sagar Hani from Bangalore, India. I'm new to fedora community. Few days before I had attended the fedora 21 release party at Bangalore, India. The talks were very interesting which motivated me to start contributing to fedora projects. I wrote a blog post regarding my experience at the event [1]. I wanted to add this to planet fedora [2]. But, I came to know that. I can add my blog posts only If I'm in any of the fedora contributing group. So, I would take up document writing for fedora projects, writing articles for fedora magazine, promoting the fedora in my local region, designing badges for fedora. So, I request any one of you to add me in to any one of these groups. I promise that my contribution to fedora community will always be their forever.
[1] http://sagarhani.wordpress.com/2015/01/11/fedora-21-release-party-bangalo...
[2] https://planet.fedoraproject.org
My fedora wiki page : https://fedoraproject.org/wiki/User:Sagarhani
username : sagarhani
My FSA : https://admin.fedoraproject.org/accounts/home?_csrf_token=c46cc65b69ca57d...
Cheers,
Sagar Hani
--
marketing mailing list
marketing(a)lists.fedoraproject.org
List info or to change your subscription:
https://admin.fedoraproject.org/mailman/listinfo/marketing
9 years, 3 months
Re: How to just report/fix one mistake on the wiki?
by Matt McCutchen
Hi Petr,
Thanks so much for the information! Looks like the wikiedit group is
what I was looking for. Unfortunately, I'm now under contract with a
new employer that makes it unclear whether I can contribute to the
contributor docs, but I'll check back once this contract ends (end of
June).
Matt
On Tue, 2018-05-22 at 17:41 +0200, Petr Bokoc wrote:
> Hi Matt,
>
> Our contributor docs aren't really up to date at all. We're aware of the
> mess, it should hopefully change in the near future, but right now it's
> really bad as you found out.
>
> I added the missing link to the common bugs page, thanks for reporting it.
>
> Regarding wiki edit rights for any future contributions you might want
> to make: the requirement for a non-CLA group membership is unfortunate
> but it's here to stay, and yes, the docs group (and this list) seems
> like a good place to ask questions. The problem is, we just cleaned up
> the group maybe a month ago and removed something like 80% of all
> members because they were no longer active at all, and going forward
> we'd like to be able to rely on the people in that group being somewhat
> active, so I'm wary of adding people who state upfront they don't want
> to do that, although I do understand your situation.
>
> Anyway: there is a group called "wikiedit", a membership in that will
> give you wiki edit rights without any expectation of active
> participation, as far as I'm aware. Open an issue against the
> fedora-infrastructure repo on Pagure to gain access. Here's an example
> of such a ticket: https://pagure.io/fedora-infrastructure/issue/6841
>
> Hope that helps; let me know if I can do anything else for you.
>
> Petr
>
>
> On 05/20/2018 09:44 PM, Matt McCutchen wrote:
> > Dear docs team,
> >
> > I found a mistake on the wiki (Fedora 28 needs to be added to
> > https://fedoraproject.org/wiki/Common_bugs) and wanted to report or fix
> > it, but it looks like to fix it, I now need one non-CLA group. The
> > Docs group looked the most likely for this scenario, but based on
> > https://fedoraproject.org/wiki/Join_the_Docs_Project , it looks like
> > you expect an introduction and ongoing involvement, which I'm not
> > willing to commit to.
> > https://fedoraproject.org/wiki/Reporting_problems_with_Docs#I_found_a_pro...
> > didn't give me any help either.
> >
> > Is there a process for people who just want to report or fix one
> > mistake on the wiki? Have I missed a previous discussion of this? Or
> > should I pose the question elsewhere? I didn't find anything useful
> > here:
> >
> > https://www.google.com/search?q=what+group+to+join+if+I+just+want+to+cont...
> > https://lists.fedoraproject.org/archives/search?q=contribute+to+wiki
> > https://lists.fedoraproject.org/archives/search?q=contribute+to+wiki+group
> >
> > If you are willing to count this as my introduction and grant me access
> > (FAS mattmccutchen) without an expectation of ongoing involvement, I
> > will be happy to update the relevant places on the wiki. I've been
> > using Fedora for 13 years and have a modest history of useful wiki
> > contributions from before the restriction was introduced, though I've
> > never been involved deeply enough with anything to join a non-CLA
> > group:
> >
> > https://fedoraproject.org/w/index.php?title=Special%3AContributions&contr...
> >
> > However, my question stands what new users should do.
> >
> > Thanks for your attention!
> >
> > Matt
> > _______________________________________________
> > docs mailing list -- docs(a)lists.fedoraproject.org
> > To unsubscribe send an email to docs-leave(a)lists.fedoraproject.org
> > Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
> > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> > List Archives: https://lists.fedoraproject.org/archives/list/docs@lists.fedoraproject.or...
>
> _______________________________________________
> docs mailing list -- docs(a)lists.fedoraproject.org
> To unsubscribe send an email to docs-leave(a)lists.fedoraproject.org
> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives: https://lists.fedoraproject.org/archives/list/docs@lists.fedoraproject.or...
5 years, 11 months
[Fedora-packaging] Re: Updating one-off contributions documentation
by Vít Ondruch
Just looking at the Docs page, the most suitable place seems to be:
https://docs.fedoraproject.org/en-US/project/join/
However, if there was completely separate top level section such as "How
to contribute" > "Packaging" > "Joint the package collection
maintainers", I think this would give use also place for e.g.
"Package_Review_Process" which would be next natural candidate for move
from wiki.
Vít
Dne 15. 02. 21 v 20:24 Otto Urpelainen napsal(a):
> Vít Ondruch kirjoitti 15.2.2021 klo 11.21:
>>
>> Dne 13. 02. 21 v 8:47 Otto Urpelainen napsal(a):
>>> Hi,
>>>
>>> I would like to update the instructions for [One-off contributions][1]
>>> to packages. First, they are outdated, there is no need for external
>>> Git
>>> hosting since the anonymous checkout from src.fp.o method can now be
>>> used.
>>
>> I think the anonymous checkouts are enabled for ages, but the problem
>> is that without Fedora account with correct privileges, you cannot
>> create the PR on src.fedoraproject.org.
>
> Perhaps the set of required privileges has been relaxed recently, then.
> Currently, the anonymous checkout method requires only creating a Fedora
> account and maybe some configuration that you can do yourself. That is
> how I started contributing to Fedora, and it worked.
>
>>> Currently, the documnetation is in the wiki. Am I correct that this
>>> kind
>>> of content should go to docs.fp.o? If so, I can make a pull request to
>>> move it. Either the whole _Joint he package collection maintainers_
>>> page, or just the one-off contributions section. Does anybody here know
>>> what would be the correct course of action?
>>
>> If you open any documentation page, there is a link to "Want to help?
>> Learn how to contribute to Fedora Docs." at the bottom. From there,
>> you could get to:
>>
>> https://docs.fedoraproject.org/en-US/fedora-docs/contributing/adding-new-...
>
>
> [Contributing to existing docs][1] would be more relevant, because the
> content would fit well to [Quick Docs][2] that already has packaging
> related articles.
>
> However, that is beside the point. The reason why I ask here is that I
> am unsure what is the correct location for this material. Both docs and
> wiki have similar material. Wiki has more, but on the other hand wiki
> declares right on the front page that is [not for documentation][3].
>
> [1]:
> https://docs.fedoraproject.org/en-US/fedora-docs/contributing/contributin...
> [2]: https://docs.fedoraproject.org/en-US/quick-docs/
> [3]: https://fedoraproject.org/wiki/Fedora_Project_Wiki#This_Wiki
>
>>> Docs would be a better location for the one-off contributions
>>> section in
>>> particular. If anyone needs that information, they likely do not have
>>> the required groups in the Fedora Accounts to update the wiki. In case
>>> they discover anything is wrong or missing. With docs, that is not a
>>> problem, since the pull request method works there.
>>
>> Not sure if the idea was not that wiki is easier for adjustments,
>> because if nothing else, you don't need anybody to approve the PR.
>
> Yes, it is easier to update the wiki than the docs since the
> fork-clone-commit-push-PR-review mechanism is not involved. But like I
> already said above: "If anyone needs that information, they likely do
> not have the required groups in the Fedora Accounts to update the wiki."
> This was also my situation when I stated this thread, though I have been
> added to a suitable group since then.
>
> I think I will just update the existing wiki page. The wiki or docs
> question seems muddy, so I think it is best to simply update the
> content where is resides now.
3 years, 2 months
[Arch-excludes] Architecture specific change in rpms/nvml.git
by githook-noreply@fedoraproject.org
The package rpms/nvml.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/nvml.git/commit/?id=69c4e5835e2c5...
https://src.fedoraproject.org/cgit/rpms/nvml.git/commit/?id=4c9749f56c02c....
Change:
+ExclusiveArch: x86_64
-ExclusiveArch: x86_64
Thanks.
Full change:
============
commit 4c9749f56c02c79df3d3327986694d3a1c7151a7
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Fri Mar 30 11:44:27 2018 +0200
Temporarily revert package name change
diff --git a/.gitignore b/.gitignore
index 8e808ce..f9e5c64 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
/nvml-1.3.tar.gz
/nvml-1.3.1.tar.gz
/pmdk-1.4.tar.gz
+/nvml-1.4.tar.gz
diff --git a/nvml.spec b/nvml.spec
new file mode 100644
index 0000000..5bb41b4
--- /dev/null
+++ b/nvml.spec
@@ -0,0 +1,882 @@
+
+# rpmbuild options:
+# --with | --without fabric
+# --with | --without ndctl
+# --define _testconfig <path to custom testconfig.sh>
+
+# do not terminate build if files in the $RPM_BUILD_ROOT
+# directory are not found in %%files (without fabric case)
+%define _unpackaged_files_terminate_build 0
+
+# disable 'make check' on suse
+%if %{defined suse_version}
+ %define _skip_check 1
+ %define dist .suse%{suse_version}
+%endif
+
+%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
+%bcond_without fabric
+%else
+%bcond_with fabric
+%endif
+
+# by default build w/o ndctl, unless explicitly enabled
+%bcond_with ndctl
+
+%define min_libfabric_ver 1.4.2
+%define min_ndctl_ver 59.2
+
+Name: nvml
+Version: 1.4
+Release: 3%{?dist}
+Summary: Persistent Memory Development Kit (former NVML)
+License: BSD
+URL: http://pmem.io/pmdk
+
+Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
+
+BuildRequires: gcc
+BuildRequires: make
+BuildRequires: glibc-devel
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: man
+BuildRequires: pkgconfig
+BuildRequires: doxygen
+BuildRequires: gdb
+
+%if %{with ndctl}
+BuildRequires: ndctl-devel >= %{min_ndctl_ver}
+BuildRequires: daxctl-devel >= %{min_ndctl_ver}
+%endif
+
+%if %{with fabric}
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
+%endif
+
+
+# Debug variants of the libraries should be filtered out of the provides.
+%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
+
+# By design, PMDK does not support any 32-bit architecture.
+# Due to dependency on xmmintrin.h and some inline assembly, it can be
+# compiled only for x86_64 at the moment.
+# Other 64-bit architectures could also be supported, if only there is
+# a request for that, and if somebody provides the arch-specific
+# implementation of the low-level routines for flushing to persistent
+# memory.
+
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
+
+ExclusiveArch: x86_64
+
+%description
+The Persistent Memory Development Kit is a collection of libraries for
+using memory-mapped persistence, optimized specifically for persistent memory.
+
+
+%package -n libpmem
+Summary: Low-level persistent memory support library
+Group: System Environment/Libraries
+%description -n libpmem
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+%files -n libpmem
+%defattr(-,root,root,-)
+%dir %{_datadir}/pmdk
+%{_libdir}/libpmem.so.*
+%{_datadir}/pmdk/pmdk.magic
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-devel
+Summary: Development files for the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-devel
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This library is provided for software which tracks every store to
+pmem and needs to flush those changes to durability. Most developers
+will find higher level libraries like libpmemobj to be much more
+convenient.
+
+%files -n libpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmem.so
+%{_libdir}/pkgconfig/libpmem.pc
+%{_includedir}/libpmem.h
+%{_mandir}/man7/libpmem.7.gz
+%{_mandir}/man3/pmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-debug
+Summary: Debug variant of the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-debug
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmem.so
+%{_libdir}/pmdk_debug/libpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk
+Summary: Persistent Memory Resident Array of Blocks library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemblk
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+%files -n libpmemblk
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-devel
+Summary: Development files for the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemblk-devel
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+For example, a program keeping a cache of fixed-size objects in pmem
+might find this library useful. This library is provided for cases
+requiring large arrays of objects at least 512 bytes each. Most
+developers will find higher level libraries like libpmemobj to be
+more generally useful.
+
+%files -n libpmemblk-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so
+%{_libdir}/pkgconfig/libpmemblk.pc
+%{_includedir}/libpmemblk.h
+%{_mandir}/man7/libpmemblk.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemblk_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-debug
+Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+%description -n libpmemblk-debug
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemblk-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemblk.so
+%{_libdir}/pmdk_debug/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog
+Summary: Persistent Memory Resident Log File library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemlog
+The libpmemlog library provides a pmem-resident log file. This is
+useful for programs like databases that append frequently to a log
+file.
+
+%files -n libpmemlog
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-devel
+Summary: Development files for the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemlog-devel
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+%files -n libpmemlog-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so
+%{_libdir}/pkgconfig/libpmemlog.pc
+%{_includedir}/libpmemlog.h
+%{_mandir}/man7/libpmemlog.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemlog_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-debug
+Summary: Debug variant of the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+%description -n libpmemlog-debug
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemlog-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemlog.so
+%{_libdir}/pmdk_debug/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj
+Summary: Persistent Memory Transactional Object Store library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemobj
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+%files -n libpmemobj
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-devel
+Summary: Development files for the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemobj-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+%files -n libpmemobj-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so
+%{_libdir}/pkgconfig/libpmemobj.pc
+%{_includedir}/libpmemobj.h
+%{_includedir}/libpmemobj/*.h
+%{_mandir}/man7/libpmemobj.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemobj_*.3.gz
+%{_mandir}/man3/pobj_*.3.gz
+%{_mandir}/man3/oid_*.3.gz
+%{_mandir}/man3/toid*.3.gz
+%{_mandir}/man3/direct_*.3.gz
+%{_mandir}/man3/d_r*.3.gz
+%{_mandir}/man3/tx_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-debug
+Summary: Debug variant of the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+%description -n libpmemobj-debug
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemobj-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemobj.so
+%{_libdir}/pmdk_debug/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem
+Summary: Volatile Memory allocation library
+Group: System Environment/Libraries
+%description -n libvmem
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+%files -n libvmem
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-devel
+Summary: Development files for the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-devel
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains libraries and header files for developing
+applications that want to make use of libvmem.
+
+%files -n libvmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so
+%{_libdir}/pkgconfig/libvmem.pc
+%{_includedir}/libvmem.h
+%{_mandir}/man7/libvmem.7.gz
+%{_mandir}/man3/vmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-debug
+Summary: Debug variant of the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-debug
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmem.so
+%{_libdir}/pmdk_debug/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc
+Summary: Dynamic to Persistent Memory allocation translation library
+Group: System Environment/Libraries
+%description -n libvmmalloc
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+The typical usage of libvmmalloc is to load it via the LD_PRELOAD
+environment variable.
+
+%files -n libvmmalloc
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-devel
+Summary: Development files for the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-devel
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of libvmmalloc.
+
+%files -n libvmmalloc-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so
+%{_libdir}/pkgconfig/libvmmalloc.pc
+%{_includedir}/libvmmalloc.h
+%{_mandir}/man7/libvmmalloc.7.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-debug
+Summary: Debug variant of the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-debug
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmmalloc-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmmalloc.so
+%{_libdir}/pmdk_debug/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+# Specify a virtual Provide for libpmemobj++-static package, so the package
+# usage can be tracked.
+%package -n libpmemobj++-devel
+Summary: C++ bindings for Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Provides: libpmemobj++-static = %{version}-%{release}
+Requires: libpmemobj-devel = %{version}-%{release}
+%description -n libpmemobj++-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+This sub-package contains header files for libpmemobj C++ bindings.
+
+%files -n libpmemobj++-devel
+%defattr(-,root,root,-)
+%{_libdir}/pkgconfig/libpmemobj++.pc
+%{_includedir}/libpmemobj++/*.hpp
+%{_includedir}/libpmemobj++/detail/*.hpp
+%{_docdir}/libpmemobj++-devel/*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool
+Summary: Persistent Memory pool management library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmempool
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-devel
+Summary: Development files for Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmempool-devel
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so
+%{_libdir}/pkgconfig/libpmempool.pc
+%{_includedir}/libpmempool.h
+%{_mandir}/man7/libpmempool.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmempool_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-debug
+Summary: Debug variant of the Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+%description -n libpmempool-debug
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmempool-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmempool.so
+%{_libdir}/pmdk_debug/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with fabric}
+
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man7/librpmem.7.gz
+%{_mandir}/man3/rpmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/librpmem.so
+%{_libdir}/pmdk_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+%endif # _with_fabric
+
+
+%package -n libpmemcto
+Summary: Close-to-Open Persistence library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemcto
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-devel
+Summary: Development files for Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemcto-devel
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so
+%{_libdir}/pkgconfig/libpmemcto.pc
+%{_includedir}/libpmemcto.h
+%{_mandir}/man7/libpmemcto.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemcto*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-debug
+Summary: Debug variant of the Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+%description -n libpmemcto-debug
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemcto-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemcto.so
+%{_libdir}/pmdk_debug/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n pmempool
+Summary: Utilities for Persistent Memory
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+Requires: libpmemlog >= %{version}-%{release}
+Requires: libpmemblk >= %{version}-%{release}
+Requires: libpmemobj >= %{version}-%{release}
+Requires: libpmempool >= %{version}-%{release}
+Requires: libpmemcto >= %{version}-%{release}
+Obsoletes: nvml-tools < %{version}-%{release}
+%description -n pmempool
+The pmempool is a standalone utility for management and off-line analysis
+of Persistent Memory pools created by PMDK libraries. It provides a set
+of utilities for administration and diagnostics of Persistent Memory pools.
+The pmempool may be useful for troubleshooting by system administrators
+and users of the applications based on PMDK libraries.
+
+%files -n pmempool
+%{_bindir}/pmempool
+%{_mandir}/man1/pmempool.1.gz
+%{_mandir}/man1/pmempool-*.1.gz
+%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with ndctl}
+
+%package -n daxio
+Summary: Perform I/O on Device DAX devices or zero a Device DAX device
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+%description -n daxio
+The daxio utility performs I/O on Device DAX devices or zero
+a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
+with Device DAX, data transfer is performed on a memory-mapped device.
+The daxio may be used to dump Device DAX data to a file, restore data from
+a backup copy, move/copy data to another device or to erase data from
+a device.
+
+%files -n daxio
+%{_bindir}/daxio
+%{_mandir}/man1/daxio.1.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+%endif # _with_ndctl
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%build
+# For debug build default flags may be overriden to disable compiler
+# optimizations.
+CFLAGS="%{optflags}" \
+LDFLAGS="%{?__global_ldflags}" \
+make %{?_smp_mflags} NORPATH=1
+
+
+# Override LIB_AR with empty string to skip installation of static libraries
+%install
+make install DESTDIR=%{buildroot} \
+ LIB_AR= \
+ prefix=%{_prefix} \
+ libdir=%{_libdir} \
+ includedir=%{_includedir} \
+ mandir=%{_mandir} \
+ bindir=%{_bindir} \
+ sysconfdir=%{_sysconfdir} \
+ docdir=%{_docdir} \
+ CPP_DOC_DIR=libpmemobj++-devel
+mkdir -p %{buildroot}%{_datadir}/pmdk
+cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
+
+
+
+%check
+%if 0%{?_skip_check} == 1
+ echo "Check skipped"
+%else
+ %if %{defined _testconfig}
+ cp %{_testconfig} src/test/testconfig.sh
+ %else
+ echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+ echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
+ %endif
+ make check
+%endif
+
+%post -n libpmem -p /sbin/ldconfig
+%postun -n libpmem -p /sbin/ldconfig
+%post -n libpmemblk -p /sbin/ldconfig
+%postun -n libpmemblk -p /sbin/ldconfig
+%post -n libpmemlog -p /sbin/ldconfig
+%postun -n libpmemlog -p /sbin/ldconfig
+%post -n libpmemobj -p /sbin/ldconfig
+%postun -n libpmemobj -p /sbin/ldconfig
+%post -n libvmem -p /sbin/ldconfig
+%postun -n libvmem -p /sbin/ldconfig
+%post -n libvmmalloc -p /sbin/ldconfig
+%postun -n libvmmalloc -p /sbin/ldconfig
+%post -n libpmempool -p /sbin/ldconfig
+%postun -n libpmempool -p /sbin/ldconfig
+%post -n libpmemcto -p /sbin/ldconfig
+%postun -n libpmemcto -p /sbin/ldconfig
+
+%if %{with fabric}
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
+%endif
+
+%if 0%{?__debug_package} == 0
+%debug_package
+%endif
+
+
+%changelog
+* Fri Mar 30 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-3
+- Revert package name change
+- Re-enable check
+
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
+- Fix issues found by rpmlint
+
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
+- Rename NVML project to PMDK
+- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
+
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
+* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
+- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
+
+* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
+- Update to NVML version 1.2.1 (RHBZ #1425038)
+
+* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
+- Fix compilation under gcc 7.0.x (RHBZ #1424004)
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
+- Update to NVML version 1.2 (RHBZ #1383467)
+- Add libpmemobj C++ bindings
+
+* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
+- Add missing package version requirements
+
+* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
+- Move debug variants of the libraries to -debug subpackages
+
+* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
+- NVML 1.1 release
+- Update link to source tarball
+- Add libpmempool subpackage
+- Remove obsolete patches
+
+* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
+- switch to ExclusiveArch
+
+* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
+- Exclude PPC architecture
+- Add bug numbers for excluded architectures
+
+* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
+- Initial RPM release
diff --git a/pmdk.spec b/pmdk.spec
deleted file mode 100644
index 5aebf71..0000000
--- a/pmdk.spec
+++ /dev/null
@@ -1,880 +0,0 @@
-
-# rpmbuild options:
-# --with | --without fabric
-# --with | --without ndctl
-# --define "_testconfig <path to custom testconfig.sh or 'default'>"
-# --define "_check <1|0>" - run make check or not
-#
-
-# do not terminate build if files in the $RPM_BUILD_ROOT
-# directory are not found in %%files (without fabric case)
-%define _unpackaged_files_terminate_build 0
-
-# disable 'make check' on suse
-%if %{defined suse_version}
- %define _check 0
- %define dist .suse%{suse_version}
-%endif
-
-%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
-%bcond_without fabric
-%else
-%bcond_with fabric
-%endif
-
-# by default build w/o ndctl, unless explicitly enabled
-%bcond_with ndctl
-
-%define min_libfabric_ver 1.4.2
-%define min_ndctl_ver 59.2
-
-Name: pmdk
-Version: 1.4
-Release: 2%{?dist}
-Summary: Persistent Memory Development Kit
-License: BSD
-URL: http://pmem.io/pmdk
-
-Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
-
-BuildRequires: gcc
-BuildRequires: make
-BuildRequires: glibc-devel
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: man
-BuildRequires: pkgconfig
-BuildRequires: doxygen
-BuildRequires: gdb
-
-%if %{with ndctl}
-BuildRequires: ndctl-devel >= %{min_ndctl_ver}
-BuildRequires: daxctl-devel >= %{min_ndctl_ver}
-%endif
-
-%if %{with fabric}
-BuildRequires: libfabric-devel >= %{min_libfabric_ver}
-%endif
-
-
-# Debug variants of the libraries should be filtered out of the provides.
-%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
-
-# By design, PMDK does not support any 32-bit architecture.
-# Due to dependency on xmmintrin.h and some inline assembly, it can be
-# compiled only for x86_64 at the moment.
-# Other 64-bit architectures could also be supported, if only there is
-# a request for that, and if somebody provides the arch-specific
-# implementation of the low-level routines for flushing to persistent
-# memory.
-
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
-
-ExclusiveArch: x86_64
-
-%description
-The Persistent Memory Development Kit is a collection of libraries for
-using memory-mapped persistence, optimized specifically for persistent memory.
-
-
-%package -n libpmem
-Summary: Low-level persistent memory support library
-Group: System Environment/Libraries
-%description -n libpmem
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-%files -n libpmem
-%defattr(-,root,root,-)
-%dir %{_datadir}/pmdk
-%{_libdir}/libpmem.so.*
-%{_datadir}/pmdk/pmdk.magic
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-devel
-Summary: Development files for the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-devel
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This library is provided for software which tracks every store to
-pmem and needs to flush those changes to durability. Most developers
-will find higher level libraries like libpmemobj to be much more
-convenient.
-
-%files -n libpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmem.so
-%{_libdir}/pkgconfig/libpmem.pc
-%{_includedir}/libpmem.h
-%{_mandir}/man7/libpmem.7.gz
-%{_mandir}/man3/pmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-debug
-Summary: Debug variant of the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-debug
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmem.so
-%{_libdir}/pmdk_debug/libpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk
-Summary: Persistent Memory Resident Array of Blocks library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemblk
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-%files -n libpmemblk
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-devel
-Summary: Development files for the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemblk-devel
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-For example, a program keeping a cache of fixed-size objects in pmem
-might find this library useful. This library is provided for cases
-requiring large arrays of objects at least 512 bytes each. Most
-developers will find higher level libraries like libpmemobj to be
-more generally useful.
-
-%files -n libpmemblk-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so
-%{_libdir}/pkgconfig/libpmemblk.pc
-%{_includedir}/libpmemblk.h
-%{_mandir}/man7/libpmemblk.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemblk_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-debug
-Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-%description -n libpmemblk-debug
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemblk-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemblk.so
-%{_libdir}/pmdk_debug/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog
-Summary: Persistent Memory Resident Log File library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemlog
-The libpmemlog library provides a pmem-resident log file. This is
-useful for programs like databases that append frequently to a log
-file.
-
-%files -n libpmemlog
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-devel
-Summary: Development files for the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemlog-devel
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-%files -n libpmemlog-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so
-%{_libdir}/pkgconfig/libpmemlog.pc
-%{_includedir}/libpmemlog.h
-%{_mandir}/man7/libpmemlog.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemlog_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-debug
-Summary: Debug variant of the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-%description -n libpmemlog-debug
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemlog-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemlog.so
-%{_libdir}/pmdk_debug/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj
-Summary: Persistent Memory Transactional Object Store library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemobj
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-%files -n libpmemobj
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-devel
-Summary: Development files for the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemobj-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-%files -n libpmemobj-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so
-%{_libdir}/pkgconfig/libpmemobj.pc
-%{_includedir}/libpmemobj.h
-%{_includedir}/libpmemobj/*.h
-%{_mandir}/man7/libpmemobj.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemobj_*.3.gz
-%{_mandir}/man3/pobj_*.3.gz
-%{_mandir}/man3/oid_*.3.gz
-%{_mandir}/man3/toid*.3.gz
-%{_mandir}/man3/direct_*.3.gz
-%{_mandir}/man3/d_r*.3.gz
-%{_mandir}/man3/tx_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-debug
-Summary: Debug variant of the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-%description -n libpmemobj-debug
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemobj-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemobj.so
-%{_libdir}/pmdk_debug/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem
-Summary: Volatile Memory allocation library
-Group: System Environment/Libraries
-%description -n libvmem
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-%files -n libvmem
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-devel
-Summary: Development files for the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-devel
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains libraries and header files for developing
-applications that want to make use of libvmem.
-
-%files -n libvmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so
-%{_libdir}/pkgconfig/libvmem.pc
-%{_includedir}/libvmem.h
-%{_mandir}/man7/libvmem.7.gz
-%{_mandir}/man3/vmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-debug
-Summary: Debug variant of the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-debug
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libvmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libvmem.so
-%{_libdir}/pmdk_debug/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc
-Summary: Dynamic to Persistent Memory allocation translation library
-Group: System Environment/Libraries
-%description -n libvmmalloc
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-The typical usage of libvmmalloc is to load it via the LD_PRELOAD
-environment variable.
-
-%files -n libvmmalloc
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-devel
-Summary: Development files for the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-devel
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of libvmmalloc.
-
-%files -n libvmmalloc-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so
-%{_libdir}/pkgconfig/libvmmalloc.pc
-%{_includedir}/libvmmalloc.h
-%{_mandir}/man7/libvmmalloc.7.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-debug
-Summary: Debug variant of the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-debug
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libvmmalloc-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libvmmalloc.so
-%{_libdir}/pmdk_debug/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-# Specify a virtual Provide for libpmemobj++-static package, so the package
-# usage can be tracked.
-%package -n libpmemobj++-devel
-Summary: C++ bindings for Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Provides: libpmemobj++-static = %{version}-%{release}
-Requires: libpmemobj-devel = %{version}-%{release}
-%description -n libpmemobj++-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-This sub-package contains header files for libpmemobj C++ bindings.
-
-%files -n libpmemobj++-devel
-%defattr(-,root,root,-)
-%{_libdir}/pkgconfig/libpmemobj++.pc
-%{_includedir}/libpmemobj++/*.hpp
-%{_includedir}/libpmemobj++/detail/*.hpp
-%{_docdir}/libpmemobj++-devel/*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool
-Summary: Persistent Memory pool management library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmempool
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-devel
-Summary: Development files for Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmempool-devel
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so
-%{_libdir}/pkgconfig/libpmempool.pc
-%{_includedir}/libpmempool.h
-%{_mandir}/man7/libpmempool.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmempool_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-debug
-Summary: Debug variant of the Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-%description -n libpmempool-debug
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmempool-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmempool.so
-%{_libdir}/pmdk_debug/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%if %{with fabric}
-
-%package -n librpmem
-Summary: Remote Access to Persistent Memory library
-Group: System Environment/Libraries
-Requires: libfabric >= %{min_libfabric_ver}
-Requires: openssh-clients
-%description -n librpmem
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-%files -n librpmem
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-devel
-Summary: Development files for the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-devel
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of librpmem.
-
-%files -n librpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so
-%{_libdir}/pkgconfig/librpmem.pc
-%{_includedir}/librpmem.h
-%{_mandir}/man7/librpmem.7.gz
-%{_mandir}/man3/rpmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-debug
-Summary: Debug variant of the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-debug
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n librpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/librpmem.so
-%{_libdir}/pmdk_debug/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n rpmemd
-Group: System Environment/Base
-Summary: Target node process executed by librpmem
-Requires: libfabric >= %{min_libfabric_ver}
-%description -n rpmemd
-The rpmemd process is executed on a target node by librpmem library
-and facilitates access to persistent memory over RDMA.
-
-%files -n rpmemd
-%{_bindir}/rpmemd
-%{_mandir}/man1/rpmemd.1.gz
-
-%endif # _with_fabric
-
-
-%package -n libpmemcto
-Summary: Close-to-Open Persistence library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemcto
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-%files -n libpmemcto
-%defattr(-,root,root,-)
-%{_libdir}/libpmemcto.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemcto-devel
-Summary: Development files for Close-to-Open Persistence library
-Group: Development/Libraries
-Requires: libpmemcto = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemcto-devel
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-%files -n libpmemcto-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemcto.so
-%{_libdir}/pkgconfig/libpmemcto.pc
-%{_includedir}/libpmemcto.h
-%{_mandir}/man7/libpmemcto.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemcto*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemcto-debug
-Summary: Debug variant of the Close-to-Open Persistence library
-Group: Development/Libraries
-Requires: libpmemcto = %{version}-%{release}
-%description -n libpmemcto-debug
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemcto-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemcto.so
-%{_libdir}/pmdk_debug/libpmemcto.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n pmempool
-Summary: Utilities for Persistent Memory
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-Requires: libpmemlog >= %{version}-%{release}
-Requires: libpmemblk >= %{version}-%{release}
-Requires: libpmemobj >= %{version}-%{release}
-Requires: libpmempool >= %{version}-%{release}
-Requires: libpmemcto >= %{version}-%{release}
-Obsoletes: nvml-tools < %{version}-%{release}
-%description -n pmempool
-The pmempool is a standalone utility for management and off-line analysis
-of Persistent Memory pools created by PMDK libraries. It provides a set
-of utilities for administration and diagnostics of Persistent Memory pools.
-The pmempool may be useful for troubleshooting by system administrators
-and users of the applications based on PMDK libraries.
-
-%files -n pmempool
-%{_bindir}/pmempool
-%{_mandir}/man1/pmempool.1.gz
-%{_mandir}/man1/pmempool-*.1.gz
-%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%if %{with ndctl}
-
-%package -n daxio
-Summary: Perform I/O on Device DAX devices or zero a Device DAX device
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-%description -n daxio
-The daxio utility performs I/O on Device DAX devices or zero
-a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
-with Device DAX, data transfer is performed on a memory-mapped device.
-The daxio may be used to dump Device DAX data to a file, restore data from
-a backup copy, move/copy data to another device or to erase data from
-a device.
-
-%files -n daxio
-%{_bindir}/daxio
-%{_mandir}/man1/daxio.1.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-%endif # _with_ndctl
-
-
-%prep
-%setup -q -n %{name}-%{version}
-
-
-%build
-# For debug build default flags may be overriden to disable compiler
-# optimizations.
-CFLAGS="%{optflags}" \
-LDFLAGS="%{?__global_ldflags}" \
-make %{?_smp_mflags} NORPATH=1
-
-
-# Override LIB_AR with empty string to skip installation of static libraries
-%install
-make install DESTDIR=%{buildroot} \
- LIB_AR= \
- prefix=%{_prefix} \
- libdir=%{_libdir} \
- includedir=%{_includedir} \
- mandir=%{_mandir} \
- bindir=%{_bindir} \
- sysconfdir=%{_sysconfdir} \
- docdir=%{_docdir} \
- CPP_DOC_DIR=libpmemobj++-devel
-mkdir -p %{buildroot}%{_datadir}/pmdk
-cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
-
-
-
-%check
-%if "%{_check}" == "1"
- %if "%{_testconfig}" != "default"
- cp %{_testconfig} src/test/testconfig.sh
- %else
- echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
- echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
- %endif
- make check
-%else
- echo "Check skipped"
-%endif
-
-%post -n libpmem -p /sbin/ldconfig
-%postun -n libpmem -p /sbin/ldconfig
-%post -n libpmemblk -p /sbin/ldconfig
-%postun -n libpmemblk -p /sbin/ldconfig
-%post -n libpmemlog -p /sbin/ldconfig
-%postun -n libpmemlog -p /sbin/ldconfig
-%post -n libpmemobj -p /sbin/ldconfig
-%postun -n libpmemobj -p /sbin/ldconfig
-%post -n libvmem -p /sbin/ldconfig
-%postun -n libvmem -p /sbin/ldconfig
-%post -n libvmmalloc -p /sbin/ldconfig
-%postun -n libvmmalloc -p /sbin/ldconfig
-%post -n libpmempool -p /sbin/ldconfig
-%postun -n libpmempool -p /sbin/ldconfig
-%post -n libpmemcto -p /sbin/ldconfig
-%postun -n libpmemcto -p /sbin/ldconfig
-
-%if %{with fabric}
-%post -n librpmem -p /sbin/ldconfig
-%postun -n librpmem -p /sbin/ldconfig
-%endif
-
-%if 0%{?__debug_package} == 0
-%debug_package
-%endif
-
-
-%changelog
-* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
-- Fix issues found by rpmlint
-
-* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
-- Rename NVML project to PMDK
-- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
-
-* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
-- Update to NVML version 1.3.1 (RHBZ #1480578)
-
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
-- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
-- Add librpmem and rpmemd sub-packages
-- Force file system to appear as PMEM for make check
-
-* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
-- Update to NVML version 1.2.3 (RHBZ #1451741)
-
-* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
-- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
-
-* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
-- Update to NVML version 1.2.1 (RHBZ #1425038)
-
-* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
-- Fix compilation under gcc 7.0.x (RHBZ #1424004)
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
-- Update to NVML version 1.2 (RHBZ #1383467)
-- Add libpmemobj C++ bindings
-
-* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
-- Add missing package version requirements
-
-* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
-- Move debug variants of the libraries to -debug subpackages
-
-* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
-- NVML 1.1 release
-- Update link to source tarball
-- Add libpmempool subpackage
-- Remove obsolete patches
-
-* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
-- switch to ExclusiveArch
-
-* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
-- Exclude PPC architecture
-- Add bug numbers for excluded architectures
-
-* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
-- Initial RPM release
diff --git a/sources b/sources
index 087d117..f7c359f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (pmdk-1.4.tar.gz) = 95dbea9acfea4a6cb433a25f56f7484946a93fbce1c5e0e1d6ff36e0824e3e0e9f28f37024918998358f8ff12e69d0902fcf88357b9ad12695f32e06e86ffac8
+SHA512 (nvml-1.4.tar.gz) = 80065f954383ff75091ded14b17e32019ade6bbac9d5cd634331516d8253a0cf1689335a1a9e418e42a34e01d162bff7f76f96ae488115d9016a91d34f6fda5c
commit bf94a0ea0d87ee562e1e3256f704fefe74ae97d5
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Thu Mar 29 21:26:59 2018 +0200
Fix issues found by rpmlint
diff --git a/pmdk.spec b/pmdk.spec
index dee0362..5aebf71 100644
--- a/pmdk.spec
+++ b/pmdk.spec
@@ -7,7 +7,7 @@
#
# do not terminate build if files in the $RPM_BUILD_ROOT
-# directory are not found in the %files (without fabric case)
+# directory are not found in %%files (without fabric case)
%define _unpackaged_files_terminate_build 0
# disable 'make check' on suse
@@ -30,7 +30,7 @@
Name: pmdk
Version: 1.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Persistent Memory Development Kit
License: BSD
URL: http://pmem.io/pmdk
@@ -704,7 +704,7 @@ Requires: libpmemblk >= %{version}-%{release}
Requires: libpmemobj >= %{version}-%{release}
Requires: libpmempool >= %{version}-%{release}
Requires: libpmemcto >= %{version}-%{release}
-Obsoletes: nvml-tools
+Obsoletes: nvml-tools < %{version}-%{release}
%description -n pmempool
The pmempool is a standalone utility for management and off-line analysis
of Persistent Memory pools created by PMDK libraries. It provides a set
@@ -814,6 +814,9 @@ cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
%changelog
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
+- Fix issues found by rpmlint
+
* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
- Rename NVML project to PMDK
- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
commit 69c4e5835e2c5e23e44e6ade250ea4beada91cf0
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Thu Mar 29 21:13:43 2018 +0200
PMDK 1.4 release
diff --git a/.gitignore b/.gitignore
index bd78bc5..8e808ce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/nvml-1.2.3.tar.gz
/nvml-1.3.tar.gz
/nvml-1.3.1.tar.gz
+/pmdk-1.4.tar.gz
diff --git a/nvml.spec b/nvml.spec
deleted file mode 100644
index 86f5c86..0000000
--- a/nvml.spec
+++ /dev/null
@@ -1,720 +0,0 @@
-
-Name: nvml
-Version: 1.3.1
-Release: 2%{?dist}
-Summary: Non-Volatile Memory Library
-License: BSD
-URL: http://pmem.io/nvml
-Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
-
-BuildRequires: glibc-devel
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: man
-BuildRequires: pkgconfig
-BuildRequires: doxygen
-BuildRequires: gdb
-
-%define min_libfabric_ver 1.4.2
-BuildRequires: libfabric-devel >= %{min_libfabric_ver}
-
-
-# Debug variants of the libraries should be filtered out of the provides.
-%global __provides_exclude_from ^%{_libdir}/nvml_debug/.*\\.so.*$
-
-# By design, NVML does not support any 32-bit architecture.
-# Due to dependency on xmmintrin.h and some inline assembly, it can be
-# compiled only for x86_64 at the moment.
-# Other 64-bit architectures could also be supported, if only there is
-# a request for that, and if somebody provides the arch-specific
-# implementation of the low-level routines for flushing to persistent
-# memory.
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
-ExclusiveArch: x86_64
-
-%description
-The NVM Library is a collection of libraries for using memory-mapped
-persistence, optimized specifically for persistent memory.
-
-
-%package -n libpmem
-Summary: Low-level persistent memory support library
-Group: System Environment/Libraries
-%description -n libpmem
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-%files -n libpmem
-%defattr(-,root,root,-)
-%dir %{_datadir}/nvml
-%{_libdir}/libpmem.so.*
-%{_datadir}/nvml/nvml.magic
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-devel
-Summary: Development files for the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-devel
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This library is provided for software which tracks every store to
-pmem and needs to flush those changes to durability. Most developers
-will find higher level libraries like libpmemobj to be much more
-convenient.
-
-%files -n libpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmem.so
-%{_libdir}/pkgconfig/libpmem.pc
-%{_includedir}/libpmem.h
-%{_mandir}/man3/libpmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-debug
-Summary: Debug variant of the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-debug
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmem.so
-%{_libdir}/nvml_debug/libpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk
-Summary: Persistent Memory Resident Array of Blocks library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemblk
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-%files -n libpmemblk
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-devel
-Summary: Development files for the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemblk-devel
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-For example, a program keeping a cache of fixed-size objects in pmem
-might find this library useful. This library is provided for cases
-requiring large arrays of objects at least 512 bytes each. Most
-developers will find higher level libraries like libpmemobj to be
-more generally useful.
-
-%files -n libpmemblk-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so
-%{_libdir}/pkgconfig/libpmemblk.pc
-%{_includedir}/libpmemblk.h
-%{_mandir}/man3/libpmemblk.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-debug
-Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-%description -n libpmemblk-debug
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemblk-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemblk.so
-%{_libdir}/nvml_debug/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog
-Summary: Persistent Memory Resident Log File library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemlog
-The libpmemlog library provides a pmem-resident log file. This is
-useful for programs like databases that append frequently to a log
-file.
-
-%files -n libpmemlog
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-devel
-Summary: Development files for the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemlog-devel
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-%files -n libpmemlog-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so
-%{_libdir}/pkgconfig/libpmemlog.pc
-%{_includedir}/libpmemlog.h
-%{_mandir}/man3/libpmemlog.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-debug
-Summary: Debug variant of the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-%description -n libpmemlog-debug
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemlog-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemlog.so
-%{_libdir}/nvml_debug/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj
-Summary: Persistent Memory Transactional Object Store library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemobj
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-%files -n libpmemobj
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-devel
-Summary: Development files for the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemobj-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-%files -n libpmemobj-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so
-%{_libdir}/pkgconfig/libpmemobj.pc
-%{_includedir}/libpmemobj.h
-%{_includedir}/libpmemobj/*.h
-%{_mandir}/man3/libpmemobj.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-debug
-Summary: Debug variant of the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-%description -n libpmemobj-debug
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemobj-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemobj.so
-%{_libdir}/nvml_debug/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem
-Summary: Volatile Memory allocation library
-Group: System Environment/Libraries
-%description -n libvmem
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-%files -n libvmem
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-devel
-Summary: Development files for the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-devel
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains libraries and header files for developing
-applications that want to make use of libvmem.
-
-%files -n libvmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so
-%{_libdir}/pkgconfig/libvmem.pc
-%{_includedir}/libvmem.h
-%{_mandir}/man3/libvmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-debug
-Summary: Debug variant of the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-debug
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libvmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libvmem.so
-%{_libdir}/nvml_debug/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc
-Summary: Dynamic to Persistent Memory allocation translation library
-Group: System Environment/Libraries
-%description -n libvmmalloc
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-The typical usage of libvmmalloc is to load it via the LD_PRELOAD
-environment variable.
-
-%files -n libvmmalloc
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-devel
-Summary: Development files for the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-devel
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of libvmmalloc.
-
-%files -n libvmmalloc-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so
-%{_libdir}/pkgconfig/libvmmalloc.pc
-%{_includedir}/libvmmalloc.h
-%{_mandir}/man3/libvmmalloc.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-debug
-Summary: Debug variant of the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-debug
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libvmmalloc-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libvmmalloc.so
-%{_libdir}/nvml_debug/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-# Specify a virtual Provide for libpmemobj++-static package, so the package
-# usage can be tracked.
-%package -n libpmemobj++-devel
-Summary: C++ bindings for Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Provides: libpmemobj++-static = %{version}-%{release}
-Requires: libpmemobj-devel = %{version}-%{release}
-%description -n libpmemobj++-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-This sub-package contains header files for libpmemobj C++ bindings.
-
-%files -n libpmemobj++-devel
-%defattr(-,root,root,-)
-%{_libdir}/pkgconfig/libpmemobj++.pc
-%{_includedir}/libpmemobj++/*.hpp
-%{_includedir}/libpmemobj++/detail/*.hpp
-%{_docdir}/libpmemobj++-devel/*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool
-Summary: Persistent Memory pool management library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmempool
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-devel
-Summary: Development files for Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmempool-devel
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so
-%{_libdir}/pkgconfig/libpmempool.pc
-%{_includedir}/libpmempool.h
-%{_mandir}/man3/libpmempool.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-debug
-Summary: Debug variant of the Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-%description -n libpmempool-debug
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmempool-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmempool.so
-%{_libdir}/nvml_debug/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem
-Summary: Remote Access to Persistent Memory library
-Group: System Environment/Libraries
-Requires: libfabric >= %{min_libfabric_ver}
-Requires: openssh-clients
-%description -n librpmem
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-%files -n librpmem
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-devel
-Summary: Development files for the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-devel
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of librpmem.
-
-%files -n librpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so
-%{_libdir}/pkgconfig/librpmem.pc
-%{_includedir}/librpmem.h
-%{_mandir}/man3/librpmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-debug
-Summary: Debug variant of the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-debug
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n librpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/librpmem.so
-%{_libdir}/nvml_debug/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n rpmemd
-Group: System Environment/Base
-Summary: Target node process executed by librpmem
-Requires: libfabric >= %{min_libfabric_ver}
-%description -n rpmemd
-The rpmemd process is executed on a target node by librpmem library
-and facilitates access to persistent memory over RDMA.
-
-%files -n rpmemd
-%{_bindir}/rpmemd
-%{_mandir}/man1/rpmemd.1.gz
-
-
-%package tools
-Summary: Utilities for Persistent Memory
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-Requires: libpmemlog >= %{version}-%{release}
-Requires: libpmemblk >= %{version}-%{release}
-Requires: libpmemobj >= %{version}-%{release}
-Requires: libpmempool >= %{version}-%{release}
-%description tools
-Useful applications for administration and diagnosis of persistent memory.
-
-%files tools
-%{_bindir}/pmempool
-%{_mandir}/man1/pmempool.1.gz
-%{_mandir}/man1/pmempool-check.1.gz
-%{_mandir}/man1/pmempool-convert.1.gz
-%{_mandir}/man1/pmempool-create.1.gz
-%{_mandir}/man1/pmempool-dump.1.gz
-%{_mandir}/man1/pmempool-info.1.gz
-%{_mandir}/man1/pmempool-rm.1.gz
-%{_mandir}/man1/pmempool-sync.1.gz
-%{_mandir}/man1/pmempool-transform.1.gz
-%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%prep
-%setup -q -n %{name}-%{version}
-
-%build
-# Currently, NVML makefiles do not allow to easily override CFLAGS,
-# so the build flags are passed via EXTRA_CFLAGS. For debug build
-# selected flags are overriden to disable compiler optimizations.
-EXTRA_CFLAGS_RELEASE="%{optflags}" \
-EXTRA_CFLAGS_DEBUG="%{optflags} -Wp,-U_FORTIFY_SOURCE -O0" \
-EXTRA_CXXFLAGS="%{optflags}" \
-make %{?_smp_mflags}
-
-
-# Override LIB_AR with empty string to skip installation of static libraries
-%install
-make install DESTDIR=%{buildroot} \
- LIB_AR= \
- prefix=%{_prefix} \
- libdir=%{_libdir} \
- includedir=%{_includedir} \
- mandir=%{_mandir} \
- bindir=%{_bindir} \
- sysconfdir=%{_sysconfdir} \
- docdir=%{_docdir} \
- CPP_DOC_DIR=libpmemobj++-devel
-mkdir -p %{buildroot}%{_datadir}/nvml
-cp utils/nvml.magic %{buildroot}%{_datadir}/nvml/
-
-
-%check
-echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
-echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
-make check
-
-
-%post -n libpmem -p /sbin/ldconfig
-%postun -n libpmem -p /sbin/ldconfig
-%post -n libpmemblk -p /sbin/ldconfig
-%postun -n libpmemblk -p /sbin/ldconfig
-%post -n libpmemlog -p /sbin/ldconfig
-%postun -n libpmemlog -p /sbin/ldconfig
-%post -n libpmemobj -p /sbin/ldconfig
-%postun -n libpmemobj -p /sbin/ldconfig
-%post -n libvmem -p /sbin/ldconfig
-%postun -n libvmem -p /sbin/ldconfig
-%post -n libvmmalloc -p /sbin/ldconfig
-%postun -n libvmmalloc -p /sbin/ldconfig
-%post -n libpmempool -p /sbin/ldconfig
-%postun -n libpmempool -p /sbin/ldconfig
-%post -n librpmem -p /sbin/ldconfig
-%postun -n librpmem -p /sbin/ldconfig
-
-%if 0%{?__debug_package} == 0
-%debug_package
-%endif
-
-
-%changelog
-* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
-- Update to NVML version 1.3.1 (RHBZ #1480578)
-
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
-- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
-- Add librpmem and rpmemd sub-packages
-- Force file system to appear as PMEM for make check
-
-* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
-- Update to NVML version 1.2.3 (RHBZ #1451741)
-
-* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
-- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
-
-* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
-- Update to NVML version 1.2.1 (RHBZ #1425038)
-
-* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
-- Fix compilation under gcc 7.0.x (RHBZ #1424004)
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
-- Update to NVML version 1.2 (RHBZ #1383467)
-- Add libpmemobj C++ bindings
-
-* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
-- Add missing package version requirements
-
-* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
-- Move debug variants of the libraries to -debug subpackages
-
-* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
-- NVML 1.1 release
-- Update link to source tarball
-- Add libpmempool subpackage
-- Remove obsolete patches
-
-* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
-- switch to ExclusiveArch
-
-* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
-- Exclude PPC architecture
-- Add bug numbers for excluded architectures
-
-* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
-- Initial RPM release
diff --git a/pmdk.spec b/pmdk.spec
new file mode 100644
index 0000000..dee0362
--- /dev/null
+++ b/pmdk.spec
@@ -0,0 +1,877 @@
+
+# rpmbuild options:
+# --with | --without fabric
+# --with | --without ndctl
+# --define "_testconfig <path to custom testconfig.sh or 'default'>"
+# --define "_check <1|0>" - run make check or not
+#
+
+# do not terminate build if files in the $RPM_BUILD_ROOT
+# directory are not found in the %files (without fabric case)
+%define _unpackaged_files_terminate_build 0
+
+# disable 'make check' on suse
+%if %{defined suse_version}
+ %define _check 0
+ %define dist .suse%{suse_version}
+%endif
+
+%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
+%bcond_without fabric
+%else
+%bcond_with fabric
+%endif
+
+# by default build w/o ndctl, unless explicitly enabled
+%bcond_with ndctl
+
+%define min_libfabric_ver 1.4.2
+%define min_ndctl_ver 59.2
+
+Name: pmdk
+Version: 1.4
+Release: 1%{?dist}
+Summary: Persistent Memory Development Kit
+License: BSD
+URL: http://pmem.io/pmdk
+
+Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
+
+BuildRequires: gcc
+BuildRequires: make
+BuildRequires: glibc-devel
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: man
+BuildRequires: pkgconfig
+BuildRequires: doxygen
+BuildRequires: gdb
+
+%if %{with ndctl}
+BuildRequires: ndctl-devel >= %{min_ndctl_ver}
+BuildRequires: daxctl-devel >= %{min_ndctl_ver}
+%endif
+
+%if %{with fabric}
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
+%endif
+
+
+# Debug variants of the libraries should be filtered out of the provides.
+%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
+
+# By design, PMDK does not support any 32-bit architecture.
+# Due to dependency on xmmintrin.h and some inline assembly, it can be
+# compiled only for x86_64 at the moment.
+# Other 64-bit architectures could also be supported, if only there is
+# a request for that, and if somebody provides the arch-specific
+# implementation of the low-level routines for flushing to persistent
+# memory.
+
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
+
+ExclusiveArch: x86_64
+
+%description
+The Persistent Memory Development Kit is a collection of libraries for
+using memory-mapped persistence, optimized specifically for persistent memory.
+
+
+%package -n libpmem
+Summary: Low-level persistent memory support library
+Group: System Environment/Libraries
+%description -n libpmem
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+%files -n libpmem
+%defattr(-,root,root,-)
+%dir %{_datadir}/pmdk
+%{_libdir}/libpmem.so.*
+%{_datadir}/pmdk/pmdk.magic
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-devel
+Summary: Development files for the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-devel
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This library is provided for software which tracks every store to
+pmem and needs to flush those changes to durability. Most developers
+will find higher level libraries like libpmemobj to be much more
+convenient.
+
+%files -n libpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmem.so
+%{_libdir}/pkgconfig/libpmem.pc
+%{_includedir}/libpmem.h
+%{_mandir}/man7/libpmem.7.gz
+%{_mandir}/man3/pmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-debug
+Summary: Debug variant of the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-debug
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmem.so
+%{_libdir}/pmdk_debug/libpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk
+Summary: Persistent Memory Resident Array of Blocks library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemblk
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+%files -n libpmemblk
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-devel
+Summary: Development files for the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemblk-devel
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+For example, a program keeping a cache of fixed-size objects in pmem
+might find this library useful. This library is provided for cases
+requiring large arrays of objects at least 512 bytes each. Most
+developers will find higher level libraries like libpmemobj to be
+more generally useful.
+
+%files -n libpmemblk-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so
+%{_libdir}/pkgconfig/libpmemblk.pc
+%{_includedir}/libpmemblk.h
+%{_mandir}/man7/libpmemblk.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemblk_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-debug
+Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+%description -n libpmemblk-debug
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemblk-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemblk.so
+%{_libdir}/pmdk_debug/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog
+Summary: Persistent Memory Resident Log File library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemlog
+The libpmemlog library provides a pmem-resident log file. This is
+useful for programs like databases that append frequently to a log
+file.
+
+%files -n libpmemlog
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-devel
+Summary: Development files for the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemlog-devel
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+%files -n libpmemlog-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so
+%{_libdir}/pkgconfig/libpmemlog.pc
+%{_includedir}/libpmemlog.h
+%{_mandir}/man7/libpmemlog.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemlog_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-debug
+Summary: Debug variant of the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+%description -n libpmemlog-debug
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemlog-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemlog.so
+%{_libdir}/pmdk_debug/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj
+Summary: Persistent Memory Transactional Object Store library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemobj
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+%files -n libpmemobj
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-devel
+Summary: Development files for the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemobj-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+%files -n libpmemobj-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so
+%{_libdir}/pkgconfig/libpmemobj.pc
+%{_includedir}/libpmemobj.h
+%{_includedir}/libpmemobj/*.h
+%{_mandir}/man7/libpmemobj.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemobj_*.3.gz
+%{_mandir}/man3/pobj_*.3.gz
+%{_mandir}/man3/oid_*.3.gz
+%{_mandir}/man3/toid*.3.gz
+%{_mandir}/man3/direct_*.3.gz
+%{_mandir}/man3/d_r*.3.gz
+%{_mandir}/man3/tx_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-debug
+Summary: Debug variant of the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+%description -n libpmemobj-debug
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemobj-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemobj.so
+%{_libdir}/pmdk_debug/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem
+Summary: Volatile Memory allocation library
+Group: System Environment/Libraries
+%description -n libvmem
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+%files -n libvmem
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-devel
+Summary: Development files for the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-devel
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains libraries and header files for developing
+applications that want to make use of libvmem.
+
+%files -n libvmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so
+%{_libdir}/pkgconfig/libvmem.pc
+%{_includedir}/libvmem.h
+%{_mandir}/man7/libvmem.7.gz
+%{_mandir}/man3/vmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-debug
+Summary: Debug variant of the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-debug
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmem.so
+%{_libdir}/pmdk_debug/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc
+Summary: Dynamic to Persistent Memory allocation translation library
+Group: System Environment/Libraries
+%description -n libvmmalloc
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+The typical usage of libvmmalloc is to load it via the LD_PRELOAD
+environment variable.
+
+%files -n libvmmalloc
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-devel
+Summary: Development files for the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-devel
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of libvmmalloc.
+
+%files -n libvmmalloc-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so
+%{_libdir}/pkgconfig/libvmmalloc.pc
+%{_includedir}/libvmmalloc.h
+%{_mandir}/man7/libvmmalloc.7.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-debug
+Summary: Debug variant of the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-debug
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmmalloc-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmmalloc.so
+%{_libdir}/pmdk_debug/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+# Specify a virtual Provide for libpmemobj++-static package, so the package
+# usage can be tracked.
+%package -n libpmemobj++-devel
+Summary: C++ bindings for Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Provides: libpmemobj++-static = %{version}-%{release}
+Requires: libpmemobj-devel = %{version}-%{release}
+%description -n libpmemobj++-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+This sub-package contains header files for libpmemobj C++ bindings.
+
+%files -n libpmemobj++-devel
+%defattr(-,root,root,-)
+%{_libdir}/pkgconfig/libpmemobj++.pc
+%{_includedir}/libpmemobj++/*.hpp
+%{_includedir}/libpmemobj++/detail/*.hpp
+%{_docdir}/libpmemobj++-devel/*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool
+Summary: Persistent Memory pool management library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmempool
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-devel
+Summary: Development files for Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmempool-devel
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so
+%{_libdir}/pkgconfig/libpmempool.pc
+%{_includedir}/libpmempool.h
+%{_mandir}/man7/libpmempool.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmempool_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-debug
+Summary: Debug variant of the Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+%description -n libpmempool-debug
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmempool-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmempool.so
+%{_libdir}/pmdk_debug/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with fabric}
+
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man7/librpmem.7.gz
+%{_mandir}/man3/rpmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/librpmem.so
+%{_libdir}/pmdk_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+%endif # _with_fabric
+
+
+%package -n libpmemcto
+Summary: Close-to-Open Persistence library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemcto
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-devel
+Summary: Development files for Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemcto-devel
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so
+%{_libdir}/pkgconfig/libpmemcto.pc
+%{_includedir}/libpmemcto.h
+%{_mandir}/man7/libpmemcto.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemcto*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-debug
+Summary: Debug variant of the Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+%description -n libpmemcto-debug
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemcto-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemcto.so
+%{_libdir}/pmdk_debug/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n pmempool
+Summary: Utilities for Persistent Memory
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+Requires: libpmemlog >= %{version}-%{release}
+Requires: libpmemblk >= %{version}-%{release}
+Requires: libpmemobj >= %{version}-%{release}
+Requires: libpmempool >= %{version}-%{release}
+Requires: libpmemcto >= %{version}-%{release}
+Obsoletes: nvml-tools
+%description -n pmempool
+The pmempool is a standalone utility for management and off-line analysis
+of Persistent Memory pools created by PMDK libraries. It provides a set
+of utilities for administration and diagnostics of Persistent Memory pools.
+The pmempool may be useful for troubleshooting by system administrators
+and users of the applications based on PMDK libraries.
+
+%files -n pmempool
+%{_bindir}/pmempool
+%{_mandir}/man1/pmempool.1.gz
+%{_mandir}/man1/pmempool-*.1.gz
+%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with ndctl}
+
+%package -n daxio
+Summary: Perform I/O on Device DAX devices or zero a Device DAX device
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+%description -n daxio
+The daxio utility performs I/O on Device DAX devices or zero
+a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
+with Device DAX, data transfer is performed on a memory-mapped device.
+The daxio may be used to dump Device DAX data to a file, restore data from
+a backup copy, move/copy data to another device or to erase data from
+a device.
+
+%files -n daxio
+%{_bindir}/daxio
+%{_mandir}/man1/daxio.1.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+%endif # _with_ndctl
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%build
+# For debug build default flags may be overriden to disable compiler
+# optimizations.
+CFLAGS="%{optflags}" \
+LDFLAGS="%{?__global_ldflags}" \
+make %{?_smp_mflags} NORPATH=1
+
+
+# Override LIB_AR with empty string to skip installation of static libraries
+%install
+make install DESTDIR=%{buildroot} \
+ LIB_AR= \
+ prefix=%{_prefix} \
+ libdir=%{_libdir} \
+ includedir=%{_includedir} \
+ mandir=%{_mandir} \
+ bindir=%{_bindir} \
+ sysconfdir=%{_sysconfdir} \
+ docdir=%{_docdir} \
+ CPP_DOC_DIR=libpmemobj++-devel
+mkdir -p %{buildroot}%{_datadir}/pmdk
+cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
+
+
+
+%check
+%if "%{_check}" == "1"
+ %if "%{_testconfig}" != "default"
+ cp %{_testconfig} src/test/testconfig.sh
+ %else
+ echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+ echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
+ %endif
+ make check
+%else
+ echo "Check skipped"
+%endif
+
+%post -n libpmem -p /sbin/ldconfig
+%postun -n libpmem -p /sbin/ldconfig
+%post -n libpmemblk -p /sbin/ldconfig
+%postun -n libpmemblk -p /sbin/ldconfig
+%post -n libpmemlog -p /sbin/ldconfig
+%postun -n libpmemlog -p /sbin/ldconfig
+%post -n libpmemobj -p /sbin/ldconfig
+%postun -n libpmemobj -p /sbin/ldconfig
+%post -n libvmem -p /sbin/ldconfig
+%postun -n libvmem -p /sbin/ldconfig
+%post -n libvmmalloc -p /sbin/ldconfig
+%postun -n libvmmalloc -p /sbin/ldconfig
+%post -n libpmempool -p /sbin/ldconfig
+%postun -n libpmempool -p /sbin/ldconfig
+%post -n libpmemcto -p /sbin/ldconfig
+%postun -n libpmemcto -p /sbin/ldconfig
+
+%if %{with fabric}
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
+%endif
+
+%if 0%{?__debug_package} == 0
+%debug_package
+%endif
+
+
+%changelog
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
+- Rename NVML project to PMDK
+- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
+
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
+* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
+- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
+
+* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
+- Update to NVML version 1.2.1 (RHBZ #1425038)
+
+* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
+- Fix compilation under gcc 7.0.x (RHBZ #1424004)
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
+- Update to NVML version 1.2 (RHBZ #1383467)
+- Add libpmemobj C++ bindings
+
+* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
+- Add missing package version requirements
+
+* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
+- Move debug variants of the libraries to -debug subpackages
+
+* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
+- NVML 1.1 release
+- Update link to source tarball
+- Add libpmempool subpackage
+- Remove obsolete patches
+
+* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
+- switch to ExclusiveArch
+
+* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
+- Exclude PPC architecture
+- Add bug numbers for excluded architectures
+
+* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
+- Initial RPM release
diff --git a/sources b/sources
index ab9af0d..087d117 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.3.1.tar.gz) = 1ba8a846f6e0c41af1ec4d6a8db8ec4775a09525caa6d5a4b63df9f11d9f9b541c2968430a5802a529081c2f37e7375ee2c527fc6ff73bde34ddadd27295e4ec
+SHA512 (pmdk-1.4.tar.gz) = 95dbea9acfea4a6cb433a25f56f7484946a93fbce1c5e0e1d6ff36e0824e3e0e9f28f37024918998358f8ff12e69d0902fcf88357b9ad12695f32e06e86ffac8
commit 0b43337c7519fcadb93aa8fa9af70a0aa99ab4ed
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Feb 8 08:39:38 2018 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/nvml.spec b/nvml.spec
index 3c19ba7..86f5c86 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
- Update to NVML version 1.3.1 (RHBZ #1480578)
commit 365af7daa5376462e19407d77ef996cadc969a31
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Sat Jan 27 14:49:55 2018 +0100
NVML 1.3.1 release
diff --git a/.gitignore b/.gitignore
index b7c4364..bd78bc5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@
/nvml-1.2.2.tar.gz
/nvml-1.2.3.tar.gz
/nvml-1.3.tar.gz
+/nvml-1.3.1.tar.gz
diff --git a/nvml.spec b/nvml.spec
index c7055fe..3c19ba7 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
-Version: 1.3
-Release: 3%{?dist}
+Version: 1.3.1
+Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
diff --git a/sources b/sources
index cb65b14..ab9af0d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.3.tar.gz) = 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd
+SHA512 (nvml-1.3.1.tar.gz) = 1ba8a846f6e0c41af1ec4d6a8db8ec4775a09525caa6d5a4b63df9f11d9f9b541c2968430a5802a529081c2f37e7375ee2c527fc6ff73bde34ddadd27295e4ec
commit 9b53fa62700e9656adf2dac39df3aae44808175c
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Aug 3 04:11:00 2017 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
diff --git a/nvml.spec b/nvml.spec
index bba25f0..c7055fe 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
commit c67349e76004207b750ac439b9a57775bf55703a
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jul 27 01:22:41 2017 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
diff --git a/nvml.spec b/nvml.spec
index ca983f2..bba25f0 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
- Add librpmem and rpmemd sub-packages
commit 2b28a6f5c64a14cc17dfae88a12eb9cc07d80d0b
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Mon Jul 17 17:08:15 2017 +0200
NVML 1.3 release
diff --git a/.gitignore b/.gitignore
index e126c82..b7c4364 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@
/nvml-1.2.1.tar.gz
/nvml-1.2.2.tar.gz
/nvml-1.2.3.tar.gz
+/nvml-1.3.tar.gz
diff --git a/nvml.spec b/nvml.spec
index 446e5f9..ca983f2 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
-Version: 1.2.3
-Release: 2%{?dist}
+Version: 1.3
+Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -13,12 +13,15 @@ BuildRequires: automake
BuildRequires: man
BuildRequires: pkgconfig
BuildRequires: doxygen
+BuildRequires: gdb
+
+%define min_libfabric_ver 1.4.2
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
# Debug variants of the libraries should be filtered out of the provides.
%global __provides_exclude_from ^%{_libdir}/nvml_debug/.*\\.so.*$
-
# By design, NVML does not support any 32-bit architecture.
# Due to dependency on xmmintrin.h and some inline assembly, it can be
# compiled only for x86_64 at the moment.
@@ -498,6 +501,81 @@ debug version is to set the environment variable LD_LIBRARY_PATH to
%doc ChangeLog CONTRIBUTING.md README.md
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man3/librpmem.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/nvml_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/nvml_debug
+%{_libdir}/nvml_debug/librpmem.so
+%{_libdir}/nvml_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+
%package tools
Summary: Utilities for Persistent Memory
Group: System Environment/Base
@@ -555,7 +633,8 @@ cp utils/nvml.magic %{buildroot}%{_datadir}/nvml/
%check
-cp src/test/testconfig.sh.example src/test/testconfig.sh
+echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
make check
@@ -573,7 +652,8 @@ make check
%postun -n libvmmalloc -p /sbin/ldconfig
%post -n libpmempool -p /sbin/ldconfig
%postun -n libpmempool -p /sbin/ldconfig
-
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
%if 0%{?__debug_package} == 0
%debug_package
@@ -581,6 +661,11 @@ make check
%changelog
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
- Update to NVML version 1.2.3 (RHBZ #1451741)
diff --git a/sources b/sources
index c519f81..cb65b14 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.2.3.tar.gz) = 17119a2bf4b7b790c63ecec98eb4a0d46e81d99b5f38c12933a07c8119ce95c3623285795b02d65d5a02ff1507f71faa8dde7284241d340913fabe1475d8f735
+SHA512 (nvml-1.3.tar.gz) = 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd
commit 7e411eb92c77e4c892dca8e3f2e839f809af6e22
Author: Krzysztof Czurylo <krzycz(a)krzycz-fedora25.igk.intel.com>
Date: Fri Jun 16 12:06:13 2017 +0200
NVML 1.2.3 release
diff --git a/.gitignore b/.gitignore
index 64077fd..e126c82 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/nvml-1.2.tar.gz
/nvml-1.2.1.tar.gz
/nvml-1.2.2.tar.gz
+/nvml-1.2.3.tar.gz
diff --git a/nvml.spec b/nvml.spec
index e77745c..446e5f9 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.2.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -581,6 +581,9 @@ make check
%changelog
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
diff --git a/sources b/sources
index aeb986e..c519f81 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.2.2.tar.gz) = 1cca38e579307308ac9be1e1e648893707f19b62f0d5d9377db38a8a4a1f16352c8d731fa76d4ba31b57a0bbace02ba6127b9bf2d03fe0f92a45f1f4c8b24ed6
+SHA512 (nvml-1.2.3.tar.gz) = 17119a2bf4b7b790c63ecec98eb4a0d46e81d99b5f38c12933a07c8119ce95c3623285795b02d65d5a02ff1507f71faa8dde7284241d340913fabe1475d8f735
commit 0f82edfeaa831e90c412dc062fc255fed8c9f491
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Mon Jun 12 22:20:34 2017 +0200
NVML 1.2.3 release
diff --git a/nvml.spec b/nvml.spec
index a36774e..e77745c 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,6 +1,6 @@
Name: nvml
-Version: 1.2.2
+Version: 1.2.3
Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
6 years
[Arch-excludes] Architecture specific change in rpms/nvml.git
by githook-noreply@fedoraproject.org
The package rpms/nvml.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/nvml.git/commit/?id=69c4e5835e2c5...
https://src.fedoraproject.org/cgit/rpms/nvml.git/commit/?id=4c9749f56c02c....
Change:
+ExclusiveArch: x86_64
-ExclusiveArch: x86_64
Thanks.
Full change:
============
commit 4c9749f56c02c79df3d3327986694d3a1c7151a7
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Fri Mar 30 11:44:27 2018 +0200
Temporarily revert package name change
diff --git a/.gitignore b/.gitignore
index 8e808ce..f9e5c64 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
/nvml-1.3.tar.gz
/nvml-1.3.1.tar.gz
/pmdk-1.4.tar.gz
+/nvml-1.4.tar.gz
diff --git a/nvml.spec b/nvml.spec
new file mode 100644
index 0000000..5bb41b4
--- /dev/null
+++ b/nvml.spec
@@ -0,0 +1,882 @@
+
+# rpmbuild options:
+# --with | --without fabric
+# --with | --without ndctl
+# --define _testconfig <path to custom testconfig.sh>
+
+# do not terminate build if files in the $RPM_BUILD_ROOT
+# directory are not found in %%files (without fabric case)
+%define _unpackaged_files_terminate_build 0
+
+# disable 'make check' on suse
+%if %{defined suse_version}
+ %define _skip_check 1
+ %define dist .suse%{suse_version}
+%endif
+
+%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
+%bcond_without fabric
+%else
+%bcond_with fabric
+%endif
+
+# by default build w/o ndctl, unless explicitly enabled
+%bcond_with ndctl
+
+%define min_libfabric_ver 1.4.2
+%define min_ndctl_ver 59.2
+
+Name: nvml
+Version: 1.4
+Release: 3%{?dist}
+Summary: Persistent Memory Development Kit (former NVML)
+License: BSD
+URL: http://pmem.io/pmdk
+
+Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
+
+BuildRequires: gcc
+BuildRequires: make
+BuildRequires: glibc-devel
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: man
+BuildRequires: pkgconfig
+BuildRequires: doxygen
+BuildRequires: gdb
+
+%if %{with ndctl}
+BuildRequires: ndctl-devel >= %{min_ndctl_ver}
+BuildRequires: daxctl-devel >= %{min_ndctl_ver}
+%endif
+
+%if %{with fabric}
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
+%endif
+
+
+# Debug variants of the libraries should be filtered out of the provides.
+%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
+
+# By design, PMDK does not support any 32-bit architecture.
+# Due to dependency on xmmintrin.h and some inline assembly, it can be
+# compiled only for x86_64 at the moment.
+# Other 64-bit architectures could also be supported, if only there is
+# a request for that, and if somebody provides the arch-specific
+# implementation of the low-level routines for flushing to persistent
+# memory.
+
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
+
+ExclusiveArch: x86_64
+
+%description
+The Persistent Memory Development Kit is a collection of libraries for
+using memory-mapped persistence, optimized specifically for persistent memory.
+
+
+%package -n libpmem
+Summary: Low-level persistent memory support library
+Group: System Environment/Libraries
+%description -n libpmem
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+%files -n libpmem
+%defattr(-,root,root,-)
+%dir %{_datadir}/pmdk
+%{_libdir}/libpmem.so.*
+%{_datadir}/pmdk/pmdk.magic
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-devel
+Summary: Development files for the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-devel
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This library is provided for software which tracks every store to
+pmem and needs to flush those changes to durability. Most developers
+will find higher level libraries like libpmemobj to be much more
+convenient.
+
+%files -n libpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmem.so
+%{_libdir}/pkgconfig/libpmem.pc
+%{_includedir}/libpmem.h
+%{_mandir}/man7/libpmem.7.gz
+%{_mandir}/man3/pmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-debug
+Summary: Debug variant of the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-debug
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmem.so
+%{_libdir}/pmdk_debug/libpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk
+Summary: Persistent Memory Resident Array of Blocks library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemblk
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+%files -n libpmemblk
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-devel
+Summary: Development files for the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemblk-devel
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+For example, a program keeping a cache of fixed-size objects in pmem
+might find this library useful. This library is provided for cases
+requiring large arrays of objects at least 512 bytes each. Most
+developers will find higher level libraries like libpmemobj to be
+more generally useful.
+
+%files -n libpmemblk-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so
+%{_libdir}/pkgconfig/libpmemblk.pc
+%{_includedir}/libpmemblk.h
+%{_mandir}/man7/libpmemblk.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemblk_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-debug
+Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+%description -n libpmemblk-debug
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemblk-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemblk.so
+%{_libdir}/pmdk_debug/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog
+Summary: Persistent Memory Resident Log File library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemlog
+The libpmemlog library provides a pmem-resident log file. This is
+useful for programs like databases that append frequently to a log
+file.
+
+%files -n libpmemlog
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-devel
+Summary: Development files for the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemlog-devel
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+%files -n libpmemlog-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so
+%{_libdir}/pkgconfig/libpmemlog.pc
+%{_includedir}/libpmemlog.h
+%{_mandir}/man7/libpmemlog.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemlog_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-debug
+Summary: Debug variant of the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+%description -n libpmemlog-debug
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemlog-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemlog.so
+%{_libdir}/pmdk_debug/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj
+Summary: Persistent Memory Transactional Object Store library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemobj
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+%files -n libpmemobj
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-devel
+Summary: Development files for the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemobj-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+%files -n libpmemobj-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so
+%{_libdir}/pkgconfig/libpmemobj.pc
+%{_includedir}/libpmemobj.h
+%{_includedir}/libpmemobj/*.h
+%{_mandir}/man7/libpmemobj.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemobj_*.3.gz
+%{_mandir}/man3/pobj_*.3.gz
+%{_mandir}/man3/oid_*.3.gz
+%{_mandir}/man3/toid*.3.gz
+%{_mandir}/man3/direct_*.3.gz
+%{_mandir}/man3/d_r*.3.gz
+%{_mandir}/man3/tx_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-debug
+Summary: Debug variant of the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+%description -n libpmemobj-debug
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemobj-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemobj.so
+%{_libdir}/pmdk_debug/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem
+Summary: Volatile Memory allocation library
+Group: System Environment/Libraries
+%description -n libvmem
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+%files -n libvmem
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-devel
+Summary: Development files for the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-devel
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains libraries and header files for developing
+applications that want to make use of libvmem.
+
+%files -n libvmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so
+%{_libdir}/pkgconfig/libvmem.pc
+%{_includedir}/libvmem.h
+%{_mandir}/man7/libvmem.7.gz
+%{_mandir}/man3/vmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-debug
+Summary: Debug variant of the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-debug
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmem.so
+%{_libdir}/pmdk_debug/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc
+Summary: Dynamic to Persistent Memory allocation translation library
+Group: System Environment/Libraries
+%description -n libvmmalloc
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+The typical usage of libvmmalloc is to load it via the LD_PRELOAD
+environment variable.
+
+%files -n libvmmalloc
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-devel
+Summary: Development files for the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-devel
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of libvmmalloc.
+
+%files -n libvmmalloc-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so
+%{_libdir}/pkgconfig/libvmmalloc.pc
+%{_includedir}/libvmmalloc.h
+%{_mandir}/man7/libvmmalloc.7.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-debug
+Summary: Debug variant of the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-debug
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmmalloc-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmmalloc.so
+%{_libdir}/pmdk_debug/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+# Specify a virtual Provide for libpmemobj++-static package, so the package
+# usage can be tracked.
+%package -n libpmemobj++-devel
+Summary: C++ bindings for Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Provides: libpmemobj++-static = %{version}-%{release}
+Requires: libpmemobj-devel = %{version}-%{release}
+%description -n libpmemobj++-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+This sub-package contains header files for libpmemobj C++ bindings.
+
+%files -n libpmemobj++-devel
+%defattr(-,root,root,-)
+%{_libdir}/pkgconfig/libpmemobj++.pc
+%{_includedir}/libpmemobj++/*.hpp
+%{_includedir}/libpmemobj++/detail/*.hpp
+%{_docdir}/libpmemobj++-devel/*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool
+Summary: Persistent Memory pool management library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmempool
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-devel
+Summary: Development files for Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmempool-devel
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so
+%{_libdir}/pkgconfig/libpmempool.pc
+%{_includedir}/libpmempool.h
+%{_mandir}/man7/libpmempool.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmempool_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-debug
+Summary: Debug variant of the Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+%description -n libpmempool-debug
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmempool-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmempool.so
+%{_libdir}/pmdk_debug/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with fabric}
+
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man7/librpmem.7.gz
+%{_mandir}/man3/rpmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/librpmem.so
+%{_libdir}/pmdk_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+%endif # _with_fabric
+
+
+%package -n libpmemcto
+Summary: Close-to-Open Persistence library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemcto
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-devel
+Summary: Development files for Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemcto-devel
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so
+%{_libdir}/pkgconfig/libpmemcto.pc
+%{_includedir}/libpmemcto.h
+%{_mandir}/man7/libpmemcto.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemcto*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-debug
+Summary: Debug variant of the Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+%description -n libpmemcto-debug
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemcto-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemcto.so
+%{_libdir}/pmdk_debug/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n pmempool
+Summary: Utilities for Persistent Memory
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+Requires: libpmemlog >= %{version}-%{release}
+Requires: libpmemblk >= %{version}-%{release}
+Requires: libpmemobj >= %{version}-%{release}
+Requires: libpmempool >= %{version}-%{release}
+Requires: libpmemcto >= %{version}-%{release}
+Obsoletes: nvml-tools < %{version}-%{release}
+%description -n pmempool
+The pmempool is a standalone utility for management and off-line analysis
+of Persistent Memory pools created by PMDK libraries. It provides a set
+of utilities for administration and diagnostics of Persistent Memory pools.
+The pmempool may be useful for troubleshooting by system administrators
+and users of the applications based on PMDK libraries.
+
+%files -n pmempool
+%{_bindir}/pmempool
+%{_mandir}/man1/pmempool.1.gz
+%{_mandir}/man1/pmempool-*.1.gz
+%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with ndctl}
+
+%package -n daxio
+Summary: Perform I/O on Device DAX devices or zero a Device DAX device
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+%description -n daxio
+The daxio utility performs I/O on Device DAX devices or zero
+a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
+with Device DAX, data transfer is performed on a memory-mapped device.
+The daxio may be used to dump Device DAX data to a file, restore data from
+a backup copy, move/copy data to another device or to erase data from
+a device.
+
+%files -n daxio
+%{_bindir}/daxio
+%{_mandir}/man1/daxio.1.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+%endif # _with_ndctl
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%build
+# For debug build default flags may be overriden to disable compiler
+# optimizations.
+CFLAGS="%{optflags}" \
+LDFLAGS="%{?__global_ldflags}" \
+make %{?_smp_mflags} NORPATH=1
+
+
+# Override LIB_AR with empty string to skip installation of static libraries
+%install
+make install DESTDIR=%{buildroot} \
+ LIB_AR= \
+ prefix=%{_prefix} \
+ libdir=%{_libdir} \
+ includedir=%{_includedir} \
+ mandir=%{_mandir} \
+ bindir=%{_bindir} \
+ sysconfdir=%{_sysconfdir} \
+ docdir=%{_docdir} \
+ CPP_DOC_DIR=libpmemobj++-devel
+mkdir -p %{buildroot}%{_datadir}/pmdk
+cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
+
+
+
+%check
+%if 0%{?_skip_check} == 1
+ echo "Check skipped"
+%else
+ %if %{defined _testconfig}
+ cp %{_testconfig} src/test/testconfig.sh
+ %else
+ echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+ echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
+ %endif
+ make check
+%endif
+
+%post -n libpmem -p /sbin/ldconfig
+%postun -n libpmem -p /sbin/ldconfig
+%post -n libpmemblk -p /sbin/ldconfig
+%postun -n libpmemblk -p /sbin/ldconfig
+%post -n libpmemlog -p /sbin/ldconfig
+%postun -n libpmemlog -p /sbin/ldconfig
+%post -n libpmemobj -p /sbin/ldconfig
+%postun -n libpmemobj -p /sbin/ldconfig
+%post -n libvmem -p /sbin/ldconfig
+%postun -n libvmem -p /sbin/ldconfig
+%post -n libvmmalloc -p /sbin/ldconfig
+%postun -n libvmmalloc -p /sbin/ldconfig
+%post -n libpmempool -p /sbin/ldconfig
+%postun -n libpmempool -p /sbin/ldconfig
+%post -n libpmemcto -p /sbin/ldconfig
+%postun -n libpmemcto -p /sbin/ldconfig
+
+%if %{with fabric}
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
+%endif
+
+%if 0%{?__debug_package} == 0
+%debug_package
+%endif
+
+
+%changelog
+* Fri Mar 30 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-3
+- Revert package name change
+- Re-enable check
+
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
+- Fix issues found by rpmlint
+
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
+- Rename NVML project to PMDK
+- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
+
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
+* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
+- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
+
+* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
+- Update to NVML version 1.2.1 (RHBZ #1425038)
+
+* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
+- Fix compilation under gcc 7.0.x (RHBZ #1424004)
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
+- Update to NVML version 1.2 (RHBZ #1383467)
+- Add libpmemobj C++ bindings
+
+* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
+- Add missing package version requirements
+
+* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
+- Move debug variants of the libraries to -debug subpackages
+
+* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
+- NVML 1.1 release
+- Update link to source tarball
+- Add libpmempool subpackage
+- Remove obsolete patches
+
+* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
+- switch to ExclusiveArch
+
+* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
+- Exclude PPC architecture
+- Add bug numbers for excluded architectures
+
+* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
+- Initial RPM release
diff --git a/pmdk.spec b/pmdk.spec
deleted file mode 100644
index 5aebf71..0000000
--- a/pmdk.spec
+++ /dev/null
@@ -1,880 +0,0 @@
-
-# rpmbuild options:
-# --with | --without fabric
-# --with | --without ndctl
-# --define "_testconfig <path to custom testconfig.sh or 'default'>"
-# --define "_check <1|0>" - run make check or not
-#
-
-# do not terminate build if files in the $RPM_BUILD_ROOT
-# directory are not found in %%files (without fabric case)
-%define _unpackaged_files_terminate_build 0
-
-# disable 'make check' on suse
-%if %{defined suse_version}
- %define _check 0
- %define dist .suse%{suse_version}
-%endif
-
-%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
-%bcond_without fabric
-%else
-%bcond_with fabric
-%endif
-
-# by default build w/o ndctl, unless explicitly enabled
-%bcond_with ndctl
-
-%define min_libfabric_ver 1.4.2
-%define min_ndctl_ver 59.2
-
-Name: pmdk
-Version: 1.4
-Release: 2%{?dist}
-Summary: Persistent Memory Development Kit
-License: BSD
-URL: http://pmem.io/pmdk
-
-Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
-
-BuildRequires: gcc
-BuildRequires: make
-BuildRequires: glibc-devel
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: man
-BuildRequires: pkgconfig
-BuildRequires: doxygen
-BuildRequires: gdb
-
-%if %{with ndctl}
-BuildRequires: ndctl-devel >= %{min_ndctl_ver}
-BuildRequires: daxctl-devel >= %{min_ndctl_ver}
-%endif
-
-%if %{with fabric}
-BuildRequires: libfabric-devel >= %{min_libfabric_ver}
-%endif
-
-
-# Debug variants of the libraries should be filtered out of the provides.
-%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
-
-# By design, PMDK does not support any 32-bit architecture.
-# Due to dependency on xmmintrin.h and some inline assembly, it can be
-# compiled only for x86_64 at the moment.
-# Other 64-bit architectures could also be supported, if only there is
-# a request for that, and if somebody provides the arch-specific
-# implementation of the low-level routines for flushing to persistent
-# memory.
-
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
-
-ExclusiveArch: x86_64
-
-%description
-The Persistent Memory Development Kit is a collection of libraries for
-using memory-mapped persistence, optimized specifically for persistent memory.
-
-
-%package -n libpmem
-Summary: Low-level persistent memory support library
-Group: System Environment/Libraries
-%description -n libpmem
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-%files -n libpmem
-%defattr(-,root,root,-)
-%dir %{_datadir}/pmdk
-%{_libdir}/libpmem.so.*
-%{_datadir}/pmdk/pmdk.magic
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-devel
-Summary: Development files for the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-devel
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This library is provided for software which tracks every store to
-pmem and needs to flush those changes to durability. Most developers
-will find higher level libraries like libpmemobj to be much more
-convenient.
-
-%files -n libpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmem.so
-%{_libdir}/pkgconfig/libpmem.pc
-%{_includedir}/libpmem.h
-%{_mandir}/man7/libpmem.7.gz
-%{_mandir}/man3/pmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-debug
-Summary: Debug variant of the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-debug
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmem.so
-%{_libdir}/pmdk_debug/libpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk
-Summary: Persistent Memory Resident Array of Blocks library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemblk
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-%files -n libpmemblk
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-devel
-Summary: Development files for the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemblk-devel
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-For example, a program keeping a cache of fixed-size objects in pmem
-might find this library useful. This library is provided for cases
-requiring large arrays of objects at least 512 bytes each. Most
-developers will find higher level libraries like libpmemobj to be
-more generally useful.
-
-%files -n libpmemblk-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so
-%{_libdir}/pkgconfig/libpmemblk.pc
-%{_includedir}/libpmemblk.h
-%{_mandir}/man7/libpmemblk.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemblk_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-debug
-Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-%description -n libpmemblk-debug
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemblk-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemblk.so
-%{_libdir}/pmdk_debug/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog
-Summary: Persistent Memory Resident Log File library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemlog
-The libpmemlog library provides a pmem-resident log file. This is
-useful for programs like databases that append frequently to a log
-file.
-
-%files -n libpmemlog
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-devel
-Summary: Development files for the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemlog-devel
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-%files -n libpmemlog-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so
-%{_libdir}/pkgconfig/libpmemlog.pc
-%{_includedir}/libpmemlog.h
-%{_mandir}/man7/libpmemlog.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemlog_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-debug
-Summary: Debug variant of the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-%description -n libpmemlog-debug
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemlog-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemlog.so
-%{_libdir}/pmdk_debug/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj
-Summary: Persistent Memory Transactional Object Store library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemobj
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-%files -n libpmemobj
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-devel
-Summary: Development files for the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemobj-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-%files -n libpmemobj-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so
-%{_libdir}/pkgconfig/libpmemobj.pc
-%{_includedir}/libpmemobj.h
-%{_includedir}/libpmemobj/*.h
-%{_mandir}/man7/libpmemobj.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemobj_*.3.gz
-%{_mandir}/man3/pobj_*.3.gz
-%{_mandir}/man3/oid_*.3.gz
-%{_mandir}/man3/toid*.3.gz
-%{_mandir}/man3/direct_*.3.gz
-%{_mandir}/man3/d_r*.3.gz
-%{_mandir}/man3/tx_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-debug
-Summary: Debug variant of the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-%description -n libpmemobj-debug
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemobj-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemobj.so
-%{_libdir}/pmdk_debug/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem
-Summary: Volatile Memory allocation library
-Group: System Environment/Libraries
-%description -n libvmem
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-%files -n libvmem
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-devel
-Summary: Development files for the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-devel
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains libraries and header files for developing
-applications that want to make use of libvmem.
-
-%files -n libvmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so
-%{_libdir}/pkgconfig/libvmem.pc
-%{_includedir}/libvmem.h
-%{_mandir}/man7/libvmem.7.gz
-%{_mandir}/man3/vmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-debug
-Summary: Debug variant of the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-debug
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libvmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libvmem.so
-%{_libdir}/pmdk_debug/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc
-Summary: Dynamic to Persistent Memory allocation translation library
-Group: System Environment/Libraries
-%description -n libvmmalloc
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-The typical usage of libvmmalloc is to load it via the LD_PRELOAD
-environment variable.
-
-%files -n libvmmalloc
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-devel
-Summary: Development files for the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-devel
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of libvmmalloc.
-
-%files -n libvmmalloc-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so
-%{_libdir}/pkgconfig/libvmmalloc.pc
-%{_includedir}/libvmmalloc.h
-%{_mandir}/man7/libvmmalloc.7.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-debug
-Summary: Debug variant of the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-debug
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libvmmalloc-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libvmmalloc.so
-%{_libdir}/pmdk_debug/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-# Specify a virtual Provide for libpmemobj++-static package, so the package
-# usage can be tracked.
-%package -n libpmemobj++-devel
-Summary: C++ bindings for Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Provides: libpmemobj++-static = %{version}-%{release}
-Requires: libpmemobj-devel = %{version}-%{release}
-%description -n libpmemobj++-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-This sub-package contains header files for libpmemobj C++ bindings.
-
-%files -n libpmemobj++-devel
-%defattr(-,root,root,-)
-%{_libdir}/pkgconfig/libpmemobj++.pc
-%{_includedir}/libpmemobj++/*.hpp
-%{_includedir}/libpmemobj++/detail/*.hpp
-%{_docdir}/libpmemobj++-devel/*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool
-Summary: Persistent Memory pool management library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmempool
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-devel
-Summary: Development files for Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmempool-devel
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so
-%{_libdir}/pkgconfig/libpmempool.pc
-%{_includedir}/libpmempool.h
-%{_mandir}/man7/libpmempool.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmempool_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-debug
-Summary: Debug variant of the Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-%description -n libpmempool-debug
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmempool-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmempool.so
-%{_libdir}/pmdk_debug/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%if %{with fabric}
-
-%package -n librpmem
-Summary: Remote Access to Persistent Memory library
-Group: System Environment/Libraries
-Requires: libfabric >= %{min_libfabric_ver}
-Requires: openssh-clients
-%description -n librpmem
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-%files -n librpmem
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-devel
-Summary: Development files for the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-devel
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of librpmem.
-
-%files -n librpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so
-%{_libdir}/pkgconfig/librpmem.pc
-%{_includedir}/librpmem.h
-%{_mandir}/man7/librpmem.7.gz
-%{_mandir}/man3/rpmem_*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-debug
-Summary: Debug variant of the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-debug
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n librpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/librpmem.so
-%{_libdir}/pmdk_debug/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n rpmemd
-Group: System Environment/Base
-Summary: Target node process executed by librpmem
-Requires: libfabric >= %{min_libfabric_ver}
-%description -n rpmemd
-The rpmemd process is executed on a target node by librpmem library
-and facilitates access to persistent memory over RDMA.
-
-%files -n rpmemd
-%{_bindir}/rpmemd
-%{_mandir}/man1/rpmemd.1.gz
-
-%endif # _with_fabric
-
-
-%package -n libpmemcto
-Summary: Close-to-Open Persistence library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemcto
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-%files -n libpmemcto
-%defattr(-,root,root,-)
-%{_libdir}/libpmemcto.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemcto-devel
-Summary: Development files for Close-to-Open Persistence library
-Group: Development/Libraries
-Requires: libpmemcto = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemcto-devel
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-%files -n libpmemcto-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemcto.so
-%{_libdir}/pkgconfig/libpmemcto.pc
-%{_includedir}/libpmemcto.h
-%{_mandir}/man7/libpmemcto.7.gz
-%{_mandir}/man5/poolset.5.gz
-%{_mandir}/man3/pmemcto*.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemcto-debug
-Summary: Debug variant of the Close-to-Open Persistence library
-Group: Development/Libraries
-Requires: libpmemcto = %{version}-%{release}
-%description -n libpmemcto-debug
-The libpmemcto library is a Persistent Memory allocator with no overhead
-imposed by run-time flushing or transactional updates.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/pmdk_debug.
-
-%files -n libpmemcto-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/pmdk_debug
-%{_libdir}/pmdk_debug/libpmemcto.so
-%{_libdir}/pmdk_debug/libpmemcto.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n pmempool
-Summary: Utilities for Persistent Memory
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-Requires: libpmemlog >= %{version}-%{release}
-Requires: libpmemblk >= %{version}-%{release}
-Requires: libpmemobj >= %{version}-%{release}
-Requires: libpmempool >= %{version}-%{release}
-Requires: libpmemcto >= %{version}-%{release}
-Obsoletes: nvml-tools < %{version}-%{release}
-%description -n pmempool
-The pmempool is a standalone utility for management and off-line analysis
-of Persistent Memory pools created by PMDK libraries. It provides a set
-of utilities for administration and diagnostics of Persistent Memory pools.
-The pmempool may be useful for troubleshooting by system administrators
-and users of the applications based on PMDK libraries.
-
-%files -n pmempool
-%{_bindir}/pmempool
-%{_mandir}/man1/pmempool.1.gz
-%{_mandir}/man1/pmempool-*.1.gz
-%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%if %{with ndctl}
-
-%package -n daxio
-Summary: Perform I/O on Device DAX devices or zero a Device DAX device
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-%description -n daxio
-The daxio utility performs I/O on Device DAX devices or zero
-a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
-with Device DAX, data transfer is performed on a memory-mapped device.
-The daxio may be used to dump Device DAX data to a file, restore data from
-a backup copy, move/copy data to another device or to erase data from
-a device.
-
-%files -n daxio
-%{_bindir}/daxio
-%{_mandir}/man1/daxio.1.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-%endif # _with_ndctl
-
-
-%prep
-%setup -q -n %{name}-%{version}
-
-
-%build
-# For debug build default flags may be overriden to disable compiler
-# optimizations.
-CFLAGS="%{optflags}" \
-LDFLAGS="%{?__global_ldflags}" \
-make %{?_smp_mflags} NORPATH=1
-
-
-# Override LIB_AR with empty string to skip installation of static libraries
-%install
-make install DESTDIR=%{buildroot} \
- LIB_AR= \
- prefix=%{_prefix} \
- libdir=%{_libdir} \
- includedir=%{_includedir} \
- mandir=%{_mandir} \
- bindir=%{_bindir} \
- sysconfdir=%{_sysconfdir} \
- docdir=%{_docdir} \
- CPP_DOC_DIR=libpmemobj++-devel
-mkdir -p %{buildroot}%{_datadir}/pmdk
-cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
-
-
-
-%check
-%if "%{_check}" == "1"
- %if "%{_testconfig}" != "default"
- cp %{_testconfig} src/test/testconfig.sh
- %else
- echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
- echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
- %endif
- make check
-%else
- echo "Check skipped"
-%endif
-
-%post -n libpmem -p /sbin/ldconfig
-%postun -n libpmem -p /sbin/ldconfig
-%post -n libpmemblk -p /sbin/ldconfig
-%postun -n libpmemblk -p /sbin/ldconfig
-%post -n libpmemlog -p /sbin/ldconfig
-%postun -n libpmemlog -p /sbin/ldconfig
-%post -n libpmemobj -p /sbin/ldconfig
-%postun -n libpmemobj -p /sbin/ldconfig
-%post -n libvmem -p /sbin/ldconfig
-%postun -n libvmem -p /sbin/ldconfig
-%post -n libvmmalloc -p /sbin/ldconfig
-%postun -n libvmmalloc -p /sbin/ldconfig
-%post -n libpmempool -p /sbin/ldconfig
-%postun -n libpmempool -p /sbin/ldconfig
-%post -n libpmemcto -p /sbin/ldconfig
-%postun -n libpmemcto -p /sbin/ldconfig
-
-%if %{with fabric}
-%post -n librpmem -p /sbin/ldconfig
-%postun -n librpmem -p /sbin/ldconfig
-%endif
-
-%if 0%{?__debug_package} == 0
-%debug_package
-%endif
-
-
-%changelog
-* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
-- Fix issues found by rpmlint
-
-* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
-- Rename NVML project to PMDK
-- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
-
-* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
-- Update to NVML version 1.3.1 (RHBZ #1480578)
-
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
-- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
-- Add librpmem and rpmemd sub-packages
-- Force file system to appear as PMEM for make check
-
-* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
-- Update to NVML version 1.2.3 (RHBZ #1451741)
-
-* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
-- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
-
-* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
-- Update to NVML version 1.2.1 (RHBZ #1425038)
-
-* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
-- Fix compilation under gcc 7.0.x (RHBZ #1424004)
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
-- Update to NVML version 1.2 (RHBZ #1383467)
-- Add libpmemobj C++ bindings
-
-* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
-- Add missing package version requirements
-
-* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
-- Move debug variants of the libraries to -debug subpackages
-
-* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
-- NVML 1.1 release
-- Update link to source tarball
-- Add libpmempool subpackage
-- Remove obsolete patches
-
-* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
-- switch to ExclusiveArch
-
-* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
-- Exclude PPC architecture
-- Add bug numbers for excluded architectures
-
-* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
-- Initial RPM release
diff --git a/sources b/sources
index 087d117..f7c359f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (pmdk-1.4.tar.gz) = 95dbea9acfea4a6cb433a25f56f7484946a93fbce1c5e0e1d6ff36e0824e3e0e9f28f37024918998358f8ff12e69d0902fcf88357b9ad12695f32e06e86ffac8
+SHA512 (nvml-1.4.tar.gz) = 80065f954383ff75091ded14b17e32019ade6bbac9d5cd634331516d8253a0cf1689335a1a9e418e42a34e01d162bff7f76f96ae488115d9016a91d34f6fda5c
commit bf94a0ea0d87ee562e1e3256f704fefe74ae97d5
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Thu Mar 29 21:26:59 2018 +0200
Fix issues found by rpmlint
diff --git a/pmdk.spec b/pmdk.spec
index dee0362..5aebf71 100644
--- a/pmdk.spec
+++ b/pmdk.spec
@@ -7,7 +7,7 @@
#
# do not terminate build if files in the $RPM_BUILD_ROOT
-# directory are not found in the %files (without fabric case)
+# directory are not found in %%files (without fabric case)
%define _unpackaged_files_terminate_build 0
# disable 'make check' on suse
@@ -30,7 +30,7 @@
Name: pmdk
Version: 1.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Persistent Memory Development Kit
License: BSD
URL: http://pmem.io/pmdk
@@ -704,7 +704,7 @@ Requires: libpmemblk >= %{version}-%{release}
Requires: libpmemobj >= %{version}-%{release}
Requires: libpmempool >= %{version}-%{release}
Requires: libpmemcto >= %{version}-%{release}
-Obsoletes: nvml-tools
+Obsoletes: nvml-tools < %{version}-%{release}
%description -n pmempool
The pmempool is a standalone utility for management and off-line analysis
of Persistent Memory pools created by PMDK libraries. It provides a set
@@ -814,6 +814,9 @@ cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
%changelog
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-2
+- Fix issues found by rpmlint
+
* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
- Rename NVML project to PMDK
- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
commit 69c4e5835e2c5e23e44e6ade250ea4beada91cf0
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Thu Mar 29 21:13:43 2018 +0200
PMDK 1.4 release
diff --git a/.gitignore b/.gitignore
index bd78bc5..8e808ce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/nvml-1.2.3.tar.gz
/nvml-1.3.tar.gz
/nvml-1.3.1.tar.gz
+/pmdk-1.4.tar.gz
diff --git a/nvml.spec b/nvml.spec
deleted file mode 100644
index 86f5c86..0000000
--- a/nvml.spec
+++ /dev/null
@@ -1,720 +0,0 @@
-
-Name: nvml
-Version: 1.3.1
-Release: 2%{?dist}
-Summary: Non-Volatile Memory Library
-License: BSD
-URL: http://pmem.io/nvml
-Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
-
-BuildRequires: glibc-devel
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: man
-BuildRequires: pkgconfig
-BuildRequires: doxygen
-BuildRequires: gdb
-
-%define min_libfabric_ver 1.4.2
-BuildRequires: libfabric-devel >= %{min_libfabric_ver}
-
-
-# Debug variants of the libraries should be filtered out of the provides.
-%global __provides_exclude_from ^%{_libdir}/nvml_debug/.*\\.so.*$
-
-# By design, NVML does not support any 32-bit architecture.
-# Due to dependency on xmmintrin.h and some inline assembly, it can be
-# compiled only for x86_64 at the moment.
-# Other 64-bit architectures could also be supported, if only there is
-# a request for that, and if somebody provides the arch-specific
-# implementation of the low-level routines for flushing to persistent
-# memory.
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
-# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
-ExclusiveArch: x86_64
-
-%description
-The NVM Library is a collection of libraries for using memory-mapped
-persistence, optimized specifically for persistent memory.
-
-
-%package -n libpmem
-Summary: Low-level persistent memory support library
-Group: System Environment/Libraries
-%description -n libpmem
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-%files -n libpmem
-%defattr(-,root,root,-)
-%dir %{_datadir}/nvml
-%{_libdir}/libpmem.so.*
-%{_datadir}/nvml/nvml.magic
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-devel
-Summary: Development files for the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-devel
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This library is provided for software which tracks every store to
-pmem and needs to flush those changes to durability. Most developers
-will find higher level libraries like libpmemobj to be much more
-convenient.
-
-%files -n libpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmem.so
-%{_libdir}/pkgconfig/libpmem.pc
-%{_includedir}/libpmem.h
-%{_mandir}/man3/libpmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmem-debug
-Summary: Debug variant of the low-level persistent memory library
-Group: Development/Libraries
-Requires: libpmem = %{version}-%{release}
-%description -n libpmem-debug
-The libpmem provides low level persistent memory support. In particular,
-support for the persistent memory instructions for flushing changes
-to pmem is provided.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmem.so
-%{_libdir}/nvml_debug/libpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk
-Summary: Persistent Memory Resident Array of Blocks library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemblk
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-%files -n libpmemblk
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-devel
-Summary: Development files for the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemblk-devel
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-For example, a program keeping a cache of fixed-size objects in pmem
-might find this library useful. This library is provided for cases
-requiring large arrays of objects at least 512 bytes each. Most
-developers will find higher level libraries like libpmemobj to be
-more generally useful.
-
-%files -n libpmemblk-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemblk.so
-%{_libdir}/pkgconfig/libpmemblk.pc
-%{_includedir}/libpmemblk.h
-%{_mandir}/man3/libpmemblk.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemblk-debug
-Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
-Group: Development/Libraries
-Requires: libpmemblk = %{version}-%{release}
-%description -n libpmemblk-debug
-The libpmemblk implements a pmem-resident array of blocks, all the same
-size, where a block is updated atomically with respect to power
-failure or program interruption (no torn blocks).
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemblk-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemblk.so
-%{_libdir}/nvml_debug/libpmemblk.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog
-Summary: Persistent Memory Resident Log File library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemlog
-The libpmemlog library provides a pmem-resident log file. This is
-useful for programs like databases that append frequently to a log
-file.
-
-%files -n libpmemlog
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-devel
-Summary: Development files for the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemlog-devel
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-%files -n libpmemlog-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemlog.so
-%{_libdir}/pkgconfig/libpmemlog.pc
-%{_includedir}/libpmemlog.h
-%{_mandir}/man3/libpmemlog.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemlog-debug
-Summary: Debug variant of the Persistent Memory Resident Log File library
-Group: Development/Libraries
-Requires: libpmemlog = %{version}-%{release}
-%description -n libpmemlog-debug
-The libpmemlog library provides a pmem-resident log file. This
-library is provided for cases requiring an append-mostly file to
-record variable length entries. Most developers will find higher
-level libraries like libpmemobj to be more generally useful.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemlog-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemlog.so
-%{_libdir}/nvml_debug/libpmemlog.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj
-Summary: Persistent Memory Transactional Object Store library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmemobj
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-%files -n libpmemobj
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-devel
-Summary: Development files for the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmemobj-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-%files -n libpmemobj-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmemobj.so
-%{_libdir}/pkgconfig/libpmemobj.pc
-%{_includedir}/libpmemobj.h
-%{_includedir}/libpmemobj/*.h
-%{_mandir}/man3/libpmemobj.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmemobj-debug
-Summary: Debug variant of the Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Requires: libpmemobj = %{version}-%{release}
-%description -n libpmemobj-debug
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming. Developers new to persistent memory
-probably want to start with this library.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmemobj-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmemobj.so
-%{_libdir}/nvml_debug/libpmemobj.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem
-Summary: Volatile Memory allocation library
-Group: System Environment/Libraries
-%description -n libvmem
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-%files -n libvmem
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-devel
-Summary: Development files for the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-devel
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains libraries and header files for developing
-applications that want to make use of libvmem.
-
-%files -n libvmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmem.so
-%{_libdir}/pkgconfig/libvmem.pc
-%{_includedir}/libvmem.h
-%{_mandir}/man3/libvmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmem-debug
-Summary: Debug variant of the Volatile Memory allocation library
-Group: Development/Libraries
-Requires: libvmem = %{version}-%{release}
-%description -n libvmem-debug
-The libvmem library turns a pool of persistent memory into a volatile
-memory pool, similar to the system heap but kept separate and with
-its own malloc-style API.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libvmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libvmem.so
-%{_libdir}/nvml_debug/libvmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc
-Summary: Dynamic to Persistent Memory allocation translation library
-Group: System Environment/Libraries
-%description -n libvmmalloc
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-The typical usage of libvmmalloc is to load it via the LD_PRELOAD
-environment variable.
-
-%files -n libvmmalloc
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-devel
-Summary: Development files for the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-devel
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of libvmmalloc.
-
-%files -n libvmmalloc-devel
-%defattr(-,root,root,-)
-%{_libdir}/libvmmalloc.so
-%{_libdir}/pkgconfig/libvmmalloc.pc
-%{_includedir}/libvmmalloc.h
-%{_mandir}/man3/libvmmalloc.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libvmmalloc-debug
-Summary: Debug variant of the Dynamic-to-Persistent allocation library
-Group: Development/Libraries
-Requires: libvmmalloc = %{version}-%{release}
-%description -n libvmmalloc-debug
-The libvmmalloc library transparently converts all the dynamic memory
-allocations into persistent memory allocations. This allows the use
-of persistent memory as volatile memory without modifying the target
-application.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libvmmalloc-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libvmmalloc.so
-%{_libdir}/nvml_debug/libvmmalloc.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-# Specify a virtual Provide for libpmemobj++-static package, so the package
-# usage can be tracked.
-%package -n libpmemobj++-devel
-Summary: C++ bindings for Persistent Memory Transactional Object Store library
-Group: Development/Libraries
-Provides: libpmemobj++-static = %{version}-%{release}
-Requires: libpmemobj-devel = %{version}-%{release}
-%description -n libpmemobj++-devel
-The libpmemobj library provides a transactional object store,
-providing memory allocation, transactions, and general facilities for
-persistent memory programming.
-
-This sub-package contains header files for libpmemobj C++ bindings.
-
-%files -n libpmemobj++-devel
-%defattr(-,root,root,-)
-%{_libdir}/pkgconfig/libpmemobj++.pc
-%{_includedir}/libpmemobj++/*.hpp
-%{_includedir}/libpmemobj++/detail/*.hpp
-%{_docdir}/libpmemobj++-devel/*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool
-Summary: Persistent Memory pool management library
-Group: System Environment/Libraries
-Requires: libpmem >= %{version}-%{release}
-%description -n libpmempool
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-devel
-Summary: Development files for Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-Requires: libpmem-devel = %{version}-%{release}
-%description -n libpmempool-devel
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-%files -n libpmempool-devel
-%defattr(-,root,root,-)
-%{_libdir}/libpmempool.so
-%{_libdir}/pkgconfig/libpmempool.pc
-%{_includedir}/libpmempool.h
-%{_mandir}/man3/libpmempool.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n libpmempool-debug
-Summary: Debug variant of the Persistent Memory pool management library
-Group: Development/Libraries
-Requires: libpmempool = %{version}-%{release}
-%description -n libpmempool-debug
-The libpmempool library provides a set of utilities for off-line
-administration, analysis, diagnostics and repair of persistent memory
-pools created by libpmemlog, libpemblk and libpmemobj libraries.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n libpmempool-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/libpmempool.so
-%{_libdir}/nvml_debug/libpmempool.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem
-Summary: Remote Access to Persistent Memory library
-Group: System Environment/Libraries
-Requires: libfabric >= %{min_libfabric_ver}
-Requires: openssh-clients
-%description -n librpmem
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-%files -n librpmem
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-devel
-Summary: Development files for the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-devel
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains libraries and header files for developing
-applications that want to specifically make use of librpmem.
-
-%files -n librpmem-devel
-%defattr(-,root,root,-)
-%{_libdir}/librpmem.so
-%{_libdir}/pkgconfig/librpmem.pc
-%{_includedir}/librpmem.h
-%{_mandir}/man3/librpmem.3.gz
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n librpmem-debug
-Summary: Debug variant of the Remote Access to Persistent Memory library
-Group: Development/Libraries
-Requires: librpmem = %{version}-%{release}
-%description -n librpmem-debug
-The librpmem library provides low-level support for remote access
-to persistent memory utilizing RDMA-capable NICs. It can be used
-to replicate peristent memory regions over RDMA protocol.
-
-This sub-package contains debug variant of the library, providing
-run-time assertions and trace points. The typical way to access the
-debug version is to set the environment variable LD_LIBRARY_PATH to
-/usr/lib64/nvml_debug.
-
-%files -n librpmem-debug
-%defattr(-,root,root,-)
-%dir %{_libdir}/nvml_debug
-%{_libdir}/nvml_debug/librpmem.so
-%{_libdir}/nvml_debug/librpmem.so.*
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%package -n rpmemd
-Group: System Environment/Base
-Summary: Target node process executed by librpmem
-Requires: libfabric >= %{min_libfabric_ver}
-%description -n rpmemd
-The rpmemd process is executed on a target node by librpmem library
-and facilitates access to persistent memory over RDMA.
-
-%files -n rpmemd
-%{_bindir}/rpmemd
-%{_mandir}/man1/rpmemd.1.gz
-
-
-%package tools
-Summary: Utilities for Persistent Memory
-Group: System Environment/Base
-Requires: libpmem >= %{version}-%{release}
-Requires: libpmemlog >= %{version}-%{release}
-Requires: libpmemblk >= %{version}-%{release}
-Requires: libpmemobj >= %{version}-%{release}
-Requires: libpmempool >= %{version}-%{release}
-%description tools
-Useful applications for administration and diagnosis of persistent memory.
-
-%files tools
-%{_bindir}/pmempool
-%{_mandir}/man1/pmempool.1.gz
-%{_mandir}/man1/pmempool-check.1.gz
-%{_mandir}/man1/pmempool-convert.1.gz
-%{_mandir}/man1/pmempool-create.1.gz
-%{_mandir}/man1/pmempool-dump.1.gz
-%{_mandir}/man1/pmempool-info.1.gz
-%{_mandir}/man1/pmempool-rm.1.gz
-%{_mandir}/man1/pmempool-sync.1.gz
-%{_mandir}/man1/pmempool-transform.1.gz
-%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
-%license LICENSE
-%doc ChangeLog CONTRIBUTING.md README.md
-
-
-%prep
-%setup -q -n %{name}-%{version}
-
-%build
-# Currently, NVML makefiles do not allow to easily override CFLAGS,
-# so the build flags are passed via EXTRA_CFLAGS. For debug build
-# selected flags are overriden to disable compiler optimizations.
-EXTRA_CFLAGS_RELEASE="%{optflags}" \
-EXTRA_CFLAGS_DEBUG="%{optflags} -Wp,-U_FORTIFY_SOURCE -O0" \
-EXTRA_CXXFLAGS="%{optflags}" \
-make %{?_smp_mflags}
-
-
-# Override LIB_AR with empty string to skip installation of static libraries
-%install
-make install DESTDIR=%{buildroot} \
- LIB_AR= \
- prefix=%{_prefix} \
- libdir=%{_libdir} \
- includedir=%{_includedir} \
- mandir=%{_mandir} \
- bindir=%{_bindir} \
- sysconfdir=%{_sysconfdir} \
- docdir=%{_docdir} \
- CPP_DOC_DIR=libpmemobj++-devel
-mkdir -p %{buildroot}%{_datadir}/nvml
-cp utils/nvml.magic %{buildroot}%{_datadir}/nvml/
-
-
-%check
-echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
-echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
-make check
-
-
-%post -n libpmem -p /sbin/ldconfig
-%postun -n libpmem -p /sbin/ldconfig
-%post -n libpmemblk -p /sbin/ldconfig
-%postun -n libpmemblk -p /sbin/ldconfig
-%post -n libpmemlog -p /sbin/ldconfig
-%postun -n libpmemlog -p /sbin/ldconfig
-%post -n libpmemobj -p /sbin/ldconfig
-%postun -n libpmemobj -p /sbin/ldconfig
-%post -n libvmem -p /sbin/ldconfig
-%postun -n libvmem -p /sbin/ldconfig
-%post -n libvmmalloc -p /sbin/ldconfig
-%postun -n libvmmalloc -p /sbin/ldconfig
-%post -n libpmempool -p /sbin/ldconfig
-%postun -n libpmempool -p /sbin/ldconfig
-%post -n librpmem -p /sbin/ldconfig
-%postun -n librpmem -p /sbin/ldconfig
-
-%if 0%{?__debug_package} == 0
-%debug_package
-%endif
-
-
-%changelog
-* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
-- Update to NVML version 1.3.1 (RHBZ #1480578)
-
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
-- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
-- Add librpmem and rpmemd sub-packages
-- Force file system to appear as PMEM for make check
-
-* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
-- Update to NVML version 1.2.3 (RHBZ #1451741)
-
-* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
-- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
-
-* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
-- Update to NVML version 1.2.1 (RHBZ #1425038)
-
-* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
-- Fix compilation under gcc 7.0.x (RHBZ #1424004)
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
-- Update to NVML version 1.2 (RHBZ #1383467)
-- Add libpmemobj C++ bindings
-
-* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
-- Add missing package version requirements
-
-* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
-- Move debug variants of the libraries to -debug subpackages
-
-* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
-- NVML 1.1 release
-- Update link to source tarball
-- Add libpmempool subpackage
-- Remove obsolete patches
-
-* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
-- switch to ExclusiveArch
-
-* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
-- Exclude PPC architecture
-- Add bug numbers for excluded architectures
-
-* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
-- Initial RPM release
diff --git a/pmdk.spec b/pmdk.spec
new file mode 100644
index 0000000..dee0362
--- /dev/null
+++ b/pmdk.spec
@@ -0,0 +1,877 @@
+
+# rpmbuild options:
+# --with | --without fabric
+# --with | --without ndctl
+# --define "_testconfig <path to custom testconfig.sh or 'default'>"
+# --define "_check <1|0>" - run make check or not
+#
+
+# do not terminate build if files in the $RPM_BUILD_ROOT
+# directory are not found in the %files (without fabric case)
+%define _unpackaged_files_terminate_build 0
+
+# disable 'make check' on suse
+%if %{defined suse_version}
+ %define _check 0
+ %define dist .suse%{suse_version}
+%endif
+
+%if (0%{?suse_version} > 1315) || (0%{?fedora} >= 27) || (0%{?rhel} >= 7)
+%bcond_without fabric
+%else
+%bcond_with fabric
+%endif
+
+# by default build w/o ndctl, unless explicitly enabled
+%bcond_with ndctl
+
+%define min_libfabric_ver 1.4.2
+%define min_ndctl_ver 59.2
+
+Name: pmdk
+Version: 1.4
+Release: 1%{?dist}
+Summary: Persistent Memory Development Kit
+License: BSD
+URL: http://pmem.io/pmdk
+
+Source0: https://github.com/pmem/%{name}/archive/%{version}.tar.gz#/%{name}-%{vers...
+
+BuildRequires: gcc
+BuildRequires: make
+BuildRequires: glibc-devel
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: man
+BuildRequires: pkgconfig
+BuildRequires: doxygen
+BuildRequires: gdb
+
+%if %{with ndctl}
+BuildRequires: ndctl-devel >= %{min_ndctl_ver}
+BuildRequires: daxctl-devel >= %{min_ndctl_ver}
+%endif
+
+%if %{with fabric}
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
+%endif
+
+
+# Debug variants of the libraries should be filtered out of the provides.
+%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
+
+# By design, PMDK does not support any 32-bit architecture.
+# Due to dependency on xmmintrin.h and some inline assembly, it can be
+# compiled only for x86_64 at the moment.
+# Other 64-bit architectures could also be supported, if only there is
+# a request for that, and if somebody provides the arch-specific
+# implementation of the low-level routines for flushing to persistent
+# memory.
+
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
+# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
+
+ExclusiveArch: x86_64
+
+%description
+The Persistent Memory Development Kit is a collection of libraries for
+using memory-mapped persistence, optimized specifically for persistent memory.
+
+
+%package -n libpmem
+Summary: Low-level persistent memory support library
+Group: System Environment/Libraries
+%description -n libpmem
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+%files -n libpmem
+%defattr(-,root,root,-)
+%dir %{_datadir}/pmdk
+%{_libdir}/libpmem.so.*
+%{_datadir}/pmdk/pmdk.magic
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-devel
+Summary: Development files for the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-devel
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This library is provided for software which tracks every store to
+pmem and needs to flush those changes to durability. Most developers
+will find higher level libraries like libpmemobj to be much more
+convenient.
+
+%files -n libpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmem.so
+%{_libdir}/pkgconfig/libpmem.pc
+%{_includedir}/libpmem.h
+%{_mandir}/man7/libpmem.7.gz
+%{_mandir}/man3/pmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmem-debug
+Summary: Debug variant of the low-level persistent memory library
+Group: Development/Libraries
+Requires: libpmem = %{version}-%{release}
+%description -n libpmem-debug
+The libpmem provides low level persistent memory support. In particular,
+support for the persistent memory instructions for flushing changes
+to pmem is provided.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmem.so
+%{_libdir}/pmdk_debug/libpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk
+Summary: Persistent Memory Resident Array of Blocks library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemblk
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+%files -n libpmemblk
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-devel
+Summary: Development files for the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemblk-devel
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+For example, a program keeping a cache of fixed-size objects in pmem
+might find this library useful. This library is provided for cases
+requiring large arrays of objects at least 512 bytes each. Most
+developers will find higher level libraries like libpmemobj to be
+more generally useful.
+
+%files -n libpmemblk-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemblk.so
+%{_libdir}/pkgconfig/libpmemblk.pc
+%{_includedir}/libpmemblk.h
+%{_mandir}/man7/libpmemblk.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemblk_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemblk-debug
+Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
+Group: Development/Libraries
+Requires: libpmemblk = %{version}-%{release}
+%description -n libpmemblk-debug
+The libpmemblk implements a pmem-resident array of blocks, all the same
+size, where a block is updated atomically with respect to power
+failure or program interruption (no torn blocks).
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemblk-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemblk.so
+%{_libdir}/pmdk_debug/libpmemblk.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog
+Summary: Persistent Memory Resident Log File library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemlog
+The libpmemlog library provides a pmem-resident log file. This is
+useful for programs like databases that append frequently to a log
+file.
+
+%files -n libpmemlog
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-devel
+Summary: Development files for the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemlog-devel
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+%files -n libpmemlog-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemlog.so
+%{_libdir}/pkgconfig/libpmemlog.pc
+%{_includedir}/libpmemlog.h
+%{_mandir}/man7/libpmemlog.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemlog_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemlog-debug
+Summary: Debug variant of the Persistent Memory Resident Log File library
+Group: Development/Libraries
+Requires: libpmemlog = %{version}-%{release}
+%description -n libpmemlog-debug
+The libpmemlog library provides a pmem-resident log file. This
+library is provided for cases requiring an append-mostly file to
+record variable length entries. Most developers will find higher
+level libraries like libpmemobj to be more generally useful.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemlog-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemlog.so
+%{_libdir}/pmdk_debug/libpmemlog.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj
+Summary: Persistent Memory Transactional Object Store library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemobj
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+%files -n libpmemobj
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-devel
+Summary: Development files for the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemobj-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+%files -n libpmemobj-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemobj.so
+%{_libdir}/pkgconfig/libpmemobj.pc
+%{_includedir}/libpmemobj.h
+%{_includedir}/libpmemobj/*.h
+%{_mandir}/man7/libpmemobj.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemobj_*.3.gz
+%{_mandir}/man3/pobj_*.3.gz
+%{_mandir}/man3/oid_*.3.gz
+%{_mandir}/man3/toid*.3.gz
+%{_mandir}/man3/direct_*.3.gz
+%{_mandir}/man3/d_r*.3.gz
+%{_mandir}/man3/tx_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemobj-debug
+Summary: Debug variant of the Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Requires: libpmemobj = %{version}-%{release}
+%description -n libpmemobj-debug
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming. Developers new to persistent memory
+probably want to start with this library.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemobj-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemobj.so
+%{_libdir}/pmdk_debug/libpmemobj.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem
+Summary: Volatile Memory allocation library
+Group: System Environment/Libraries
+%description -n libvmem
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+%files -n libvmem
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-devel
+Summary: Development files for the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-devel
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains libraries and header files for developing
+applications that want to make use of libvmem.
+
+%files -n libvmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmem.so
+%{_libdir}/pkgconfig/libvmem.pc
+%{_includedir}/libvmem.h
+%{_mandir}/man7/libvmem.7.gz
+%{_mandir}/man3/vmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmem-debug
+Summary: Debug variant of the Volatile Memory allocation library
+Group: Development/Libraries
+Requires: libvmem = %{version}-%{release}
+%description -n libvmem-debug
+The libvmem library turns a pool of persistent memory into a volatile
+memory pool, similar to the system heap but kept separate and with
+its own malloc-style API.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmem.so
+%{_libdir}/pmdk_debug/libvmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc
+Summary: Dynamic to Persistent Memory allocation translation library
+Group: System Environment/Libraries
+%description -n libvmmalloc
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+The typical usage of libvmmalloc is to load it via the LD_PRELOAD
+environment variable.
+
+%files -n libvmmalloc
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-devel
+Summary: Development files for the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-devel
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of libvmmalloc.
+
+%files -n libvmmalloc-devel
+%defattr(-,root,root,-)
+%{_libdir}/libvmmalloc.so
+%{_libdir}/pkgconfig/libvmmalloc.pc
+%{_includedir}/libvmmalloc.h
+%{_mandir}/man7/libvmmalloc.7.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libvmmalloc-debug
+Summary: Debug variant of the Dynamic-to-Persistent allocation library
+Group: Development/Libraries
+Requires: libvmmalloc = %{version}-%{release}
+%description -n libvmmalloc-debug
+The libvmmalloc library transparently converts all the dynamic memory
+allocations into persistent memory allocations. This allows the use
+of persistent memory as volatile memory without modifying the target
+application.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libvmmalloc-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libvmmalloc.so
+%{_libdir}/pmdk_debug/libvmmalloc.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+# Specify a virtual Provide for libpmemobj++-static package, so the package
+# usage can be tracked.
+%package -n libpmemobj++-devel
+Summary: C++ bindings for Persistent Memory Transactional Object Store library
+Group: Development/Libraries
+Provides: libpmemobj++-static = %{version}-%{release}
+Requires: libpmemobj-devel = %{version}-%{release}
+%description -n libpmemobj++-devel
+The libpmemobj library provides a transactional object store,
+providing memory allocation, transactions, and general facilities for
+persistent memory programming.
+
+This sub-package contains header files for libpmemobj C++ bindings.
+
+%files -n libpmemobj++-devel
+%defattr(-,root,root,-)
+%{_libdir}/pkgconfig/libpmemobj++.pc
+%{_includedir}/libpmemobj++/*.hpp
+%{_includedir}/libpmemobj++/detail/*.hpp
+%{_docdir}/libpmemobj++-devel/*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool
+Summary: Persistent Memory pool management library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmempool
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-devel
+Summary: Development files for Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmempool-devel
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+%files -n libpmempool-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmempool.so
+%{_libdir}/pkgconfig/libpmempool.pc
+%{_includedir}/libpmempool.h
+%{_mandir}/man7/libpmempool.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmempool_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmempool-debug
+Summary: Debug variant of the Persistent Memory pool management library
+Group: Development/Libraries
+Requires: libpmempool = %{version}-%{release}
+%description -n libpmempool-debug
+The libpmempool library provides a set of utilities for off-line
+administration, analysis, diagnostics and repair of persistent memory
+pools created by libpmemlog, libpemblk and libpmemobj libraries.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmempool-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmempool.so
+%{_libdir}/pmdk_debug/libpmempool.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with fabric}
+
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man7/librpmem.7.gz
+%{_mandir}/man3/rpmem_*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/librpmem.so
+%{_libdir}/pmdk_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+%endif # _with_fabric
+
+
+%package -n libpmemcto
+Summary: Close-to-Open Persistence library
+Group: System Environment/Libraries
+Requires: libpmem >= %{version}-%{release}
+%description -n libpmemcto
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-devel
+Summary: Development files for Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+Requires: libpmem-devel = %{version}-%{release}
+%description -n libpmemcto-devel
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+%files -n libpmemcto-devel
+%defattr(-,root,root,-)
+%{_libdir}/libpmemcto.so
+%{_libdir}/pkgconfig/libpmemcto.pc
+%{_includedir}/libpmemcto.h
+%{_mandir}/man7/libpmemcto.7.gz
+%{_mandir}/man5/poolset.5.gz
+%{_mandir}/man3/pmemcto*.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n libpmemcto-debug
+Summary: Debug variant of the Close-to-Open Persistence library
+Group: Development/Libraries
+Requires: libpmemcto = %{version}-%{release}
+%description -n libpmemcto-debug
+The libpmemcto library is a Persistent Memory allocator with no overhead
+imposed by run-time flushing or transactional updates.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/pmdk_debug.
+
+%files -n libpmemcto-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/pmdk_debug
+%{_libdir}/pmdk_debug/libpmemcto.so
+%{_libdir}/pmdk_debug/libpmemcto.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n pmempool
+Summary: Utilities for Persistent Memory
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+Requires: libpmemlog >= %{version}-%{release}
+Requires: libpmemblk >= %{version}-%{release}
+Requires: libpmemobj >= %{version}-%{release}
+Requires: libpmempool >= %{version}-%{release}
+Requires: libpmemcto >= %{version}-%{release}
+Obsoletes: nvml-tools
+%description -n pmempool
+The pmempool is a standalone utility for management and off-line analysis
+of Persistent Memory pools created by PMDK libraries. It provides a set
+of utilities for administration and diagnostics of Persistent Memory pools.
+The pmempool may be useful for troubleshooting by system administrators
+and users of the applications based on PMDK libraries.
+
+%files -n pmempool
+%{_bindir}/pmempool
+%{_mandir}/man1/pmempool.1.gz
+%{_mandir}/man1/pmempool-*.1.gz
+%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%if %{with ndctl}
+
+%package -n daxio
+Summary: Perform I/O on Device DAX devices or zero a Device DAX device
+Group: System Environment/Base
+Requires: libpmem >= %{version}-%{release}
+%description -n daxio
+The daxio utility performs I/O on Device DAX devices or zero
+a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
+with Device DAX, data transfer is performed on a memory-mapped device.
+The daxio may be used to dump Device DAX data to a file, restore data from
+a backup copy, move/copy data to another device or to erase data from
+a device.
+
+%files -n daxio
+%{_bindir}/daxio
+%{_mandir}/man1/daxio.1.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+%endif # _with_ndctl
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%build
+# For debug build default flags may be overriden to disable compiler
+# optimizations.
+CFLAGS="%{optflags}" \
+LDFLAGS="%{?__global_ldflags}" \
+make %{?_smp_mflags} NORPATH=1
+
+
+# Override LIB_AR with empty string to skip installation of static libraries
+%install
+make install DESTDIR=%{buildroot} \
+ LIB_AR= \
+ prefix=%{_prefix} \
+ libdir=%{_libdir} \
+ includedir=%{_includedir} \
+ mandir=%{_mandir} \
+ bindir=%{_bindir} \
+ sysconfdir=%{_sysconfdir} \
+ docdir=%{_docdir} \
+ CPP_DOC_DIR=libpmemobj++-devel
+mkdir -p %{buildroot}%{_datadir}/pmdk
+cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/
+
+
+
+%check
+%if "%{_check}" == "1"
+ %if "%{_testconfig}" != "default"
+ cp %{_testconfig} src/test/testconfig.sh
+ %else
+ echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+ echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
+ %endif
+ make check
+%else
+ echo "Check skipped"
+%endif
+
+%post -n libpmem -p /sbin/ldconfig
+%postun -n libpmem -p /sbin/ldconfig
+%post -n libpmemblk -p /sbin/ldconfig
+%postun -n libpmemblk -p /sbin/ldconfig
+%post -n libpmemlog -p /sbin/ldconfig
+%postun -n libpmemlog -p /sbin/ldconfig
+%post -n libpmemobj -p /sbin/ldconfig
+%postun -n libpmemobj -p /sbin/ldconfig
+%post -n libvmem -p /sbin/ldconfig
+%postun -n libvmem -p /sbin/ldconfig
+%post -n libvmmalloc -p /sbin/ldconfig
+%postun -n libvmmalloc -p /sbin/ldconfig
+%post -n libpmempool -p /sbin/ldconfig
+%postun -n libpmempool -p /sbin/ldconfig
+%post -n libpmemcto -p /sbin/ldconfig
+%postun -n libpmemcto -p /sbin/ldconfig
+
+%if %{with fabric}
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
+%endif
+
+%if 0%{?__debug_package} == 0
+%debug_package
+%endif
+
+
+%changelog
+* Thu Mar 29 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.4-1
+- Rename NVML project to PMDK
+- Update to PMDK version 1.4 (RHBZ #1480578, #1539562, #1539564)
+
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
+* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
+- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
+
+* Thu Mar 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.1-1
+- Update to NVML version 1.2.1 (RHBZ #1425038)
+
+* Tue Feb 21 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-3
+- Fix compilation under gcc 7.0.x (RHBZ #1424004)
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Fri Dec 30 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2-1
+- Update to NVML version 1.2 (RHBZ #1383467)
+- Add libpmemobj C++ bindings
+
+* Thu Jul 14 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-3
+- Add missing package version requirements
+
+* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-2
+- Move debug variants of the libraries to -debug subpackages
+
+* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.1-1
+- NVML 1.1 release
+- Update link to source tarball
+- Add libpmempool subpackage
+- Remove obsolete patches
+
+* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
+- switch to ExclusiveArch
+
+* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-2
+- Exclude PPC architecture
+- Add bug numbers for excluded architectures
+
+* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.0-1
+- Initial RPM release
diff --git a/sources b/sources
index ab9af0d..087d117 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.3.1.tar.gz) = 1ba8a846f6e0c41af1ec4d6a8db8ec4775a09525caa6d5a4b63df9f11d9f9b541c2968430a5802a529081c2f37e7375ee2c527fc6ff73bde34ddadd27295e4ec
+SHA512 (pmdk-1.4.tar.gz) = 95dbea9acfea4a6cb433a25f56f7484946a93fbce1c5e0e1d6ff36e0824e3e0e9f28f37024918998358f8ff12e69d0902fcf88357b9ad12695f32e06e86ffac8
commit 0b43337c7519fcadb93aa8fa9af70a0aa99ab4ed
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Feb 8 08:39:38 2018 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/nvml.spec b/nvml.spec
index 3c19ba7..86f5c86 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Feb 08 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
- Update to NVML version 1.3.1 (RHBZ #1480578)
commit 365af7daa5376462e19407d77ef996cadc969a31
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Sat Jan 27 14:49:55 2018 +0100
NVML 1.3.1 release
diff --git a/.gitignore b/.gitignore
index b7c4364..bd78bc5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@
/nvml-1.2.2.tar.gz
/nvml-1.2.3.tar.gz
/nvml-1.3.tar.gz
+/nvml-1.3.1.tar.gz
diff --git a/nvml.spec b/nvml.spec
index c7055fe..3c19ba7 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
-Version: 1.3
-Release: 3%{?dist}
+Version: 1.3.1
+Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Sat Jan 27 2018 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3.1-1
+- Update to NVML version 1.3.1 (RHBZ #1480578)
+
* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
diff --git a/sources b/sources
index cb65b14..ab9af0d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.3.tar.gz) = 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd
+SHA512 (nvml-1.3.1.tar.gz) = 1ba8a846f6e0c41af1ec4d6a8db8ec4775a09525caa6d5a4b63df9f11d9f9b541c2968430a5802a529081c2f37e7375ee2c527fc6ff73bde34ddadd27295e4ec
commit 9b53fa62700e9656adf2dac39df3aae44808175c
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Aug 3 04:11:00 2017 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
diff --git a/nvml.spec b/nvml.spec
index bba25f0..c7055fe 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
commit c67349e76004207b750ac439b9a57775bf55703a
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jul 27 01:22:41 2017 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
diff --git a/nvml.spec b/nvml.spec
index ca983f2..bba25f0 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -661,6 +661,9 @@ make check
%changelog
+* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
- Add librpmem and rpmemd sub-packages
commit 2b28a6f5c64a14cc17dfae88a12eb9cc07d80d0b
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Mon Jul 17 17:08:15 2017 +0200
NVML 1.3 release
diff --git a/.gitignore b/.gitignore
index e126c82..b7c4364 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@
/nvml-1.2.1.tar.gz
/nvml-1.2.2.tar.gz
/nvml-1.2.3.tar.gz
+/nvml-1.3.tar.gz
diff --git a/nvml.spec b/nvml.spec
index 446e5f9..ca983f2 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
-Version: 1.2.3
-Release: 2%{?dist}
+Version: 1.3
+Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -13,12 +13,15 @@ BuildRequires: automake
BuildRequires: man
BuildRequires: pkgconfig
BuildRequires: doxygen
+BuildRequires: gdb
+
+%define min_libfabric_ver 1.4.2
+BuildRequires: libfabric-devel >= %{min_libfabric_ver}
# Debug variants of the libraries should be filtered out of the provides.
%global __provides_exclude_from ^%{_libdir}/nvml_debug/.*\\.so.*$
-
# By design, NVML does not support any 32-bit architecture.
# Due to dependency on xmmintrin.h and some inline assembly, it can be
# compiled only for x86_64 at the moment.
@@ -498,6 +501,81 @@ debug version is to set the environment variable LD_LIBRARY_PATH to
%doc ChangeLog CONTRIBUTING.md README.md
+%package -n librpmem
+Summary: Remote Access to Persistent Memory library
+Group: System Environment/Libraries
+Requires: libfabric >= %{min_libfabric_ver}
+Requires: openssh-clients
+%description -n librpmem
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+%files -n librpmem
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-devel
+Summary: Development files for the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-devel
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains libraries and header files for developing
+applications that want to specifically make use of librpmem.
+
+%files -n librpmem-devel
+%defattr(-,root,root,-)
+%{_libdir}/librpmem.so
+%{_libdir}/pkgconfig/librpmem.pc
+%{_includedir}/librpmem.h
+%{_mandir}/man3/librpmem.3.gz
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n librpmem-debug
+Summary: Debug variant of the Remote Access to Persistent Memory library
+Group: Development/Libraries
+Requires: librpmem = %{version}-%{release}
+%description -n librpmem-debug
+The librpmem library provides low-level support for remote access
+to persistent memory utilizing RDMA-capable NICs. It can be used
+to replicate peristent memory regions over RDMA protocol.
+
+This sub-package contains debug variant of the library, providing
+run-time assertions and trace points. The typical way to access the
+debug version is to set the environment variable LD_LIBRARY_PATH to
+/usr/lib64/nvml_debug.
+
+%files -n librpmem-debug
+%defattr(-,root,root,-)
+%dir %{_libdir}/nvml_debug
+%{_libdir}/nvml_debug/librpmem.so
+%{_libdir}/nvml_debug/librpmem.so.*
+%license LICENSE
+%doc ChangeLog CONTRIBUTING.md README.md
+
+
+%package -n rpmemd
+Group: System Environment/Base
+Summary: Target node process executed by librpmem
+Requires: libfabric >= %{min_libfabric_ver}
+%description -n rpmemd
+The rpmemd process is executed on a target node by librpmem library
+and facilitates access to persistent memory over RDMA.
+
+%files -n rpmemd
+%{_bindir}/rpmemd
+%{_mandir}/man1/rpmemd.1.gz
+
+
%package tools
Summary: Utilities for Persistent Memory
Group: System Environment/Base
@@ -555,7 +633,8 @@ cp utils/nvml.magic %{buildroot}%{_datadir}/nvml/
%check
-cp src/test/testconfig.sh.example src/test/testconfig.sh
+echo "PMEM_FS_DIR=/tmp" > src/test/testconfig.sh
+echo "PMEM_FS_DIR_FORCE_PMEM=1" >> src/test/testconfig.sh
make check
@@ -573,7 +652,8 @@ make check
%postun -n libvmmalloc -p /sbin/ldconfig
%post -n libpmempool -p /sbin/ldconfig
%postun -n libpmempool -p /sbin/ldconfig
-
+%post -n librpmem -p /sbin/ldconfig
+%postun -n librpmem -p /sbin/ldconfig
%if 0%{?__debug_package} == 0
%debug_package
@@ -581,6 +661,11 @@ make check
%changelog
+* Mon Jul 17 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.3-1
+- Update to NVML version 1.3 (RHBZ #1451741, RHBZ #1455216)
+- Add librpmem and rpmemd sub-packages
+- Force file system to appear as PMEM for make check
+
* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
- Update to NVML version 1.2.3 (RHBZ #1451741)
diff --git a/sources b/sources
index c519f81..cb65b14 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.2.3.tar.gz) = 17119a2bf4b7b790c63ecec98eb4a0d46e81d99b5f38c12933a07c8119ce95c3623285795b02d65d5a02ff1507f71faa8dde7284241d340913fabe1475d8f735
+SHA512 (nvml-1.3.tar.gz) = 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd
commit 7e411eb92c77e4c892dca8e3f2e839f809af6e22
Author: Krzysztof Czurylo <krzycz(a)krzycz-fedora25.igk.intel.com>
Date: Fri Jun 16 12:06:13 2017 +0200
NVML 1.2.3 release
diff --git a/.gitignore b/.gitignore
index 64077fd..e126c82 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/nvml-1.2.tar.gz
/nvml-1.2.1.tar.gz
/nvml-1.2.2.tar.gz
+/nvml-1.2.3.tar.gz
diff --git a/nvml.spec b/nvml.spec
index e77745c..446e5f9 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,7 +1,7 @@
Name: nvml
Version: 1.2.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
URL: http://pmem.io/nvml
@@ -581,6 +581,9 @@ make check
%changelog
+* Fri Jun 16 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.3-2
+- Update to NVML version 1.2.3 (RHBZ #1451741)
+
* Sat Apr 15 2017 Krzysztof Czurylo <krzysztof.czurylo(a)intel.com> - 1.2.2-1
- Update to NVML version 1.2.2 (RHBZ #1436820, RHBZ #1425038)
diff --git a/sources b/sources
index aeb986e..c519f81 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nvml-1.2.2.tar.gz) = 1cca38e579307308ac9be1e1e648893707f19b62f0d5d9377db38a8a4a1f16352c8d731fa76d4ba31b57a0bbace02ba6127b9bf2d03fe0f92a45f1f4c8b24ed6
+SHA512 (nvml-1.2.3.tar.gz) = 17119a2bf4b7b790c63ecec98eb4a0d46e81d99b5f38c12933a07c8119ce95c3623285795b02d65d5a02ff1507f71faa8dde7284241d340913fabe1475d8f735
commit 0f82edfeaa831e90c412dc062fc255fed8c9f491
Author: Krzysztof Czurylo <krzysztof.czurylo(a)intel.com>
Date: Mon Jun 12 22:20:34 2017 +0200
NVML 1.2.3 release
diff --git a/nvml.spec b/nvml.spec
index a36774e..e77745c 100644
--- a/nvml.spec
+++ b/nvml.spec
@@ -1,6 +1,6 @@
Name: nvml
-Version: 1.2.2
+Version: 1.2.3
Release: 1%{?dist}
Summary: Non-Volatile Memory Library
License: BSD
6 years