.travis.yml 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. language: c
  2. os: linux
  3. # we need more depth for git describe
  4. git:
  5. depth: false
  6. matrix:
  7. include:
  8. - name: "Visual Studio 2017 CMake (MSBuild)"
  9. os: windows
  10. env:
  11. - MSBUILD_PATH="c:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin"
  12. script:
  13. - export PATH=$MSBUILD_PATH:$PATH
  14. - mkdir build
  15. - cd build
  16. - cmake -DENABLE_RTLSDR=OFF -G "Visual Studio 15 2017 Win64" ..
  17. - MSBuild.exe rtl433.sln
  18. # - name: "Visual Studio 2017 (MSBuild), disabled because it assumes RTLSDR"
  19. # os: windows
  20. # env:
  21. # - MSBUILD_PATH="c:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin"
  22. # script:
  23. # - export PATH=$MSBUILD_PATH:$PATH
  24. # - cd vs15
  25. # - MSBuild.exe rtl_433.sln
  26. - name: "Precise default (GCC 4.6.3, CMake 2.8.7) and no libs"
  27. compiler: gcc
  28. env: RTLSDR=OFF
  29. dist: precise
  30. addons:
  31. apt:
  32. packages:
  33. - cmake
  34. - name: "Trusty default (GCC 4.8.2, CMake 2.8.12)"
  35. compiler: gcc
  36. dist: trusty
  37. addons:
  38. apt:
  39. packages:
  40. - libusb-1.0.0-dev
  41. - rtl-sdr
  42. - librtlsdr-dev
  43. - cmake
  44. - name: "Xenial default (GCC 5.4.0, CMake 3.5.1)"
  45. compiler: gcc
  46. dist: xenial
  47. addons:
  48. apt:
  49. packages:
  50. - libusb-1.0.0-dev
  51. - rtl-sdr
  52. - librtlsdr-dev
  53. - cmake
  54. - name: "Precise Clang (clang 3.4, CMake 2.8.7) and no libs"
  55. compiler: clang
  56. env: RTLSDR=OFF
  57. dist: precise
  58. addons:
  59. apt:
  60. packages:
  61. - cmake
  62. - name: "Trusty Clang (clang 5.0.0, CMake 2.8.12)"
  63. compiler: clang
  64. dist: trusty
  65. addons:
  66. apt:
  67. packages:
  68. - libusb-1.0.0-dev
  69. - rtl-sdr
  70. - librtlsdr-dev
  71. - cmake
  72. - name: "Xenial Clang (clang 7.0.0, CMake 3.5.1)"
  73. compiler: clang
  74. dist: xenial
  75. addons:
  76. apt:
  77. packages:
  78. - libusb-1.0.0-dev
  79. - rtl-sdr
  80. - librtlsdr-dev
  81. - cmake
  82. - name: "Precise or Trusty (GCC 6.5.0)"
  83. compiler: gcc-6
  84. addons:
  85. apt:
  86. sources:
  87. - ubuntu-toolchain-r-test
  88. packages:
  89. - gcc-6
  90. - libusb-1.0.0-dev
  91. - rtl-sdr
  92. - librtlsdr-dev
  93. - cmake
  94. - name: "Precise or Trusty (GCC 7.4.0)"
  95. compiler: gcc-7
  96. addons:
  97. apt:
  98. sources:
  99. - ubuntu-toolchain-r-test
  100. packages:
  101. - gcc-7
  102. - libusb-1.0.0-dev
  103. - rtl-sdr
  104. - librtlsdr-dev
  105. - cmake
  106. - name: "Precise or Trusty (GCC 8.1.0)"
  107. compiler: gcc-8
  108. addons:
  109. apt:
  110. sources:
  111. - ubuntu-toolchain-r-test
  112. packages:
  113. - gcc-8
  114. - libusb-1.0.0-dev
  115. - rtl-sdr
  116. - librtlsdr-dev
  117. - cmake
  118. - name: "ARM64 Xenial default (GCC 5.4.0, CMake 3.5.1)"
  119. compiler: gcc
  120. arch: arm64
  121. dist: xenial
  122. addons:
  123. apt:
  124. packages:
  125. - libusb-1.0.0-dev
  126. - rtl-sdr
  127. - librtlsdr-dev
  128. - cmake
  129. - name: "ARM64 Xenial Clang (clang 7.0.0, CMake 3.5.1)"
  130. compiler: clang
  131. arch: arm64
  132. dist: xenial
  133. addons:
  134. apt:
  135. packages:
  136. - libusb-1.0.0-dev
  137. - rtl-sdr
  138. - librtlsdr-dev
  139. - cmake
  140. - name: "ARM32 Xenial default (GCC 5.4.0, CMake 3.5.1)"
  141. compiler: gcc
  142. arch: arm64
  143. dist: xenial
  144. env:
  145. - RTLSDR=OFF
  146. - CC=arm-linux-gnueabihf-gcc
  147. - SETARCH="setarch linux32 --verbose --32bit"
  148. addons:
  149. apt:
  150. packages:
  151. - crossbuild-essential-armhf
  152. - libc6-armhf-cross
  153. - cmake
  154. - name: "i686 Xenial default (GCC 5.4.0, CMake 3.5.1)"
  155. compiler: gcc
  156. dist: xenial
  157. env:
  158. - RTLSDR=OFF
  159. - CFLAGS="-m32"
  160. - SETARCH="setarch i686 --verbose --3gb"
  161. addons:
  162. apt:
  163. packages:
  164. - gcc-multilib
  165. - cmake
  166. - name: "Xenial default (gcc 5.4, cmake 3.12) RTL-SDR and SoapySDR"
  167. compiler: gcc
  168. env: SOAPYSDR=ON
  169. dist: xenial
  170. addons:
  171. apt:
  172. sources:
  173. - sourceline: 'ppa:myriadrf/drivers'
  174. packages:
  175. - libusb-1.0.0-dev
  176. - rtl-sdr
  177. - librtlsdr-dev
  178. - soapysdr
  179. - libsoapysdr-dev
  180. - cmake
  181. - name: "Xenial default (gcc 5.4, cmake 3.12) only SoapySDR"
  182. compiler: gcc
  183. env: RTLSDR=OFF SOAPYSDR=ON
  184. dist: xenial
  185. addons:
  186. apt:
  187. sources:
  188. - sourceline: 'ppa:myriadrf/drivers'
  189. packages:
  190. - soapysdr
  191. - libsoapysdr-dev
  192. - cmake
  193. - name: "CLang 3.8.0, CMake 2.8.12"
  194. compiler: clang-3.8
  195. dist: trusty
  196. addons:
  197. apt:
  198. sources:
  199. - llvm-toolchain-precise-3.8
  200. - ubuntu-toolchain-r-test
  201. - trusty
  202. packages:
  203. - clang-3.8
  204. - libusb-1.0.0-dev
  205. - rtl-sdr
  206. - librtlsdr-dev
  207. - cmake
  208. - name: "Deploy mingw 32 bit"
  209. compiler: i686-w64-mingw32-gcc
  210. env: RTLSDR=OFF CMAKE_TOOLCHAIN_FILE=cmake/Toolchain-gcc-mingw-w64-i686.cmake
  211. dist: trusty
  212. addons:
  213. apt:
  214. packages:
  215. - gcc-mingw-w64-base
  216. - binutils-mingw-w64-i686
  217. - gcc-mingw-w64-i686
  218. - mingw-w64-i686-dev
  219. - gcc-mingw-w64
  220. - gcc-multilib
  221. - name: "Deploy mingw 64 bit"
  222. compiler: x86_64-w64-mingw32-gcc
  223. env: RTLSDR=OFF CMAKE_TOOLCHAIN_FILE=cmake/Toolchain-gcc-mingw-w64-x86-64.cmake
  224. dist: trusty
  225. addons:
  226. apt:
  227. packages:
  228. - gcc-mingw-w64-base
  229. - binutils-mingw-w64-x86-64
  230. - gcc-mingw-w64-x86-64
  231. - mingw-w64-x86-64-dev
  232. - gcc-mingw-w64
  233. - p7zip
  234. before_deploy: ./do_sysroot.sh
  235. deploy:
  236. provider: bintray
  237. file: "build/bintray.json"
  238. user: "chzu"
  239. key:
  240. secure: Ynhd9UIByGUQPYA3Ow1Jap1bMxB0Pyw+pQV9iQJoG2yCW//ubJ+UnHfYb3KfIWrEK7VVP52m7Mwk9+PrYBmrkNbc3IYc2rYGdbHgC82SRiPbOIxPUwz2X81j1AQZZhN2nc95yudsajpoSqQ7AkIyMyt5FN3NSNN44tKYD5YjuNUaYa2b6SEWNFyG7MHxCqqyykNIraxPS5I5ZOmN4t+ugpgcKd8gLCd4TJQ0355WfHhr1oTrJvgvxGirXOsUm3lC0lequ+BEVHjOjeKl8vybwiculLTIn2rgc9ysoca8sa60+W5ArTo56rPbODQTqZ7sEWSKhE48dJx36JGlM7zLrMLTzcP6tyhpJ2qwG0KQWJkAdCtkSTlOc5+nTojsS6eG8aN3/D/PuxRvjZO3zSwt9OsL2BPWo0DnZ2ZluMN0wzGTJeN/+B4f7rmX0rX9yLrxRMWftr69rmf4dS/ymtK8Yy9QLqgV3SKoIkhMy4e8ksBDnJ227+EwrLktRKaTt04Vg51Ip2mIlCJT9gR93NlsUgMtwCfexAgbIFrPykycwt+Ra6gADMrfZz2sHmphS6+WwsIgCljm9eHSYzU66lLwb1AAI4tuSNlPDAKUBzwNRfE2OArnGvLhn9pSUQ9zpyXgDpmBuj4hI9kfZArLBQBRCGP7gZM2lHh6nmWXDm6y4Ak=
  241. skip_cleanup: true # to upload artifacts created during the build
  242. #on:
  243. # branch: master
  244. # condition: "-n $BINTRAY_DEPLOY"
  245. - name: "Full test suite"
  246. language: python
  247. compiler: gcc
  248. env: RTLSDR=OFF RUN_RTL_433_TESTS=1
  249. dist: trusty
  250. python:
  251. - "2.7"
  252. install:
  253. - pip install deepdiff==3.3.0
  254. addons:
  255. apt:
  256. packages:
  257. - cmake
  258. script:
  259. - ./do_build.sh