All of lore.kernel.org
 help / color / mirror / Atom feed
* boost: to download, or not to download?
@ 2017-11-23 23:35 Nathan Cutler
  2017-11-24  1:39 ` kefu chai
  0 siblings, 1 reply; 3+ messages in thread
From: Nathan Cutler @ 2017-11-23 23:35 UTC (permalink / raw)
  To: ceph-devel

Background: I'm trying to build Ceph in OBS from the tarball generated 
by make-dist.

I noticed that Shaman builds download Boost from the Internet - this is 
not an option in OBS because the build workers there do not have 
external network connectivity.

Examining make-dist, it seems very much to be downloading Boost and 
including it in the tarball, but not in a way that convinces Ceph to not 
download it again during the actual build.

There are two problems that I can see:

First, make-dist makes its final tarball by merging three tarballs into 
one, and in the process ends up putting the boost code out-of-tree. This 
is trivial to fix.

Second, even when I fix that, BuildBoost.cmake ignores it because of 
this line:

if(EXISTS 
"${PROJECT_SOURCE_DIR}/src/boost/libs/config/include/boost/config.hpp")

There simply is no such subdirectory "include" under 
src/boost/libs/config so the EXISTS conditional always evaluates to 
"false" and hence Boost always gets downloaded from the Internet: 
https://github.com/ceph/ceph/blob/master/cmake/modules/BuildBoost.cmake#L78-L85

Any hints will be greatly appreciated! It doesn't seem right that 
make-dist goes to the trouble of downloading Boost and including it in 
the tarball, only to have to re-download it at build time.

Nathan

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: boost: to download, or not to download?
  2017-11-23 23:35 boost: to download, or not to download? Nathan Cutler
@ 2017-11-24  1:39 ` kefu chai
  2017-11-24  3:16   ` kefu chai
  0 siblings, 1 reply; 3+ messages in thread
From: kefu chai @ 2017-11-24  1:39 UTC (permalink / raw)
  To: Nathan Cutler; +Cc: ceph-devel

On Fri, Nov 24, 2017 at 7:35 AM, Nathan Cutler <ncutler@suse.cz> wrote:
> Background: I'm trying to build Ceph in OBS from the tarball generated by
> make-dist.
>
> I noticed that Shaman builds download Boost from the Internet - this is not
> an option in OBS because the build workers there do not have external
> network connectivity.
>
> Examining make-dist, it seems very much to be downloading Boost and
> including it in the tarball, but not in a way that convinces Ceph to not
> download it again during the actual build.
>
> There are two problems that I can see:
>
> First, make-dist makes its final tarball by merging three tarballs into one,
> and in the process ends up putting the boost code out-of-tree. This is
> trivial to fix.
>
> Second, even when I fix that, BuildBoost.cmake ignores it because of this
> line:
>
> if(EXISTS
> "${PROJECT_SOURCE_DIR}/src/boost/libs/config/include/boost/config.hpp")
>
> There simply is no such subdirectory "include" under src/boost/libs/config
> so the EXISTS conditional always evaluates to "false" and hence Boost always
> gets downloaded from the Internet:
> https://github.com/ceph/ceph/blob/master/cmake/modules/BuildBoost.cmake#L78-L85
>
> Any hints will be greatly appreciated! It doesn't seem right that make-dist
> goes to the trouble of downloading Boost and including it in the tarball,
> only to have to re-download it at build time.

Nathan, sorry for the trouble. i will take care of it.

>
> Nathan
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Regards
Kefu Chai

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: boost: to download, or not to download?
  2017-11-24  1:39 ` kefu chai
@ 2017-11-24  3:16   ` kefu chai
  0 siblings, 0 replies; 3+ messages in thread
From: kefu chai @ 2017-11-24  3:16 UTC (permalink / raw)
  To: Nathan Cutler; +Cc: ceph-devel

On Fri, Nov 24, 2017 at 9:39 AM, kefu chai <tchaikov@gmail.com> wrote:
> On Fri, Nov 24, 2017 at 7:35 AM, Nathan Cutler <ncutler@suse.cz> wrote:
>> Background: I'm trying to build Ceph in OBS from the tarball generated by
>> make-dist.
>>
>> I noticed that Shaman builds download Boost from the Internet - this is not
>> an option in OBS because the build workers there do not have external
>> network connectivity.
>>
>> Examining make-dist, it seems very much to be downloading Boost and
>> including it in the tarball, but not in a way that convinces Ceph to not
>> download it again during the actual build.
>>
>> There are two problems that I can see:
>>
>> First, make-dist makes its final tarball by merging three tarballs into one,
>> and in the process ends up putting the boost code out-of-tree. This is
>> trivial to fix.
>>
>> Second, even when I fix that, BuildBoost.cmake ignores it because of this
>> line:
>>
>> if(EXISTS
>> "${PROJECT_SOURCE_DIR}/src/boost/libs/config/include/boost/config.hpp")
>>
>> There simply is no such subdirectory "include" under src/boost/libs/config
>> so the EXISTS conditional always evaluates to "false" and hence Boost always
>> gets downloaded from the Internet:
>> https://github.com/ceph/ceph/blob/master/cmake/modules/BuildBoost.cmake#L78-L85
>>
>> Any hints will be greatly appreciated! It doesn't seem right that make-dist
>> goes to the trouble of downloading Boost and including it in the tarball,
>> only to have to re-download it at build time.
>
> Nathan, sorry for the trouble. i will take care of it.

https://github.com/ceph/ceph/pull/19124

-- 
Regards
Kefu Chai

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-11-24  3:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-23 23:35 boost: to download, or not to download? Nathan Cutler
2017-11-24  1:39 ` kefu chai
2017-11-24  3:16   ` kefu chai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.