Commit Graph

464 Commits

Author SHA1 Message Date
Samuel Just
180a500a7f Merge pull request #5511 from ceph/wip-cxx11
c++11 ftw

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-08-07 08:56:38 -07:00
Boris Ranto
c52eb995e0 Add initial SELinux support
This patch modifies the build system and spec file to provide a support
for SELinux enforcing in an opt-in matter via ceph-selinux package.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-08-05 15:21:41 +02:00
Casey Bodley
51a218c866 autoconf: build as c++11
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2015-08-03 11:16:13 -04:00
Owen Synge
1ba4694d7e Autotools to install systemd unit files.
To simplify the spec file we should install as much using autotools
and as little as possible in the spec file.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Owen Synge
61240190c7 Added tmpfiles.d for rgw: templated user and group.
tmpfiles.d are part of system.d and define how temporary directories are setup.
rgw needs a socket directory. To do this we template tmpfiles.d user and group
for rgw and fill in the values using autotools.

Note1: Added to spec file.
Note2: Name changed to rgw from radosgw as is preferred name by Sage.
Note3: Adds configure options
    --with-rgw-user=UserName
    --with-rgw-group=GroupName
Note4: Defaults set for debian
Note5: spec file overrides defaults for redhat and suse

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Sage Weil
a634ab34b2 remove libs3 submodule
Signed-off-by: Sage Weil <sage@redhat.com>
2015-07-30 13:24:00 -04:00
Sage Weil
bbe84578bf remove rest-bench
This is a weak tool; users should look to cosbench or others instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-07-30 13:21:36 -04:00
Sage Weil
2746f59da4 Merge remote-tracking branch 'gh/next' 2015-07-16 12:03:58 -04:00
Sage Weil
4fe62cd7a1 Merge pull request #4699 from joehandzik/master
FileStore: Collect device partition information

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-07-15 09:47:22 -04:00
Jenkins
be422c8f5b 9.0.2 2015-07-14 13:10:32 -07:00
Boris Ranto
ce80a606b6 configure.ac: Fix junit4.jar detection
If a system contains older (3) or later (5) release of junit.jar that is
default in the system, the auto-detection might find it before it finds
junit4.jar. This commit fixes that issue by always preferring the
junit4.jar library.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-06-18 20:01:47 +02:00
Ira Cooper
54a516f633 configure.ac: Fix JUnit 4 detection on Fedora 22.
This allows the build to detect JUnit 4 on Fedora 22, by adding
junit.jar as a valid jar name for JUnit 4.

Signed-off-by: Ira Cooper <ira@samba.org>
2015-06-17 13:09:44 -04:00
Joe Handzik
a5d9b49cb8 FileStore and blkdev: Collect device partition information
Use blkid APIs to get device parition information into the metadata bundle, and leverage common/blkdev.* helpers to parse the device node when possible.

Signed-Off-By: joseph.t.handzik@hp.com
2015-06-10 16:02:40 -05:00
Sage Weil
c06fd71a1a Merge remote-tracking branch 'gh/next' 2015-06-10 13:14:46 -04:00
Loic Dachary
9193afd3d2 tests: automake 1.11 needs parallel-tests
Prior to automake 1.13 the default behavior was serial-tests meaning
tests from make check were run one after the other and their output sent
to stdout/stderr. From automake 1.13 up the default became
parallel-tests which logs the output of each individual test in a
separate .log file and allows them to run in parallel.

http://lists.gnu.org/archive/html/automake/2012-12/msg00038.html

Enable parallel-tests so that tests can always run in parallel, even
with automake 1.11 which is the version found in CentOS 6.5 and Ubuntu
12.04 precise.

A nice side effect of always having the logs in separate files is that
tests do not need to worry about being too verbose because their output
will only be read for diagnostic purposes.

http://tracker.ceph.com/issues/11931 Fixes: #11931
http://tracker.ceph.com/issues/11906 Fixes: #11906

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-06-09 14:56:49 +02:00
Jenkins
997b3f998d 9.0.1 2015-06-05 10:59:02 -07:00
Joaquim Rocha
63aa2e6a95 build: Add info about tests to --with-debug option
The configure's --with-debug option builds also some of the tests
so this should be mentioned in its doc string in order to let users
know how to build all the tests.

Signed-off-by: Joaquim Rocha <joaquim.rocha@cern.ch>
2015-06-05 15:17:42 +02:00
Jason Dillaman
650ad32d74 common: add valgrind.h convenience wrapper
Conditionally support helgrind annotations if valgrind support is
enabled during the build.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-06-04 16:49:51 -04:00
Owen Synge
ac347dc340 Template systemd/ceph-osd@.service with autotools,
The libexec path is different for different distributions.
systemd. This path is defined by a new variable on the
configure path.

This variable can be set with enviroment SYSTEMD_LIBEXEC_DIR.
The parameter --with-systemd-libexec-dir overrides the enviroment
variable.

Appropriate conditionals are set for SUSE and RHEL derivatives.

This is then used to template out systemd/ceph-osd@.service

Signed-off-by: Owen Synge <osynge@suse.com>
2015-05-26 19:04:22 +02:00
Kefu Chai
899dd23766 configure.ac: no use to add "+" before ac_ext=c
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-06 10:17:48 +08:00
Kefu Chai
5b2357e663 configure.ac: add an option: --with-man-pages
* do not require sphinx-build if --without-man-pages
* dist rst files for man pages
* build and dist .8 files if sphinx-build is found

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-06 10:17:42 +08:00
Sage Weil
7f209b4bc8 Merge remote-tracking branch 'gh/next' 2015-05-05 09:53:51 -07:00
Jenkins
bd79891039 9.0.0 2015-05-04 12:32:59 -07:00
Kefu Chai
156e55b7f9 man: do not dist man pages if sphinx is not available
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-05 02:00:02 +08:00
Kefu Chai
c107b8ec74 configure.ac: do not check for sphinx-build
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-05-05 00:32:17 +08:00
Samuel Just
c6c6b203ef Merge pull request #4008 from SUSE/wip-tcmalloc-conditionals
Conditional-compile against minimal tcmalloc.

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-05-01 09:34:06 -07:00
Jason Dillaman
6e84ceb418 autotools: detect presence of valgrind
Conditionally enable running librbd unit tests under valgrind.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-04-30 10:56:54 -04:00
Sage Weil
ad4cc4a7c8 Merge pull request #4448 from tchaikov/wip-check-libxml2-and-libcurl
configure.ac: check for libcurl and libxml2 if build libs3

Reviewed-by: Sage Weil <sage@redhat.com>
2015-04-23 08:59:12 -07:00
Sage Weil
9d9ad83b28 Merge pull request #4446 from osynge/wip-expat
libexpat is now used for rgw

Reviewed-by: Sage Weil <sage@redhat.com>
2015-04-23 08:48:13 -07:00
Kefu Chai
62522b0345 configure.ac: check for libcurl and libxml2 if build libs3
Fixes: #11458
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-23 20:32:30 +08:00
Owen Synge
2b2c5d18e1 libexpat is now used for rgw
Check for expat.h
check libexpat has method XML_Parse.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-04-23 10:14:33 +02:00
William A. Kennington III
8e026c781c Fix the disablement of pgrefdebugging
Currently, if you add the flag --disable-pgrefdebugging during configure
it enables pgrefdebugging. The only way for it to actually be disabled
is to remove the flag entirely. This patch makes the flag respect the
--enable and --disable options correctly. Therefore,
--enable-pgrefdebugging is the only way to enable this now and
--enable-pgrefdebugging=no and --disable-pgrefdebugging work as
expected.

Signed-off-by: William A. Kennington III <william@wkennington.com>
2015-04-21 22:32:54 -07:00
Sage Weil
980d8f9da0 Merge remote-tracking branch 'gh/hammer'
Conflicts:
	src/gmock
2015-04-07 12:57:07 -07:00
Jenkins
e61c4f093f 0.94 2015-04-07 10:05:41 -07:00
Loic Dachary
e39070fea7 man: using sphinx-1.0-build if no sphinx-build
On RHEL 6 and CentOS 6 sphinx 1.0+ which is required to build man pages
is packaged as sphinx10 instead of sphinx and the binary is
sphinx-1.0-build instead of sphinx-build.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-04-03 02:59:58 +02:00
Loic Dachary
18c34f2133 Merge pull request #4142 from ceph/wip-no-more-dot-8
doc: generate man pages in man/Makefile

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-04-02 17:42:23 +02:00
Thorsten Behrens
c6f1c07113 Conditional-compile against minimal tcmalloc.
Certain older systems (SLE11 in this case) do not provide the full
tcmalloc functionality, due to e.g. incomplete libunwind
pieces. Use --with-tcmalloc-minimal to enable the cut-down
version.

Here's how the various mem allocator switches interact now:

--with-jemalloc: overrides --with-tcmalloc & --with-tcmalloc-minimal
--with-tcmalloc-minimal: overrides --with-tcmalloc
--with-tcmalloc: the default. use --without-tcmalloc to disable

Signed-off-by: Thorsten Behrens <tbehrens@suse.com>
2015-03-30 03:23:45 +02:00
Sage Weil
c639ce51ac Merge pull request #3604 from yghannam/yazen-testing
crc32c: add aarch64 optimized crc32c implementation

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-25 10:06:46 -07:00
Kefu Chai
301fe6cbf2 doc: generate man pages in man/Makefile
* move rst files from doc/man/8 into man/8
* extract man_pages setting for sphinx from doc/conf.py to man/conf.py
* generate all man pages in `make install`
* add python-sphinx to Build-Depends
* check for sphinx-build in `configure`
* run changed rst files through sphinx-build in `make check`

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-03-24 12:36:41 +08:00
Sage Weil
d26a9dce5e Merge remote-tracking branch 'gh/hammer'
Conflicts:
	PendingReleaseNotes
	src/Makefile.am
	src/gmock
	src/test/Makefile.am
2015-03-19 12:41:04 -07:00
Danny Al-Gaaf
cca067efde configure.ac: add --disable-gitversion
During development each git commit cause currently a complete
rebuild of the source tree. By passing --disable-gitversion to
configure we set a generic version string for ceph to prevent
getting after each commit a new version set.

remove src/check_version and replace with a extended version
of src/make_version which allows detecting changes in .git_version
and ceph_ver.h to avoid not needed updates.

This change also forces to call make_version each time to make
sure that changes from configure or the NO_VERSION env variable
are processed.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-03-19 09:38:46 +01:00
Yazen Ghannam
60762338a2 crc32c: add aarch64 optimized crc32c implementation
ARMv8 defines a set of optional CRC32/CRC32C instructions.
This patch defines an optimized function that uses these
instructions when available rather than table-based lookup.
Optimized function based on a Hadoop patch by Ed Nevill.

Autotools updated to check for compiler support.
Optimized function is selected at runtime based on HWCAP_CRC32.
Added crc32c "performance" unit test and arch unit test.

Tested on AMD Seattle.
Passes all crc32c unit tests.
Unit test shows ~4x performance increase versus sctp.

Signed-off-by: Yazen Ghannam <yazen.ghannam@linaro.org>
Reviewed-by: Steve Capper <steve.capper@linaro.org>
2015-03-17 13:56:52 -05:00
Rohan Mars
d06c1d7097 rhel 5.9 port fixes to compile librados only
Signed-off-by: Rohan Mars <code@rohanmars.com>
2015-03-15 12:28:06 -07:00
Boris Ranto
e531dd4b37 Add new configure options to improve build refinement 2015-03-05 19:57:08 +01:00
Jenkins
bebf8e9a83 0.93 2015-02-27 09:52:54 -08:00
Danny Al-Gaaf
65ce7b731a fix configure to reflect the missing libs for xio
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-02-11 14:37:01 +01:00
Sage Weil
5a08179384 Merge remote-tracking branch 'gh/next' 2015-02-03 06:52:07 -08:00
Jenkins
00a3ac3b67 0.92 2015-02-02 10:35:28 -08:00
Sage Weil
74e584b258 Merge pull request #3311 from xinxinsh/fix1
disable tcmalloc by default when enable jemalloc

Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-27 12:56:00 -08:00
Jason Dillaman
bf05ec186a tests: replace existing gtest 1.5.0 with gmock/gtest 1.7.0
Google Testing Framework is included by default within the Google
C++ Mocking Framework.  Update makefiles to use new gmock/gtest
libraries and remove old gtest source code.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-01-25 23:09:03 -05:00