language: c before_install: - sudo apt-get -qq update - sudo apt-get install -y git debhelper dpkg-dev build-essential fakeroot flawfinder wget unzip realpath - sudo apt-get install -y libpcap-dev libselinux1-dev - sudo apt-get install -y binutils-mingw-w64-i686 gcc-mingw-w64 mingw-w64-i686-dev mingw-w64-common clang - sudo apt-get install -y binutils-mingw-w64-x86-64 mingw-w64-x86-64-dev - sudo apt-get install -y autoconf automake dh-autoreconf after_failure: - cat config.log | tail -n 350 script: - mkdir -p ./deploy ./deploy/gcc ./deploy/mingw-w64-i386-winpcap ./deploy/mingw-w64-i386-npcap ./deploy/mingw-w64-x86_64-winpcap ./deploy/mingw-w64-x86_64-npcap ./deploy/clang ./deploy/android28-clang # default gcc build - autoreconf -fi - ./configure --enable-option-checking=fatal --prefix=/ - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/gcc)" V=s - make clean # default gcc build with sanitizer and assertions - ./configure --enable-option-checking=fatal --prefix=/ --enable-sanitizer --enable-asserts - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/gcc-sanitizer-asserts)" V=s - make clean # debian build - dpkg-buildpackage -b -us -uc - make clean # mingw-w64-i386 build (WinPcap) - CC=i686-w64-mingw32-gcc ./configure --enable-option-checking=fatal --prefix=/ --host=i686-w64-mingw32 - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/mingw-w64-i386-winpcap)" V=s - make clean # mingw-w64-i386 build (Npcap) - CC=i686-w64-mingw32-gcc ./configure --enable-option-checking=fatal --prefix=/ --host=i686-w64-mingw32 --enable-npcap - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/mingw-w64-i386-npcap)" V=s - make clean # mingw-w64-x86_64 build (WinPcap) - CC=x86_64-w64-mingw32-gcc ./configure --enable-option-checking=fatal --prefix=/ --host=x86_64-w64-mingw32 - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/mingw-w64-x86_64-winpcap)" V=s - make clean # mingw-w64-x86_64 build (Npcap) - CC=x86_64-w64-mingw32-gcc ./configure --enable-option-checking=fatal --prefix=/ --host=x86_64-w64-mingw32 --enable-npcap - make install CFLAGS='-Werror' DESTDIR="$(realpath ./deploy/mingw-w64-x86_64-npcap)" V=s - make clean # clang build - CC=clang ./configure --enable-option-checking=fatal --prefix=/ - make install CFLAGS='-Werror -Wno-error=for-loop-analysis' DESTDIR="$(realpath ./deploy/clang)" V=s - make clean # android build - mkdir -p vendor && cd vendor - test -r 'android-ndk-r19-linux-x86_64.zip' || wget --progress=dot:mega 'https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip' - test -d 'android-ndk-r19' || unzip -q 'android-ndk-r19-linux-x86_64.zip' - cd .. - CC=aarch64-linux-android28-clang PATH="${PATH}:$(realpath ./vendor/android-ndk-r19/toolchains/llvm/prebuilt/linux-x86_64/bin)" ./configure --enable-option-checking=fatal --host=aarch64-linux-android - PATH="${PATH}:$(realpath ./vendor/android-ndk-r19/toolchains/llvm/prebuilt/linux-x86_64/bin)" make install CFLAGS='-Werror -Wno-error=for-loop-analysis' DESTDIR="$(realpath ./deploy/android28-clang)" V=s # archlinux build # see: https://wiki.archlinux.org/index.php/Install_from_existing_Linux#Method_A:_Using_the_bootstrap_image_(recommended) #- wget --progress=dot:mega 'https://ftp.fau.de/archlinux/iso/2019.02.01/archlinux-bootstrap-2019.02.01-x86_64.tar.gz' #- sudo tar -xzf 'archlinux-bootstrap-2019.02.01-x86_64.tar.gz' #- sudo mount --bind "$(realpath ./root.x86_64)" "$(realpath ./root.x86_64)" #- cd "$(realpath ./root.x86_64)" #- git clone .. #- sudo cp '/etc/resolv.conf' etc #- sudo mount -t proc /proc proc #- sudo mount --make-rslave --rbind /sys sys #- sudo mount --make-rslave --rbind /dev dev #- sudo mount --make-rslave --rbind /run run #- sudo chroot . /bin/bash -c 'pacman -Sy archlinux-keyring --noconfirm' #- sudo chroot . /bin/bash -c 'pacman -Syu --noconfirm' #- sudo chroot . /bin/bash -c 'pacman -S --noconfirm binutils gcc base-devel git' #- sudo chroot . /bin/bash -c 'cd ptunnel-ng && makepkg' #- sudo chroot . /bin/bash -c 'cd ptunnel-ng && makepkg -p PKGBUILD.dev --skipchecksums' #- cd .. env: global: - secure: DqyBATbSy6uoCpJ9MsedJID1SBWnHM0FMXJS2E4FbMwEaoOLWw/7EiLZUrIxcuAGyaztd4xuve3den07xt7uOL6RBebVjh8ZbNxR92ndxsDcsvLFEUTeTvDOsu7vYmocLw95x5GFPWygOP1PGe/QpQKHo6MMT5Px0if7LFiFi8bGj5lpuiL5C7l2IsWhmaLB3oIMK7z/JXPQSkXjYjzahS7dDRr7LnkQpEtywmSHGn5xD3QCZIUysDQV3lsy6zWUC6YLXMeu7JLgh/T6BAO2Zqj4uNlIrhGkh9OOx6OopjvklP0GFqJkSN1i2iPEDuuLx0+eLMUiGREAmWldt7aKwyCVH7r8zcTRSMk2E0jJ4wdd5hHbMUzG3LohmRfxlbcwL0MiOBeCR2MTQBsPXmjXJs4Qf82blQrp2Hxm0sE3KyswDEDQUBTKbRzVFPjYLTRASzIZrDG7j+CjkLRSESyXU3u8IIiE0wr75lhNWL58ZrVzjyZIxCgo8oOeK/yF+6F3hyCSnh/bFkCjvcHMsYInyVZCLgYkYeLHujbvgbiIPOAk50ikTz8AvKMCgK313O6/LjNaJu2GgezN0j2/mKGyvucBJM2QTys7AYp8QfUWy5bOaKcyHq0guu8/lrB8gp2bvIe5xL1HVrmBBvOKzuvwylLCO71Mb4P0zTxeMFwQyVs= addons: coverity_scan: project: name: lnslbrty/ptunnel-ng notification_email: matzeton@googlemail.com build_command_prepend: autoreconf -i && ./configure --enable-option-checking=fatal build_command: make branch_pattern: coverity_scan