All of lore.kernel.org
 help / color / mirror / Atom feed
* RPMs on build.opensuse.org
       [not found] ` <201110071216.12793.cndegen@suse.de>
@ 2011-10-10  4:39   ` Sage Weil
  2011-10-10  6:17     ` Hannes Reinecke
  0 siblings, 1 reply; 5+ messages in thread
From: Sage Weil @ 2011-10-10  4:39 UTC (permalink / raw)
  To: ceph-devel; +Cc: Christian Degen, PChadwick, dona.holmberg, Bryan Bogensberger

Hey everyone,

Over the last few days I've wasted far more hours than I care to 
remember/admit futzing around with the ceph.spec file.  The goal is to use 
build.opensuse.org (or maybe a private instance) to build RPMs for 
multiple platforms, including opensuse, sles, fedora, rhel, and centos.

	https://build.opensuse.org/package/show?package=ceph&project=home%3Aliewegas

A few things:
 - I can't build packages in the actual RHEL environments because some 
   legal thing makes the -devel packages unavailable, so you need to look 
   at the CentOS ones instead.
 - A bunch of debian targets are listed, but I didn't pull the debian/ dir 
   out of the tarball, so those show up as excluded currently.
 - The tarball that in the build.opensuse.org repo is a snapshot from 
   recent master, not the actual ceph-0.36.tar.gz.  The .spec file also 
   has several changes that aren't in ceph.git yet.  Work from the 
   openbuild versions and I'll integrate back into the upstream once 
   things actually work.
	https://build.opensuse.org/package/files?package=ceph&project=home%3Aliewegas 

Here is where things currently stand:

 - openSUSE_Tumbleweed, openSUSE_Factory, openSUSE_11.4, openSUSE_11.3
   - Seems to build fine...
   - ...but there are errors about insserv I have no idea how to fix:

insserv: FATAL: service network has to be enabled to use service ceph
insserv: exiting now!
/sbin/insserv failed, exit code 1

 - SLE_11, SLE_11_SP1:
   - The configure libedit check defines LIBEDIT_LIBS, which includes 
     -lcurses, and ncurses-devel gets installed, but

/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: 
cannot find -lcurses

     This is annoying, because the configure macro is the one deciding to 
     link that in in the first place...  Do I need to list some other
     ncurses -devel package explicitly as a build depenency??


 - Fedora_14, 15 i586:
   - The atomic test and set stuff doesn't seem to work on a uint32_t:

/home/abuild/rpmbuild/BUILD/ceph-0.36/src/common/simple_spin.cc:42: 
undefined reference to `__sync_bool_compare_and_swap_4'


 - Suddenly build.opensuse.org isn't showing build logfiles anymore 
   ('remote error: no socket attached'), so I don't have details on the 
   others.  :(

In case it isn't obvious, I know next to nothing about writing spec 
files, and have probably made a mess of things trying to make it happy on
all of these platforms.  Any help here would be greatly appreciated!

sage


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

* Re: RPMs on build.opensuse.org
  2011-10-10  4:39   ` RPMs on build.opensuse.org Sage Weil
@ 2011-10-10  6:17     ` Hannes Reinecke
  2011-10-11  2:41       ` Sage Weil
  0 siblings, 1 reply; 5+ messages in thread
From: Hannes Reinecke @ 2011-10-10  6:17 UTC (permalink / raw)
  To: Sage Weil
  Cc: ceph-devel, Christian Degen, PChadwick, dona.holmberg,
	Bryan Bogensberger

Hi Sage,
On 10/10/2011 06:39 AM, Sage Weil wrote:
> Hey everyone,
>
> Over the last few days I've wasted far more hours than I care to
> remember/admit futzing around with the ceph.spec file.  The goal is to use
> build.opensuse.org (or maybe a private instance) to build RPMs for
> multiple platforms, including opensuse, sles, fedora, rhel, and centos.
>
> 	https://build.opensuse.org/package/show?package=ceph&project=home%3Aliewegas
>
> A few things:
>   - I can't build packages in the actual RHEL environments because some
>     legal thing makes the -devel packages unavailable, so you need to look
>     at the CentOS ones instead.
>   - A bunch of debian targets are listed, but I didn't pull the debian/ dir
>     out of the tarball, so those show up as excluded currently.
>   - The tarball that in the build.opensuse.org repo is a snapshot from
>     recent master, not the actual ceph-0.36.tar.gz.  The .spec file also
>     has several changes that aren't in ceph.git yet.  Work from the
>     openbuild versions and I'll integrate back into the upstream once
>     things actually work.
> 	https://build.opensuse.org/package/files?package=ceph&project=home%3Aliewegas
>
> Here is where things currently stand:
>
>   - openSUSE_Tumbleweed, openSUSE_Factory, openSUSE_11.4, openSUSE_11.3
>     - Seems to build fine...
>     - ...but there are errors about insserv I have no idea how to fix:
>
> insserv: FATAL: service network has to be enabled to use service ceph
> insserv: exiting now!
> /sbin/insserv failed, exit code 1
>
>   - SLE_11, SLE_11_SP1:
>     - The configure libedit check defines LIBEDIT_LIBS, which includes
>       -lcurses, and ncurses-devel gets installed, but
>
> /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld:
> cannot find -lcurses
>
>       This is annoying, because the configure macro is the one deciding to
>       link that in in the first place...  Do I need to list some other
>       ncurses -devel package explicitly as a build depenency??
>
>
>   - Fedora_14, 15 i586:
>     - The atomic test and set stuff doesn't seem to work on a uint32_t:
>
> /home/abuild/rpmbuild/BUILD/ceph-0.36/src/common/simple_spin.cc:42:
> undefined reference to `__sync_bool_compare_and_swap_4'
>
>
>   - Suddenly build.opensuse.org isn't showing build logfiles anymore
>     ('remote error: no socket attached'), so I don't have details on the
>     others.  :(
>
> In case it isn't obvious, I know next to nothing about writing spec
> files, and have probably made a mess of things trying to make it happy on
> all of these platforms.  Any help here would be greatly appreciated!
>
Hmm. Seems this hasn't been send in your direction, but I've already 
put ceph in the buildservice:

home:hreinecke:storage

The insserv thing is easy to workaround; just don't enable service 
ceph when installing the package :-)

But note I had to fiddle with the spec file a bit (the one from git 
tree seems to be a bit outdated).
And I've had to do two minor tweaks for openSUSE/SLES:
- 'docdir' is defined in configure.ac; this prohibits it to be 
redefined from the commandline. We should rather leave it empty and 
have it specified via the --docdir switch.
- openSUSE/SLES installs the fastcgi headers in its own subdir,
   so we need some configure logic to test for this.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
--
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

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

* Re: RPMs on build.opensuse.org
  2011-10-10  6:17     ` Hannes Reinecke
@ 2011-10-11  2:41       ` Sage Weil
  2011-10-11 19:45         ` Kelly Kane
  2011-10-12 20:02         ` Sage Weil
  0 siblings, 2 replies; 5+ messages in thread
From: Sage Weil @ 2011-10-11  2:41 UTC (permalink / raw)
  To: Hannes Reinecke
  Cc: ceph-devel, Christian Degen, PChadwick, dona.holmberg,
	Bryan Bogensberger

Hi Hannes!

On Mon, 10 Oct 2011, Hannes Reinecke wrote:
> Hi Sage,
> On 10/10/2011 06:39 AM, Sage Weil wrote:
> > Hey everyone,
> > 
> > Over the last few days I've wasted far more hours than I care to
> > remember/admit futzing around with the ceph.spec file.  The goal is to use
> > build.opensuse.org (or maybe a private instance) to build RPMs for
> > multiple platforms, including opensuse, sles, fedora, rhel, and centos.
> > 
> > 	https://build.opensuse.org/package/show?package=ceph&project=home%3Aliewegas
> > 
> > A few things:
> >   - I can't build packages in the actual RHEL environments because some
> >     legal thing makes the -devel packages unavailable, so you need to look
> >     at the CentOS ones instead.
> >   - A bunch of debian targets are listed, but I didn't pull the debian/ dir
> >     out of the tarball, so those show up as excluded currently.
> >   - The tarball that in the build.opensuse.org repo is a snapshot from
> >     recent master, not the actual ceph-0.36.tar.gz.  The .spec file also
> >     has several changes that aren't in ceph.git yet.  Work from the
> >     openbuild versions and I'll integrate back into the upstream once
> >     things actually work.
> > 	https://build.opensuse.org/package/files?package=ceph&project=home%3Aliewegas
> > 
> > Here is where things currently stand:
> > 
> >   - openSUSE_Tumbleweed, openSUSE_Factory, openSUSE_11.4, openSUSE_11.3
> >     - Seems to build fine...
> >     - ...but there are errors about insserv I have no idea how to fix:
> > 
> > insserv: FATAL: service network has to be enabled to use service ceph
> > insserv: exiting now!
> > /sbin/insserv failed, exit code 1
> > 
> >   - SLE_11, SLE_11_SP1:
> >     - The configure libedit check defines LIBEDIT_LIBS, which includes
> >       -lcurses, and ncurses-devel gets installed, but
> > 
> > /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld:
> > cannot find -lcurses
> > 
> >       This is annoying, because the configure macro is the one deciding to
> >       link that in in the first place...  Do I need to list some other
> >       ncurses -devel package explicitly as a build depenency??
> > 
> > 
> >   - Fedora_14, 15 i586:
> >     - The atomic test and set stuff doesn't seem to work on a uint32_t:
> > 
> > /home/abuild/rpmbuild/BUILD/ceph-0.36/src/common/simple_spin.cc:42:
> > undefined reference to `__sync_bool_compare_and_swap_4'
> > 
> > 
> >   - Suddenly build.opensuse.org isn't showing build logfiles anymore
> >     ('remote error: no socket attached'), so I don't have details on the
> >     others.  :(
> > 
> > In case it isn't obvious, I know next to nothing about writing spec
> > files, and have probably made a mess of things trying to make it happy on
> > all of these platforms.  Any help here would be greatly appreciated!
> > 
> Hmm. Seems this hasn't been send in your direction, but I've already put ceph
> in the buildservice:
> 
> home:hreinecke:storage
> 
> The insserv thing is easy to workaround; just don't enable service ceph when
> installing the package :-)

Hmm, yeah... Is that the right thing to do though?  Don't RPMs normally 
enable the serve when you install them?

> But note I had to fiddle with the spec file a bit (the one from git tree seems
> to be a bit outdated).
> And I've had to do two minor tweaks for openSUSE/SLES:
> - 'docdir' is defined in configure.ac; this prohibits it to be redefined from
> the commandline. We should rather leave it empty and have it specified via the
> --docdir switch.
> - openSUSE/SLES installs the fastcgi headers in its own subdir,
>   so we need some configure logic to test for this.

I've fixed both of these in the upstream ceph.git, at least...

sage

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

* Re: RPMs on build.opensuse.org
  2011-10-11  2:41       ` Sage Weil
@ 2011-10-11 19:45         ` Kelly Kane
  2011-10-12 20:02         ` Sage Weil
  1 sibling, 0 replies; 5+ messages in thread
From: Kelly Kane @ 2011-10-11 19:45 UTC (permalink / raw)
  To: Sage Weil
  Cc: Hannes Reinecke, ceph-devel, Christian Degen, PChadwick,
	dona.holmberg, Bryan Bogensberger

On Mon, Oct 10, 2011 at 19:41, Sage Weil <sage@newdream.net> wrote:
>>
>> The insserv thing is easy to workaround; just don't enable service ceph when
>> installing the package :-)
>
> Hmm, yeah... Is that the right thing to do though?  Don't RPMs normally
> enable the serve when you install them?

I think it is up to the package developer. For example on CentOS 5.4
lighttpd and httpd do not start themselves, but I know the MySQL
Community packages do start themselves. I know with MySQL I also
always wind up immediately stopping it after it's installed to do
configuration. As configuration of any given Ceph node is likely to be
part of a larger configuration management/automation system it seems
like it would be fine to push responsibility of "service ceph start"
off onto the system administrators. I would still configure it to
start automatically on boot in the rpm.

Kelly
--
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

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

* Re: RPMs on build.opensuse.org
  2011-10-11  2:41       ` Sage Weil
  2011-10-11 19:45         ` Kelly Kane
@ 2011-10-12 20:02         ` Sage Weil
  1 sibling, 0 replies; 5+ messages in thread
From: Sage Weil @ 2011-10-12 20:02 UTC (permalink / raw)
  To: Hannes Reinecke
  Cc: ceph-devel, Christian Degen, PChadwick, dona.holmberg,
	Bryan Bogensberger

Hey,

The Fedora 14/15 i586 failures came up on IRC.  It looks like the 
openbuild fedora environments don't have redhat-rpm-config installed, and 
as a result the RPM_OPT_FLAGS are building for i386 instead of something a 
bit less ancient.

For now I can hack around that in the .spec, but presumably that should be 
fixed on build.opensuse.org?

Reposting the IRC conversation here for posterity:

(11:10:53 AM) danpb: Tv|work: i can't remember exactly why - its in email 
threas somewhere,  but  Fedora does   -march=i386  -mtune=i686 
(11:11:11 AM) Tv|work: danpb: because somebody had an early pentium 
machine that they really really loved?
(11:12:08 AM) Tv|work: some googling tells me fedora switched from i386 to 
i586 default in 2009: 
http://lists.fedoraproject.org/pipermail/devel-announce/2009-March/000378.html
(11:12:22 AM) Tv|work: 
http://fedoraproject.org/wiki/Features/ArchitectureSupport
(11:12:40 AM) danpb: sagewk: before this line of ceph.spec.in 
(11:12:40 AM) danpb:    make -j$(getconf _NPROCESSORS_ONLN) 
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS"
(11:13:07 AM) danpb: try doing something like      
(11:13:07 AM) danpb: export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed -e 
's/i386/i486/'`
(11:13:39 AM) Tv|work: 
http://fedoraproject.org/wiki/Features/F12X86Support says i686 for F12 -- 
etc
(11:15:44 AM) sagewk: danpb: oh right, this section is just shell
(11:20:33 AM) danpb: Tv|work: hmm, yes, it could be the suse builders 
don't have  a redhat-rpm-config installed to set the opts correctly then 
(11:25:48 AM) danpb: Tv|work: sagewk  ah yes, i confirmed the machine i 
had this problem on was missing  'redhat-rpm-config' package. installing 
that fixes the compile flags to -march=i686 -mtune=atom

sage



On Mon, 10 Oct 2011, Sage Weil wrote:

> Hi Hannes!
> 
> On Mon, 10 Oct 2011, Hannes Reinecke wrote:
> > Hi Sage,
> > On 10/10/2011 06:39 AM, Sage Weil wrote:
> > > Hey everyone,
> > > 
> > > Over the last few days I've wasted far more hours than I care to
> > > remember/admit futzing around with the ceph.spec file.  The goal is to use
> > > build.opensuse.org (or maybe a private instance) to build RPMs for
> > > multiple platforms, including opensuse, sles, fedora, rhel, and centos.
> > > 
> > > 	https://build.opensuse.org/package/show?package=ceph&project=home%3Aliewegas
> > > 
> > > A few things:
> > >   - I can't build packages in the actual RHEL environments because some
> > >     legal thing makes the -devel packages unavailable, so you need to look
> > >     at the CentOS ones instead.
> > >   - A bunch of debian targets are listed, but I didn't pull the debian/ dir
> > >     out of the tarball, so those show up as excluded currently.
> > >   - The tarball that in the build.opensuse.org repo is a snapshot from
> > >     recent master, not the actual ceph-0.36.tar.gz.  The .spec file also
> > >     has several changes that aren't in ceph.git yet.  Work from the
> > >     openbuild versions and I'll integrate back into the upstream once
> > >     things actually work.
> > > 	https://build.opensuse.org/package/files?package=ceph&project=home%3Aliewegas
> > > 
> > > Here is where things currently stand:
> > > 
> > >   - openSUSE_Tumbleweed, openSUSE_Factory, openSUSE_11.4, openSUSE_11.3
> > >     - Seems to build fine...
> > >     - ...but there are errors about insserv I have no idea how to fix:
> > > 
> > > insserv: FATAL: service network has to be enabled to use service ceph
> > > insserv: exiting now!
> > > /sbin/insserv failed, exit code 1
> > > 
> > >   - SLE_11, SLE_11_SP1:
> > >     - The configure libedit check defines LIBEDIT_LIBS, which includes
> > >       -lcurses, and ncurses-devel gets installed, but
> > > 
> > > /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld:
> > > cannot find -lcurses
> > > 
> > >       This is annoying, because the configure macro is the one deciding to
> > >       link that in in the first place...  Do I need to list some other
> > >       ncurses -devel package explicitly as a build depenency??
> > > 
> > > 
> > >   - Fedora_14, 15 i586:
> > >     - The atomic test and set stuff doesn't seem to work on a uint32_t:
> > > 
> > > /home/abuild/rpmbuild/BUILD/ceph-0.36/src/common/simple_spin.cc:42:
> > > undefined reference to `__sync_bool_compare_and_swap_4'
> > > 
> > > 
> > >   - Suddenly build.opensuse.org isn't showing build logfiles anymore
> > >     ('remote error: no socket attached'), so I don't have details on the
> > >     others.  :(
> > > 
> > > In case it isn't obvious, I know next to nothing about writing spec
> > > files, and have probably made a mess of things trying to make it happy on
> > > all of these platforms.  Any help here would be greatly appreciated!
> > > 
> > Hmm. Seems this hasn't been send in your direction, but I've already put ceph
> > in the buildservice:
> > 
> > home:hreinecke:storage
> > 
> > The insserv thing is easy to workaround; just don't enable service ceph when
> > installing the package :-)
> 
> Hmm, yeah... Is that the right thing to do though?  Don't RPMs normally 
> enable the serve when you install them?
> 
> > But note I had to fiddle with the spec file a bit (the one from git tree seems
> > to be a bit outdated).
> > And I've had to do two minor tweaks for openSUSE/SLES:
> > - 'docdir' is defined in configure.ac; this prohibits it to be redefined from
> > the commandline. We should rather leave it empty and have it specified via the
> > --docdir switch.
> > - openSUSE/SLES installs the fastcgi headers in its own subdir,
> >   so we need some configure logic to test for this.
> 
> I've fixed both of these in the upstream ceph.git, at least...
> 
> sage
> --
> 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
> 
> 

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

end of thread, other threads:[~2011-10-12 20:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <Pine.LNX.4.64.1110041025030.23052@cobra.newdream.net>
     [not found] ` <201110071216.12793.cndegen@suse.de>
2011-10-10  4:39   ` RPMs on build.opensuse.org Sage Weil
2011-10-10  6:17     ` Hannes Reinecke
2011-10-11  2:41       ` Sage Weil
2011-10-11 19:45         ` Kelly Kane
2011-10-12 20:02         ` Sage Weil

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.