# for better compatibility with SCL spec file %global pkg_name mongo-cxx-driver Name: mongo-cxx-driver Version: 1.0.0 Release: 1%{?dist} Summary: A legacy C++ Driver for MongoDB Group: Development/Libraries License: ASL 2.0 URL: https://github.com/mongodb/mongo-cxx-driver/wiki Source0: https://github.com/mongodb/%{pkg_name}/archive/legacy-%{version}.tar.gz BuildRequires: boost-devel >= 1.49 BuildRequires: openssl-devel BuildRequires: scons # Mongodb must run on a little-endian CPU (see bug #630898) ExcludeArch: ppc ppc64 %{sparc} s390 s390x Provides: libmongodb = 2.6.0-%{release} Provides: libmongodb%{?_isa} = 2.6.0-%{release} Obsoletes: libmongodb <= 2.4.9-8 %description This package provides the shared library for the MongoDB legacy C++ Driver. %package devel Summary: MongoDB header files Group: Development/Libraries Requires: %{name}%{?_isa} = %{version}-%{release} Provides: libmongodb-devel = 2.6.0-%{release} Provides: libmongodb-devel%{?_isa} = 2.6.0-%{release} Obsoletes: libmongodb-devel <= 2.4.9-8 Provides: mongodb-devel = 2.6.0-%{release} Obsoletes: mongodb-devel < 2.4 %description devel This package provides the header files for MongoDB legacy C++ driver. %prep # -n the name of the directory to cd after unpacking %setup -q -n %{name}-legacy-%{version} # CRLF -> LF sed -i 's/\r//' README.md # use _lib sed -i -e "s@\$INSTALL_DIR/lib@\$INSTALL_DIR/%{_lib}@g" src/SConscript.client # versioned client library (pre='EnsureSConsVersion(2, 3, 0)' post='sharedLibEnv.AppendUnique(SHLIBVERSION="%{version}")' sed -i -r \ -e "s|([[:space:]]*)(sharedLibEnv *= *libEnv.Clone.*)|\1$pre\n\1\2\n\1$post|" \ -e "s|(sharedLibEnv.)Install *\(|\1InstallVersionedLib(|" \ src/SConscript.client) # use optflags (opt=$(echo "%{optflags}" | sed -r -e 's| |","|g' ) sed -i -r -e "s|(if nix:)|\1\n\n env.Append( CCFLAGS=[\"$opt\"] )\n\n|" SConstruct) %build # see 'scons -h' for options scons \ %{?_smp_mflags} \ --sharedclient \ --ssl %install # NOTE: If install flags are not the same as in %%build, # it will be built twice! scons install \ %{?_smp_mflags} \ --sharedclient \ --ssl \ --prefix=%{buildroot}%{_prefix} # There is no option to build without static library rm -f %{buildroot}%{_libdir}/libmongoclient.a %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %doc README.md APACHE-2.0.txt %{_libdir}/libmongoclient.so.* %files devel %{_includedir}/* %{_libdir}/libmongoclient.so %changelog * Thu Jan 29 2015 Marek Skalicky - 1.0.0-1 - Upgrade to stable version 1.0.0 * Tue Jan 27 2015 Petr Machata - 1.0.0-0.8.rc3 - Rebuild for boost 1.57.0 * Fri Jan 02 2015 Marek Skalicky - 1.0.0-0.7.rc3 - Upgrade to rc3 * Tue Nov 18 2014 Marek Skalický - 1.0.0-0.6.rc2 - Upgrade to rc2 - Changed scons target to build only driver * Mon Oct 27 2014 Marek Skalický - 1.0.0-0.5.rc1 - Upgrade to rc1 - Added mongo-cxx-driver-devel requires (openssl-devel, boost-devel) * Sat Oct 25 2014 Peter Robinson 1.0.0-0.4.rc1 - Don't reset the Release until 1.0.0 GA * Fri Oct 24 2014 Marek Skalický - 1.0.0-0.1.rc1 - Upgrade to rc1 * Thu Oct 9 2014 Marek Skalický - 1.0.0-0.3.rc0 - Added Provides: mongodb-devel = 2.6.0-1 provided by libmongo-devel * Thu Oct 9 2014 Marek Skalický - 1.0.0-0.2.rc0 - Added Provides: libmongodb%{?_isa} packages * Tue Sep 30 2014 Marek Skalický - 1.0.0-0.1.rc0 - initial port