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@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html