1language: c 2 3matrix: 4 include: 5 - compiler: gcc-4.4 6 dist: trusty 7 env: PLATFORM=x86 8 addons: 9 apt: 10 packages: 11 - libc6-dev:i386 12 - gcc-4.4-multilib 13 - compiler: gcc-4.4 14 dist: trusty 15 env: PLATFORM=x86_64 16 addons: 17 apt: 18 packages: 19 - gcc-4.4 20 - compiler: gcc-4.6 21 dist: trusty 22 env: PLATFORM=x86 23 addons: 24 apt: 25 packages: 26 - libc6-dev:i386 27 - gcc-4.6-multilib 28 - compiler: gcc-4.6 29 dist: trusty 30 env: PLATFORM=x86_64 31 addons: 32 apt: 33 packages: 34 - gcc-4.6 35 - compiler: gcc-4.7 36 env: PLATFORM=x86 37 addons: 38 apt: 39 packages: 40 - libc6-dev:i386 41 - gcc-4.7-multilib 42 - compiler: gcc-4.7 43 env: PLATFORM=x86_64 44 addons: 45 apt: 46 packages: 47 - gcc-4.7 48 - compiler: gcc-4.8 49 env: PLATFORM=x86 50 addons: 51 apt: 52 packages: 53 - libc6-dev:i386 54 - gcc-4.8-multilib 55 - compiler: gcc-4.8 56 env: PLATFORM=x86_64 57 addons: 58 apt: 59 packages: 60 - gcc-4.8 61 - compiler: gcc-4.9 62 env: PLATFORM=x86 63 addons: 64 apt: 65 packages: 66 - libc6-dev:i386 67 - gcc-4.9-multilib 68 - compiler: gcc-4.9 69 env: PLATFORM=x86_64 70 addons: 71 apt: 72 packages: 73 - gcc-4.9 74 - compiler: gcc-5 75 env: PLATFORM=x86 76 addons: 77 apt: 78 packages: 79 - libc6-dev:i386 80 - gcc-5-multilib 81 - compiler: gcc-5 82 env: PLATFORM=x86_64 83 addons: 84 apt: 85 packages: 86 - gcc-5 87 - compiler: gcc-6 88 env: PLATFORM=x86 89 addons: 90 apt: 91 sources: 92 - ubuntu-toolchain-r-test 93 packages: 94 - libc6-dev:i386 95 - gcc-6-multilib 96 - compiler: gcc-6 97 env: PLATFORM=x86_64 98 addons: 99 apt: 100 sources: 101 - ubuntu-toolchain-r-test 102 packages: 103 - gcc-6 104 - compiler: gcc-7 105 dist: trusty 106 env: PLATFORM=x86 107 addons: 108 apt: 109 sources: 110 - ubuntu-toolchain-r-test 111 packages: 112 - libc6-dev:i386 113 - gcc-7-multilib 114 - compiler: gcc-7 115 dist: trusty 116 env: PLATFORM=x86_64 117 addons: 118 apt: 119 sources: 120 - ubuntu-toolchain-r-test 121 packages: 122 - gcc-7 123 - compiler: gcc-8 124 dist: trusty 125 env: PLATFORM=x86 126 addons: 127 apt: 128 sources: 129 - ubuntu-toolchain-r-test 130 packages: 131 - libc6-dev:i386 132 - gcc-8-multilib 133 - compiler: gcc-8 134 dist: trusty 135 env: PLATFORM=x86_64 136 addons: 137 apt: 138 sources: 139 - ubuntu-toolchain-r-test 140 packages: 141 - gcc-8 142 - compiler: gcc-9 143 dist: trusty 144 env: PLATFORM=x86 145 addons: 146 apt: 147 sources: 148 - ubuntu-toolchain-r-test 149 packages: 150 - libc6-dev:i386 151 - gcc-9-multilib 152 - compiler: gcc-9 153 dist: trusty 154 env: PLATFORM=x86_64 155 addons: 156 apt: 157 sources: 158 - ubuntu-toolchain-r-test 159 packages: 160 - gcc-9 161 - compiler: clang-3.3 162 dist: trusty 163 env: PLATFORM=x86 164 addons: 165 apt: 166 packages: 167 - libc6-dev:i386 168 - clang-3.3 169 - gcc-multilib 170 - compiler: clang-3.3 171 dist: trusty 172 env: PLATFORM=x86_64 173 addons: 174 apt: 175 packages: 176 - clang-3.3 177 - compiler: clang-3.4 178 dist: trusty 179 env: PLATFORM=x86 180 addons: 181 apt: 182 packages: 183 - libc6-dev:i386 184 - clang-3.4 185 - gcc-multilib 186 - compiler: clang-3.4 187 dist: trusty 188 env: PLATFORM=x86_64 189 addons: 190 apt: 191 packages: 192 - clang-3.4 193 - compiler: clang-3.5 194 env: PLATFORM=x86 195 addons: 196 apt: 197 packages: 198 - libc6-dev:i386 199 - clang-3.5 200 - gcc-multilib 201 - compiler: clang-3.5 202 env: PLATFORM=x86_64 203 addons: 204 apt: 205 packages: 206 - clang-3.5 207 - compiler: clang-3.6 208 env: PLATFORM=x86 209 addons: 210 apt: 211 packages: 212 - libc6-dev:i386 213 - clang-3.6 214 - gcc-multilib 215 - compiler: clang-3.6 216 env: PLATFORM=x86_64 217 addons: 218 apt: 219 packages: 220 - clang-3.6 221 - compiler: clang-3.7 222 env: PLATFORM=x86 223 addons: 224 apt: 225 packages: 226 - libc6-dev:i386 227 - clang-3.7 228 - gcc-multilib 229 - compiler: clang-3.7 230 env: PLATFORM=x86_64 231 addons: 232 apt: 233 packages: 234 - clang-3.7 235 - compiler: clang-3.8 236 env: PLATFORM=x86 237 addons: 238 apt: 239 packages: 240 - libc6-dev:i386 241 - clang-3.8 242 - gcc-multilib 243 - compiler: clang-3.8 244 env: PLATFORM=x86_64 245 addons: 246 apt: 247 packages: 248 - clang-3.8 249 - compiler: clang-3.9 250 env: PLATFORM=x86 251 addons: 252 apt: 253 packages: 254 - libc6-dev:i386 255 - clang-3.9 256 - gcc-multilib 257 - compiler: clang-3.9 258 env: PLATFORM=x86_64 259 addons: 260 apt: 261 packages: 262 - clang-3.9 263 - compiler: clang-4.0 264 env: PLATFORM=x86 265 addons: 266 apt: 267 packages: 268 - libc6-dev:i386 269 - clang-4.0 270 - gcc-multilib 271 - compiler: clang-4.0 272 env: PLATFORM=x86_64 273 addons: 274 apt: 275 packages: 276 - clang-4.0 277 - compiler: clang-5.0 278 env: PLATFORM=x86 279 addons: 280 apt: 281 packages: 282 - libc6-dev:i386 283 - clang-5.0 284 - gcc-multilib 285 - compiler: clang-5.0 286 env: PLATFORM=x86_64 287 addons: 288 apt: 289 packages: 290 - clang-5.0 291 - compiler: clang-6.0 292 env: PLATFORM=x86 293 addons: 294 apt: 295 packages: 296 - libc6-dev:i386 297 - clang-6.0 298 - gcc-multilib 299 - compiler: clang-6.0 300 env: PLATFORM=x86_64 301 addons: 302 apt: 303 packages: 304 - clang-6.0 305 - compiler: clang-7 306 dist: xenial 307 env: PLATFORM=x86 308 addons: 309 apt: 310 sources: 311 - llvm-toolchain-xenial-7 312 packages: 313 - libc6-dev:i386 314 - clang-7 315 - gcc-multilib 316 - compiler: clang-7 317 dist: xenial 318 env: PLATFORM=x86_64 319 addons: 320 apt: 321 sources: 322 - llvm-toolchain-xenial-7 323 packages: 324 - clang-7 325 - compiler: clang-8 326 dist: xenial 327 env: PLATFORM=x86 328 addons: 329 apt: 330 sources: 331 - llvm-toolchain-xenial-8 332 packages: 333 - libc6-dev:i386 334 - clang-8 335 - gcc-multilib 336 - compiler: clang-8 337 dist: xenial 338 env: PLATFORM=x86_64 339 addons: 340 apt: 341 sources: 342 - llvm-toolchain-xenial-8 343 packages: 344 - clang-8 345 - compiler: clang-9 346 dist: xenial 347 env: PLATFORM=x86 348 addons: 349 apt: 350 sources: 351 - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main' 352 key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' 353 packages: 354 - libc6-dev:i386 355 - clang-9 356 - gcc-multilib 357 - compiler: clang-9 358 dist: xenial 359 env: PLATFORM=x86_64 360 addons: 361 apt: 362 sources: 363 - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main' 364 key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' 365 packages: 366 - clang-9 367 - compiler: gcc 368 dist: precise 369 env: PLATFORM=x86 370 DIST=precise 371 addons: 372 apt: 373 packages: 374 - libc6-dev:i386 375 - gcc-multilib 376 - compiler: gcc 377 dist: precise 378 env: PLATFORM=x86_64 379 DIST=precise 380 - compiler: gcc 381 dist: trusty 382 env: PLATFORM=x86 383 DIST=trusty 384 addons: 385 apt: 386 packages: 387 - libc6-dev:i386 388 - gcc-multilib 389 - compiler: gcc 390 dist: trusty 391 env: PLATFORM=x86_64 392 DIST=trusty 393 - compiler: gcc 394 dist: xenial 395 env: PLATFORM=x86 396 DIST=xenial 397 addons: 398 apt: 399 packages: 400 - libc6-dev:i386 401 - gcc-multilib 402 - compiler: gcc 403 dist: xenial 404 env: PLATFORM=x86_64 405 DIST=xenial 406 - compiler: gcc 407 dist: bionic 408 env: PLATFORM=x86 409 DIST=bionic 410 addons: 411 apt: 412 packages: 413 - libc6-dev:i386 414 - gcc-multilib 415 - compiler: gcc 416 dist: bionic 417 env: PLATFORM=x86_64 418 DIST=bionic 419 - compiler: gcc 420 dist: precise 421 env: PLATFORM=x86 422 DIST=precise 423 NOOPT=1 424 addons: 425 apt: 426 packages: 427 - libc6-dev:i386 428 - gcc-multilib 429 - compiler: gcc 430 dist: precise 431 env: PLATFORM=x86_64 432 DIST=precise 433 NOOPT=1 434 - compiler: gcc 435 dist: trusty 436 env: PLATFORM=x86 437 DIST=trusty 438 NOOPT=1 439 addons: 440 apt: 441 packages: 442 - libc6-dev:i386 443 - gcc-multilib 444 - compiler: gcc 445 dist: trusty 446 env: PLATFORM=x86_64 447 DIST=trusty 448 NOOPT=1 449 - compiler: gcc 450 dist: xenial 451 env: PLATFORM=x86 452 DIST=xenial 453 NOOPT=1 454 addons: 455 apt: 456 packages: 457 - libc6-dev:i386 458 - gcc-multilib 459 - compiler: gcc 460 dist: xenial 461 env: PLATFORM=x86_64 462 DIST=xenial 463 NOOPT=1 464 - compiler: gcc 465 dist: bionic 466 env: PLATFORM=x86 467 DIST=bionic 468 NOOPT=1 469 addons: 470 apt: 471 packages: 472 - libc6-dev:i386 473 - gcc-multilib 474 - compiler: gcc 475 dist: bionic 476 env: PLATFORM=x86_64 477 DIST=bionic 478 NOOPT=1 479 - compiler: clang 480 dist: precise 481 env: PLATFORM=x86 482 DIST=precise 483 addons: 484 apt: 485 packages: 486 - libc6-dev:i386 487 - gcc-multilib 488 - compiler: clang 489 dist: precise 490 env: PLATFORM=x86_64 491 DIST=precise 492 - compiler: clang 493 dist: trusty 494 env: PLATFORM=x86 495 DIST=trusty 496 addons: 497 apt: 498 packages: 499 - libc6-dev:i386 500 - gcc-multilib 501 - compiler: clang 502 dist: trusty 503 env: PLATFORM=x86_64 504 DIST=trusty 505 - compiler: clang 506 dist: xenial 507 env: PLATFORM=x86 508 DIST=xenial 509 addons: 510 apt: 511 packages: 512 - libc6-dev:i386 513 - gcc-multilib 514 - compiler: clang 515 dist: xenial 516 env: PLATFORM=x86_64 517 DIST=xenial 518 - compiler: clang 519 dist: bionic 520 env: PLATFORM=x86 521 DIST=bionic 522 addons: 523 apt: 524 packages: 525 - libc6-dev:i386 526 - gcc-multilib 527 - compiler: clang 528 dist: bionic 529 env: PLATFORM=x86_64 530 DIST=bionic 531 - compiler: clang 532 dist: precise 533 env: PLATFORM=x86 534 DIST=precise 535 NOOPT=1 536 addons: 537 apt: 538 packages: 539 - libc6-dev:i386 540 - gcc-multilib 541 - compiler: clang 542 dist: precise 543 env: PLATFORM=x86_64 544 DIST=precise 545 NOOPT=1 546 - compiler: clang 547 dist: trusty 548 env: PLATFORM=x86 549 DIST=trusty 550 NOOPT=1 551 addons: 552 apt: 553 packages: 554 - libc6-dev:i386 555 - gcc-multilib 556 - compiler: clang 557 dist: trusty 558 env: PLATFORM=x86_64 559 DIST=trusty 560 NOOPT=1 561 - compiler: clang 562 dist: xenial 563 env: PLATFORM=x86 564 DIST=xenial 565 NOOPT=1 566 addons: 567 apt: 568 packages: 569 - libc6-dev:i386 570 - gcc-multilib 571 - compiler: clang 572 dist: xenial 573 env: PLATFORM=x86_64 574 DIST=xenial 575 NOOPT=1 576 - compiler: clang 577 dist: bionic 578 env: PLATFORM=x86 579 DIST=bionic 580 NOOPT=1 581 addons: 582 apt: 583 packages: 584 - libc6-dev:i386 585 - gcc-multilib 586 - compiler: clang 587 dist: bionic 588 env: PLATFORM=x86_64 589 DIST=bionic 590 NOOPT=1 591 - compiler: tcc 592 dist: precise 593 env: PLATFORM=x86_64 594 DIST=precise 595 addons: 596 apt: 597 packages: 598 - tcc 599 - compiler: tcc 600 dist: trusty 601 env: PLATFORM=x86_64 602 DIST=trusty 603 addons: 604 apt: 605 packages: 606 - tcc 607 - compiler: tcc 608 dist: xenial 609 env: PLATFORM=x86_64 610 DIST=xenial 611 addons: 612 apt: 613 packages: 614 - tcc 615 - compiler: tcc 616 dist: bionic 617 env: PLATFORM=x86_64 618 DIST=bionic 619 addons: 620 apt: 621 packages: 622 - tcc 623 - compiler: gcc 624 dist: trusty 625 env: PLATFORM=x32 626 addons: 627 apt: 628 packages: 629 - libc6-dev-x32 630 - gcc-multilib 631 - compiler: powerpc-linux-gnu-gcc 632 dist: trusty 633 env: PLATFORM=powerpc 634 addons: 635 apt: 636 packages: 637 - gcc-powerpc-linux-gnu 638 - libc6-dev-powerpc-cross 639 - qemu-user 640 - compiler: arm-linux-gnueabi-gcc 641 dist: trusty 642 env: PLATFORM=arm 643 addons: 644 apt: 645 packages: 646 - gcc-arm-linux-gnueabi 647 - libc6-dev-armel-cross 648 - qemu-user 649 650before_script: 651 - if ! which "$CC" &>/dev/null; then export CC=${CC%%-*}; fi 652 - export CFLAGS="-W -Wall -Werror -g" 653 - if [ -z "$NOOPT" ]; then export CFLAGS="$CFLAGS -O2"; fi 654 - if [[ "$CC" =~ "gcc" && "$CC" != "gcc-4.4" ]]; then export CFLAGS="$CFLAGS -Wno-error=unused-but-set-variable"; fi # needed for AC_PROG_CC_C99 655 - case "$PLATFORM" in 656 "x86") export CFLAGS="-m32 $CFLAGS" ;; 657 "x86_64"|"") ;; 658 "x32") export CFLAGS="-mx32 $CFLAGS"; export LDFLAGS="--static" ;; 659 "powerpc") export CONFIGURE_FLAGS="--host=powerpc-linux-gnu"; export LDFLAGS="--static" ;; 660 "arm") export CONFIGURE_FLAGS="--host=arm-linux-gnueabi"; export LDFLAGS="--static" ;; 661 *) echo "Unsupported platform '$PLATFORM'"; exit 1 ;; 662 esac 663 664script: 665 - ./autogen.sh 666 - ./configure $CONFIGURE_FLAGS 667 - make 668