[Gluster-devel] Cmockery2 in GlusterFS
Prashanth Pai
ppai at redhat.com
Tue Jul 22 06:06:49 UTC 2014
+1
I had to do a "yum install cmockery2-devel" on my F20 to build gluster from latest master.
It would be nice to have --enable-cmockery2 or --disable-cmockery2 option in ./configure.
Regards,
-Prashanth Pai
----- Original Message -----
From: "Harshavardhana" <harsha at harshavardhana.net>
To: "Luis Pabon" <lpabon at redhat.com>
Cc: "Gluster Devel" <gluster-devel at gluster.org>
Sent: Monday, July 21, 2014 10:48:55 PM
Subject: Re: [Gluster-devel] Cmockery2 in GlusterFS
Cmockery2 is a hard dependency before GlusterFS can be compiled in
upstream master now - we could make it conditional
and enable if necessary? since we know we do not have the cmockery2
packages available on all systems?
On Mon, Jul 21, 2014 at 10:16 AM, Luis Pabon <lpabon at redhat.com> wrote:
> Niels you are correct. Let me take a look.
>
> Luis
>
>
> -----Original Message-----
> From: Niels de Vos [ndevos at redhat.com]
> Received: Monday, 21 Jul 2014, 10:41AM
> To: Luis Pabon [lpabon at redhat.com]
> CC: Anders Blomdell [anders.blomdell at control.lth.se];
> gluster-devel at gluster.org
> Subject: Re: [Gluster-devel] Cmockery2 in GlusterFS
>
>
> On Mon, Jul 21, 2014 at 04:27:18PM +0200, Anders Blomdell wrote:
>> On 2014-07-21 16:17, Anders Blomdell wrote:
>> > On 2014-07-20 16:01, Niels de Vos wrote:
>> >> On Fri, Jul 18, 2014 at 02:52:18PM -0400, Luis Pabón wrote:
>> >>> Hi all,
>> >>> A few months ago, the unit test framework based on cmockery2 was
>> >>> in the repo for a little while, then removed while we improved the
>> >>> packaging method. Now support for cmockery2 (
>> >>> http://review.gluster.org/#/c/7538/ ) has been merged into the repo
>> >>> again. This will most likely require you to install cmockery2 on
>> >>> your development systems by doing the following:
>> >>>
>> >>> * Fedora/EPEL:
>> >>> $ sudo yum -y install cmockery2-devel
>> >>>
>> >>> * All other systems please visit the following page:
>> >>> https://github.com/lpabon/cmockery2/blob/master/doc/usage.md#installation
>> >>>
>> >>> Here is also some information about Cmockery2 and how to use it:
>> >>>
>> >>> * Introduction to Unit Tests in C Presentation:
>> >>> http://slides-lpabon.rhcloud.com/feb24_glusterfs_unittest.html#/
>> >>> * Cmockery2 Usage Guide:
>> >>> https://github.com/lpabon/cmockery2/blob/master/doc/usage.md
>> >>> * Using Cmockery2 with GlusterFS:
>> >>> https://github.com/gluster/glusterfs/blob/master/doc/hacker-guide/en-US/markdown/unittest.md
>> >>>
>> >>>
>> >>> When starting out writing unit tests, I would suggest writing unit
>> >>> tests for non-xlator interface files when you start. Once you feel
>> >>> more comfortable writing unit tests, then move to writing them for
>> >>> the xlators interface files.
>> >>
>> >> Awesome, many thanks! I'd like to add some unittests for the RPC and
>> >> NFS
>> >> layer. Several functions (like ip-address/netmask matching for ACLs)
>> >> look very suitable.
>> >>
>> >> Did you have any particular functions in mind that you would like to
>> >> see
>> >> unittests for? If so, maybe you can file some bugs for the different
>> >> tests so that we won't forget about it? Depending on the tests, these
>> >> bugs may get the EasyFix keyword if there is a clear description and
>> >> some pointers to examples.
>> >
>> > Looks like parts of cmockery was forgotten in glusterfs.spec.in:
>> >
>> > # rpm -q -f `which gluster`
>> > glusterfs-cli-3.7dev-0.9.git5b8de97.fc20.x86_64
>> > # ldd `which gluster`
>> > linux-vdso.so.1 => (0x00007ffff4dfe000)
>> > libglusterfs.so.0 => /lib64/libglusterfs.so.0 (0x00007fe034cc4000)
>> > libreadline.so.6 => /lib64/libreadline.so.6 (0x00007fe034a7d000)
>> > libncurses.so.5 => /lib64/libncurses.so.5 (0x00007fe034856000)
>> > libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007fe03462c000)
>> > libgfxdr.so.0 => /lib64/libgfxdr.so.0 (0x00007fe034414000)
>> > libgfrpc.so.0 => /lib64/libgfrpc.so.0 (0x00007fe0341f8000)
>> > libxml2.so.2 => /lib64/libxml2.so.2 (0x00007fe033e8f000)
>> > libz.so.1 => /lib64/libz.so.1 (0x00007fe033c79000)
>> > libm.so.6 => /lib64/libm.so.6 (0x00007fe033971000)
>> > libdl.so.2 => /lib64/libdl.so.2 (0x00007fe03376d000)
>> > libcmockery.so.0 => not found
>> > libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe03354f000)
>> > libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007fe033168000)
>> > libc.so.6 => /lib64/libc.so.6 (0x00007fe032da9000)
>> > libcmockery.so.0 => not found
>> > libcmockery.so.0 => not found
>> > libcmockery.so.0 => not found
>> > liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fe032b82000)
>> > /lib64/ld-linux-x86-64.so.2 (0x00007fe0351f1000)
>> >
>> > Should I file a bug report or could someone on the fast-lane fix this?
>> My bad (installation with --nodeps --force :-()
>
> Actually, I was not expecting a dependency on cmockery2. My
> understanding was that only some temporary test-applications would be
> linked with libcmockery and not any binaries that would get packaged in
> the RPMs.
>
> Luis, could you clarify that?
>
> Thanks,
> Niels
>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at gluster.org
> http://supercolony.gluster.org/mailman/listinfo/gluster-devel
>
--
Religious confuse piety with mere ritual, the virtuous confuse
regulation with outcomes
_______________________________________________
Gluster-devel mailing list
Gluster-devel at gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel
More information about the Gluster-devel
mailing list