## ## caffe.spec -- OpenPKG RPM Package Specification ## Copyright (c) 2000-2020 OpenPKG Project ## ## Permission to use, copy, modify, and distribute this software for ## any purpose with or without fee is hereby granted, provided that ## the above copyright notice and this permission notice appear in all ## copies. ## ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ## SUCH DAMAGE. ## # package version %define V_opkg 1.0 %define V_release 1.0 %define V_dist 20181102 # package information Name: caffe Summary: Fast Open Framework For Deep Learning URL: http://caffe.berkeleyvision.org/ Vendor: Berkeley Vision and Learning Center (BVLC) Packager: OpenPKG Project Distribution: OpenPKG Community Class: EVAL Group: Algorithm License: BSD Version: %{V_opkg}.%{V_dist} Release: 20181102 # list of sources Source0: http://download.openpkg.org/components/versioned/caffe/caffe-%{V_dist}.tar.xz Patch0: caffe.patch # build information BuildPreReq: OpenPKG, openpkg >= 20160101, gcc, gcc::with_cxx = yes, cmake PreReq: OpenPKG, openpkg >= 20160101 BuildPreReq: gflags, glog, snappy, lmdb, leveldb, protobuf, boost, opencv, openblas, libexecinfo, hdf PreReq: gflags, glog, snappy, lmdb, leveldb, protobuf, boost, opencv, openblas, libexecinfo, hdf %description Caffe is a Deep Learning framework made with expression, speed, and modularity in mind. %track prog caffe:release = { version = %{V_release} url = https://github.com/BVLC/caffe/releases regex = (\d+\.\d+(?:\.\d+)?)\.tar\.gz } prog caffe:snapshot = { version = %{V_dist} url = http://download.openpkg.org/components/versioned/caffe/ regex = caffe-(__VER__)\.tar\.xz } %prep %setup -q -n caffe %patch -p0 %build mkdir build cd build cmake \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_INSTALL_PREFIX="%{l_prefix}" \ -DCMAKE_C_COMPILER="%{l_cc}" \ -DCMAKE_C_FLAGS="%{l_cflags} %{l_cppflags}" \ -DCMAKE_EXE_LINKER_FLAGS="%{l_ldflags}" \ -DCMAKE_CXX_COMPILER="%{l_cxx}" \ -DCMAKE_CXX_FLAGS="%{l_cxxflags}" \ -DCMAKE_REQUIRED_LIBRARIES="-lexecinfo -lhdf5_hl -lhdf5" \ -DCaffe_LINKER_LIBS="-lexecinfo -lhdf5_hl -lhdf5" \ -DBUILD_SHARED_LIBS=OFF \ -DCPU_ONLY=ON \ -DBUILD_python=OFF \ -DBUILD_matlab=OFF \ -DBUILD_docs=OFF \ -DBUILD_python_layer=OFF \ -DUSE_OPENCV=ON \ -DUSE_LEVELDB=ON \ -DUSE_LMDB=ON \ -DHDF5_ROOT=%{l_prefix} \ -DBLAS=Open \ .. %{l_make} %{l_mflags -O} %install ( cd build %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT ) || exit $? rm -rf $RPM_BUILD_ROOT%{l_prefix}/python >/dev/null 2>&1 || true strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} %files -f files %clean