%global buildopts BLAS=open BLAS_INCLUDE=%{_includedir}/openblas CPU_ONLY=1 Name: caffe Version: 1.0 Release: 2%{?dist} Summary: A fast open framework for deep learning License: BSD URL: http://caffe.berkeleyvision.org/ Source0: https://github.com/BVLC/caffe/archive/%{version}/%{name}-%{version}.tar.gz ExcludeArch: %ix86 BuildRequires: boost-devel BuildRequires: cmake BuildRequires: gflags-devel BuildRequires: glog-devel BuildRequires: hdf5-devel BuildRequires: leveldb-devel BuildRequires: lmdb-devel BuildRequires: openblas-devel BuildRequires: opencv-devel BuildRequires: protobuf-devel BuildRequires: python2-devel BuildRequires: snappy-devel %if 0%{?fedora} >= 24 BuildRequires: python2-numpy %else BuildRequires: numpy %endif %description Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and by community contributors. Yangqing Jia created the project during his PhD at UC Berkeley. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package -n python-caffe Summary: Python bindings for Caffe Requires: %name%{_isa} = %version-%release # From distribute/requirements.txt # Fixme: Probably only right on el7, and maybe can be trimmed through # transitive requirements Requires: Cython python2-gflags python-six python-dateutil python-nose Requires: python-pandas scipy python2-scikit-image python-ipython h5py Requires: python-matplotlib python-networkx PyYAML python-dateutil Requires: python-nose python-pandas %description -n python-caffe Python bindings for Caffe. %prep %autosetup %build cp Makefile.config.example Makefile.config %make_build %{buildopts} all %install %make_build %{buildopts} distribute mkdir -p %buildroot{%_bindir,%_libdir} mkdir -p %buildroot%_includedir/{caffe/layers,/caffe/util,/caffe/msgs} install -p -m755 -D --target-directory %{buildroot}%{_bindir} distribute/bin/* install -p -m755 -D --target-directory %{buildroot}%{_libdir} distribute/lib/*.so.* cp -p distribute/lib/*.so %{buildroot}%{_libdir} install -p -m644 -D --target-directory %{buildroot}%{_includedir}/caffe distribute/include/caffe/*.hpp install -p -m644 -D --target-directory %{buildroot}%{_includedir}/caffe/layers distribute/include/caffe/layers/* install -p -m644 -D --target-directory %{buildroot}%{_includedir}/caffe/util distribute/include/caffe/util/* install -p -m644 -D --target-directory %{buildroot}%{_includedir}/caffe/msgs distribute/proto/* # Fixme: Is libexecdir the right place for the .py files which don't look # specific enough for bindir? mkdir -p %buildroot%python_sitearch %buildroot%_libexecdir/caffe cp -a distribute/python/caffe %buildroot%python_sitearch install -m755 distribute/python/caffe/*.py %buildroot%_libexecdir/caffe %check %make_build %{buildopts} runtest %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %license LICENSE %{_bindir}/* %{_libdir}/libcaffe.so.1.0.0 %files devel %{_libdir}/libcaffe.so %{_includedir}/caffe %files -n python-caffe %_libexecdir/caffe %python_sitearch/caffe %changelog * Fri Jan 12 2018 root - 1.0-2 - Add python-caffe package * Thu Jan 11 2018 Dave Love - 1.0-1 - Update to 1.0 and fix installation on el7 * Tue Oct 18 2016 Till Hofmann - 1.0.0-0.2.rc3 - Fix numpy dependency for older releases * Mon Oct 17 2016 Till Hofmann - 1.0.0-0.1.rc3 - Initial package