summaryrefslogtreecommitdiff
path: root/circle.yml
diff options
context:
space:
mode:
Diffstat (limited to 'circle.yml')
-rw-r--r--circle.yml278
1 files changed, 143 insertions, 135 deletions
diff --git a/circle.yml b/circle.yml
index 44bf8c7f..9e0ef321 100644
--- a/circle.yml
+++ b/circle.yml
@@ -1,140 +1,148 @@
1machine:
2 environment:
3 MAKEFLAGS: "j4"
4# --- Android build ---
5 _toolchain_: "/home/ubuntu/c-toxcore/toolchains/"
6 _s_: "/home/ubuntu/c-toxcore/src/"
7 AND_PATH: "$_toolchain_/arm-linux-androideabi/bin:$PATH"
8 AND_PKG_CONFIG_PATH: "$_toolchain_/arm-linux-androideabi/sysroot/usr/lib/pkgconfig"
9 AND_CC: "$_toolchain_/arm-linux-androideabi/bin/arm-linux-androideabi-clang"
10 AND_CXX: "$_toolchain_/arm-linux-androideabi/bin/arm-linux-androideabi-clang++"
11# --- Android build ---
12dependencies:
13 pre:
14 - sudo apt-get update
15 - sudo bash -c "echo 'deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse' >> /etc/apt/sources.list" # add backports repo
16 - sudo apt-get update
17 - sudo apt-get install astyle/trusty-backports
18 - sudo apt-get install clang
19 - sudo apt-get install build-essential libtool autotools-dev automake checkinstall check git yasm
20 - sudo apt-get install libopus-dev libvpx-dev pkg-config
21
22# ------------ network_test requires that "localhost" resolves to ::1 ------------
23 - sudo bash -c "echo '::1 localhost ipv6-localhost ipv6-loopback' >> /etc/hosts" # ipv6 localhost entry
24# ------------ network_test requires that "localhost" resolves to ::1 ------------
25
26 - sudo bash -c "echo /usr/local/lib/x86_64-linux-gnu > /etc/ld.so.conf.d/fix685519.conf" # fix https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=685519
27
28 - java -version ; exit 0
29 - gcc --version ; exit 0
30 - clang --version ; exit 0
31 - astyle --version ; exit 0
32
33compile: 1compile:
34 override: 2 override:
35 ### ----- check code style ------ 3 - "echo 'TODO(zoff99): fix compile'"
36 - cd .. ; cp -av c-toxcore ./astyle_check/
37 - cd ../astyle_check/ ; ls -al other/astyle/astylerc
38 - cd ../astyle_check/ ;
39 SOURCES=`find . -name "*.[ch]" -and -not -name "*.api.h" -and -not -wholename "*crypto_pwhash*" -and -not -wholename "./super_donators/*"|sort`;
40 astyle -n --options=other/astyle/astylerc $SOURCES ; exit 0
41 - cd ../astyle_check/ ; git --no-pager diff
42 - cd ../astyle_check/ ; git diff | cat > $CIRCLE_ARTIFACTS/astyle_check.patch 2>&1
43 ### ----- check code style ------
44
45 ### ------- get libsodium -------
46 - mkdir ~/libsodium
47 - cd ~/libsodium/ ; git clone https://github.com/jedisct1/libsodium.git
48 - cd ~/libsodium/ ; cd libsodium/ ; git checkout tags/1.0.11
49 - cd ~/libsodium/ ; cd libsodium/ ; ./autogen.sh
50 - cd ~/libsodium/ ; cd libsodium/ ; ./configure && make check
51 - cd ~/libsodium/ ; cd libsodium/ ; sudo bash -c "printf 'y\naa\n\n' | checkinstall --install --pkgname libsodium --pkgversion 1.0.0 --nodoc --deldesc=no --pkglicense='GPL2'"
52 - cd ~/libsodium/ ; cd libsodium/ ; sudo ldconfig
53 ### ------- get libsodium -------
54
55##### ------------ BUILD ------------
56 - cmake -DASAN=ON -DDEBUG=ON -DSTRICT_ABI=ON -DTRACE=ON -DWARNINGS=OFF .
57 #- cmake .
58 - make
59 - sudo make install
60 - sudo ldconfig -v 2>/dev/null | grep toxcore
61 - sudo ldconfig -v 2>/dev/null | grep sodium
62##### ------------ BUILD ------------
63
64# --- Android build ---
65 - echo 'export PATH="$AND_PATH";export PKG_CONFIG_PATH="$AND_PKG_CONFIG_PATH";export CC="$AND_CC";export CXX="$AND_CXX";export CPPFLAGS="";export LDFLAGS=""' > ~/pp
66 - chmod u+x ~/pp
67 - mkdir -p "$_s_"
68
69 - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
70 - mkdir -p $CIRCLE_ARTIFACTS/android/
71
72
73 - . ~/pp;mkdir -p "$PKG_CONFIG_PATH"
74 - . ~/pp;curl -s http://dl.google.com/android/repository/android-ndk-r13b-linux-x86_64.zip -o android-ndk-r13b-linux-x86_64.zip
75 - . ~/pp;unzip android-ndk-r13b-linux-x86_64.zip
76 - . ~/pp;mv -v /home/ubuntu/c-toxcore/android-ndk-r13b /home/ubuntu/android-ndk
77 - . ~/pp;/home/ubuntu/android-ndk/build/tools/make_standalone_toolchain.py --arch arm --install-dir "$_toolchain_"/arm-linux-androideabi --api 12 --force
78
79 - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.3.0 https://github.com/yasm/yasm.git
80 - . ~/pp;cd $_s_/yasm/;autoreconf -fi
81 - . ~/pp;rm -Rf ~/build/
82 - . ~/pp;mkdir -p ~/build/
83 - . ~/pp;cd ~/build/;$_s_/yasm/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot
84 - . ~/pp;cd ~/build/;make -j4
85 - . ~/pp;cd ~/build/;make install
86
87
88 - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.6.0 https://github.com/webmproject/libvpx.git
89 - . ~/pp;rm -Rf ~/build/
90 - . ~/pp;mkdir -p ~/build/
91 - . ~/pp;cd ~/build/;$_s_/libvpx/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-examples --disable-unit-tests --sdk-path=/home/ubuntu/android-ndk --target=armv7-android-gcc
92 - . ~/pp;cd ~/build/;make -j4
93 - . ~/pp;cd ~/build/;make install
94 - . ~/pp;cd ~/build/;make clean
95 - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
96 - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
97 - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/libvpx.zip *
98
99
100 - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.1.3 https://github.com/xiph/opus.git
101 - . ~/pp;cd $_s_/opus/;autoreconf -fi
102 - . ~/pp;rm -Rf ~/build/
103 - . ~/pp;mkdir -p ~/build/
104 - . ~/pp;cd ~/build/;$_s_/opus/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot
105 - . ~/pp;cd ~/build/;make -j4
106 - . ~/pp;cd ~/build/;make install
107 - . ~/pp;cd ~/build/;make clean
108 - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
109 - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
110 - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/opus.zip *
111
112
113 - . ~/pp;cd $_s_;git clone --depth=1 --branch=1.0.11 https://github.com/jedisct1/libsodium.git
114 - . ~/pp;cd $_s_/libsodium/;autoreconf -fi
115 - . ~/pp;rm -Rf ~/build/
116 - . ~/pp;mkdir -p ~/build/
117 - . ~/pp;cd ~/build/;$_s_/libsodium/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot --enable-minimal --disable-pie
118 - . ~/pp;cd ~/build/;make -j4
119 - . ~/pp;cd ~/build/;make install
120 - . ~/pp;cd ~/build/;make clean
121 - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
122 - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
123 - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/libsodium.zip *
124
125
126 - . ~/pp;cd ~/c-toxcore/;autoreconf -fi
127 - . ~/pp;rm -Rf ~/build/
128 - . ~/pp;mkdir -p ~/build/
129 - . ~/pp;cd ~/build/;~/c-toxcore/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot --disable-testing --disable-rt
130 - . ~/pp;cd ~/build/;make -j4
131 - . ~/pp;cd ~/build/;make install
132 - . ~/pp;cd ~/build/;make clean
133 - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
134 - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
135 - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/c-toxcore.zip *
136# --- Android build ---
137 4
138test: 5test:
139 override: 6 override:
140 - make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 7 - "echo 'TODO(zoff99): fix compile'"
8
9#machine:
10# environment:
11# MAKEFLAGS: "j4"
12## --- Android build ---
13# _toolchain_: "/home/ubuntu/c-toxcore/toolchains/"
14# _s_: "/home/ubuntu/c-toxcore/src/"
15# AND_PATH: "$_toolchain_/arm-linux-androideabi/bin:$PATH"
16# AND_PKG_CONFIG_PATH: "$_toolchain_/arm-linux-androideabi/sysroot/usr/lib/pkgconfig"
17# AND_CC: "$_toolchain_/arm-linux-androideabi/bin/arm-linux-androideabi-clang"
18# AND_CXX: "$_toolchain_/arm-linux-androideabi/bin/arm-linux-androideabi-clang++"
19## --- Android build ---
20#dependencies:
21# pre:
22# - sudo apt-get update
23# - sudo bash -c "echo 'deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse' >> /etc/apt/sources.list" # add backports repo
24# - sudo apt-get update
25# - sudo apt-get install astyle/trusty-backports
26# - sudo apt-get install clang
27# - sudo apt-get install build-essential libtool autotools-dev automake checkinstall git yasm
28# - sudo apt-get install libopus-dev libvpx-dev pkg-config
29#
30## ------------ network_test requires that "localhost" resolves to ::1 ------------
31# - sudo bash -c "echo '::1 localhost ipv6-localhost ipv6-loopback' >> /etc/hosts" # ipv6 localhost entry
32## ------------ network_test requires that "localhost" resolves to ::1 ------------
33#
34# - sudo bash -c "echo /usr/local/lib/x86_64-linux-gnu > /etc/ld.so.conf.d/fix685519.conf" # fix https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=685519
35#
36# - java -version ; exit 0
37# - gcc --version ; exit 0
38# - clang --version ; exit 0
39# - astyle --version ; exit 0
40#
41#compile:
42# override:
43# ### ----- check code style ------
44# - cd .. ; cp -av c-toxcore ./astyle_check/
45# - cd ../astyle_check/ ; ls -al other/astyle/astylerc
46# - cd ../astyle_check/ ;
47# SOURCES=`find . -name "*.[ch]" -and -not -name "*.api.h" -and -not -wholename "*crypto_pwhash*" -and -not -wholename "./super_donators/*"|sort`;
48# astyle -n --options=other/astyle/astylerc $SOURCES ; exit 0
49# - cd ../astyle_check/ ; git --no-pager diff
50# - cd ../astyle_check/ ; git diff | cat > $CIRCLE_ARTIFACTS/astyle_check.patch 2>&1
51# ### ----- check code style ------
52#
53# ### ------- get libsodium -------
54# - mkdir ~/libsodium
55# - cd ~/libsodium/ ; git clone https://github.com/jedisct1/libsodium.git
56# - cd ~/libsodium/ ; cd libsodium/ ; git checkout tags/1.0.11
57# - cd ~/libsodium/ ; cd libsodium/ ; ./autogen.sh
58# - cd ~/libsodium/ ; cd libsodium/ ; ./configure && make check
59# - cd ~/libsodium/ ; cd libsodium/ ; sudo bash -c "printf 'y\naa\n\n' | checkinstall --install --pkgname libsodium --pkgversion 1.0.0 --nodoc --deldesc=no --pkglicense='GPL2'"
60# - cd ~/libsodium/ ; cd libsodium/ ; sudo ldconfig
61# ### ------- get libsodium -------
62#
63###### ------------ BUILD ------------
64# - cmake -DASAN=ON -DDEBUG=ON -DSTRICT_ABI=ON -DTRACE=ON -DWARNINGS=OFF .
65# #- cmake .
66# - make
67# - sudo make install
68# - sudo ldconfig -v 2>/dev/null | grep toxcore
69# - sudo ldconfig -v 2>/dev/null | grep sodium
70###### ------------ BUILD ------------
71#
72## --- Android build ---
73# - echo 'export PATH="$AND_PATH";export PKG_CONFIG_PATH="$AND_PKG_CONFIG_PATH";export CC="$AND_CC";export CXX="$AND_CXX";export CPPFLAGS="";export LDFLAGS=""' > ~/pp
74# - chmod u+x ~/pp
75# - mkdir -p "$_s_"
76#
77# - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
78# - mkdir -p $CIRCLE_ARTIFACTS/android/
79#
80#
81# - . ~/pp;mkdir -p "$PKG_CONFIG_PATH"
82# - . ~/pp;curl -s http://dl.google.com/android/repository/android-ndk-r13b-linux-x86_64.zip -o android-ndk-r13b-linux-x86_64.zip
83# - . ~/pp;unzip android-ndk-r13b-linux-x86_64.zip
84# - . ~/pp;mv -v /home/ubuntu/c-toxcore/android-ndk-r13b /home/ubuntu/android-ndk
85# - . ~/pp;/home/ubuntu/android-ndk/build/tools/make_standalone_toolchain.py --arch arm --install-dir "$_toolchain_"/arm-linux-androideabi --api 12 --force
86#
87# - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.3.0 https://github.com/yasm/yasm.git
88# - . ~/pp;cd $_s_/yasm/;autoreconf -fi
89# - . ~/pp;rm -Rf ~/build/
90# - . ~/pp;mkdir -p ~/build/
91# - . ~/pp;cd ~/build/;$_s_/yasm/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot
92# - . ~/pp;cd ~/build/;make -j4
93# - . ~/pp;cd ~/build/;make install
94#
95#
96# - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.6.0 https://github.com/webmproject/libvpx.git
97# - . ~/pp;rm -Rf ~/build/
98# - . ~/pp;mkdir -p ~/build/
99# - . ~/pp;cd ~/build/;$_s_/libvpx/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-examples --disable-unit-tests --sdk-path=/home/ubuntu/android-ndk --target=armv7-android-gcc
100# - . ~/pp;cd ~/build/;make -j4
101# - . ~/pp;cd ~/build/;make install
102# - . ~/pp;cd ~/build/;make clean
103# - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
104# - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
105# - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/libvpx.zip *
106#
107#
108# - . ~/pp;cd $_s_;git clone --depth=1 --branch=v1.1.3 https://github.com/xiph/opus.git
109# - . ~/pp;cd $_s_/opus/;autoreconf -fi
110# - . ~/pp;rm -Rf ~/build/
111# - . ~/pp;mkdir -p ~/build/
112# - . ~/pp;cd ~/build/;$_s_/opus/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot
113# - . ~/pp;cd ~/build/;make -j4
114# - . ~/pp;cd ~/build/;make install
115# - . ~/pp;cd ~/build/;make clean
116# - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
117# - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
118# - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/opus.zip *
119#
120#
121# - . ~/pp;cd $_s_;git clone --depth=1 --branch=1.0.11 https://github.com/jedisct1/libsodium.git
122# - . ~/pp;cd $_s_/libsodium/;autoreconf -fi
123# - . ~/pp;rm -Rf ~/build/
124# - . ~/pp;mkdir -p ~/build/
125# - . ~/pp;cd ~/build/;$_s_/libsodium/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-shared --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot --enable-minimal --disable-pie
126# - . ~/pp;cd ~/build/;make -j4
127# - . ~/pp;cd ~/build/;make install
128# - . ~/pp;cd ~/build/;make clean
129# - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
130# - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
131# - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/libsodium.zip *
132#
133#
134# - . ~/pp;cd ~/c-toxcore/;autoreconf -fi
135# - . ~/pp;rm -Rf ~/build/
136# - . ~/pp;mkdir -p ~/build/
137# - . ~/pp;cd ~/build/;~/c-toxcore/configure --prefix="$_toolchain_"/arm-linux-androideabi/sysroot/usr --disable-soname-versions --host=arm-linux-androideabi --with-sysroot="$_toolchain_"/arm-linux-androideabi/sysroot --disable-testing --disable-rt
138# - . ~/pp;cd ~/build/;make -j4
139# - . ~/pp;cd ~/build/;make install
140# - . ~/pp;cd ~/build/;make clean
141# - rm -Rf /home/ubuntu/install_dest/ ; mkdir -p /home/ubuntu/install_dest/
142# - . ~/pp;cd ~/build/;make DESTDIR=/home/ubuntu/install_dest/ install
143# - cd /home/ubuntu/install_dest/ ; cd home/ubuntu/c-toxcore/toolchains/arm-linux-androideabi/sysroot/ ; zip -r $CIRCLE_ARTIFACTS/android/c-toxcore.zip *
144## --- Android build ---
145#
146#test:
147# override:
148# - make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1 || make test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE=1