3 # Cache Ubuntu apt packages.
8 # Disable clang build: doesn't seem to work on Linux.
9 # (@jeffdonahue: Travis buildbot's failure behavior is similar to what I see
17 - sudo add-apt-repository ppa:ubuntu-sdk-team/ppa -y
18 - sudo apt-get -y update
19 - sudo apt-get -y install wget git curl python-dev python-numpy libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev protobuf-compiler libatlas-dev libatlas-base-dev bc cmake
22 - wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz -O /tmp/glog-0.3.3.tar.gz && tar -C /tmp -xzvf /tmp/glog-0.3.3.tar.gz && rm /tmp/glog-0.3.3.tar.gz
23 - cd /tmp/glog-0.3.3 && ./configure && make -j4 && sudo make install -j4 && cd -
24 - wget https://github.com/schuhschuh/gflags/archive/master.zip -O /tmp/gflags-master.zip && pushd /tmp/ && unzip gflags-master.zip && cd gflags-master && mkdir build && cd build && export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1 && sudo make install && popd
25 - curl http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1204/x86_64/cuda-repo-ubuntu1204_6.0-37_amd64.deb -o /tmp/cuda_install.deb && sudo dpkg -i /tmp/cuda_install.deb && rm /tmp/cuda_install.deb
26 - sudo apt-get -y update
27 # Install the minimal CUDA subpackages required to test Caffe build.
28 # For a full CUDA installation, add 'cuda' to the list of packages.
29 - sudo apt-get -y install cuda-core-6-0 cuda-extra-libs-6-0
30 # Create CUDA symlink at /usr/local/cuda
31 # (This would normally be created by the CUDA installer, but we create it
32 # manually since we did a partial installation.)
33 - sudo ln -s /usr/local/cuda-6.0 /usr/local/cuda
34 - curl https://gitorious.org/mdb/mdb/archive/7f038d0f15bec57b4c07aa3f31cd5564c88a1897.tar.gz -o /tmp/mdb.tar.gz && tar -C /tmp -xzvf /tmp/mdb.tar.gz && rm /tmp/mdb.tar.gz
35 - cd /tmp/mdb-mdb/libraries/liblmdb/ && make -j4 && sudo make install -j4 && cd -
38 - mv Makefile.config.example Makefile.config
39 - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
40 - export NUM_THREADS=4
46 ## CPU-GPU: build only.
47 - cmake -DBUILD_PYTHON=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=Release ..
48 - make --keep-going --jobs=$NUM_THREADS
49 - make clean && rm -rf *
50 ## CPU-only: comprehensive
51 - cmake -DBUILD_PYTHON=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=Release -DCPU_ONLY=ON ..
52 - make --keep-going --jobs=$NUM_THREADS
53 - make runtest --keep-going --jobs=$NUM_THREADS
54 - make lint --jobs=$NUM_THREADS
55 - make clean && rm -rf *
61 ## CPU-GPU: build only.
63 - make --keep-going --jobs=$NUM_THREADS all
65 ## CPU-only: comprehensive.
67 - make --keep-going --jobs=$NUM_THREADS all test warn lint
69 - make --jobs=$NUM_THREADS all
70 - make --jobs=$NUM_THREADS test
71 - make --jobs=$NUM_THREADS warn
72 - make --jobs=$NUM_THREADS lint
73 - make --jobs=$NUM_THREADS pycaffe
76 # Emails are sent to the committer's git-configured email address by default,
77 # but only if they have access to the repository. To enable Travis on your
78 # public fork of Caffe, just go to travis-ci.org and flip the switch on for
79 # your Caffe fork. To configure your git email address, use:
80 # git config --global user.email me@example.com
85 # IRC notifications disabled by default.
86 # Uncomment next 5 lines to send notifications to chat.freenode.net#caffe
89 # - "chat.freenode.net#caffe"
91 # - "%{repository}/%{branch} (%{commit} - %{author}): %{message}"