diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-03-05 00:59:27 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-03-05 00:59:27 +0300 |
commit | aa6bd1e9604cb6d5c9340fbe4634c2dcdcf40982 (patch) | |
tree | d78570ab1bce63db48ace2fd2581d253c67e8c84 | |
parent | 054b1ac163d6014a59101209b4a1bff768b3c2d4 (diff) | |
download | spm-aa6bd1e9604cb6d5c9340fbe4634c2dcdcf40982.tar.gz spm-aa6bd1e9604cb6d5c9340fbe4634c2dcdcf40982.tar.bz2 spm-aa6bd1e9604cb6d5c9340fbe4634c2dcdcf40982.tar.xz spm-aa6bd1e9604cb6d5c9340fbe4634c2dcdcf40982.zip |
Add libs builds with asan/ubsan for SDL 1.2 and SDL default.
-rw-r--r-- | .gitlab-ci.yml | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a33cc44..8140ff4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -83,12 +83,119 @@ SDL_SDL-1.2: runenvtoolz: /usr/local/spm/env/runzlib_master.sh <<: *job-artifacts +SDL_SDL-1.2_asan: + stage: build + script: + - ./.ci/install.sh git mercurial bash gcc g++ make autoconf automake autopoint gettext libtool pkg-config cmake + libx11-dev libxext-dev libxt-dev libxv-dev x11proto-core-dev libgl1-mesa-dev libasound2-dev + - ./.ci/copyspm.sh + - export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.3 + - ./.ci/buildlib.sh SDL SDL-1.2 + - ${runenvtool} ./.ci/buildlib.sh zlib master + - ${runenvtool} ./.ci/buildlib.sh SDL_gfx master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh physfs stable-2.0 + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh libpng master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh freetype master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh libxml2 master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh curl master + - ${runenvtool} ./.ci/buildlib.sh SDL_image SDL-1.2 + - ${runenvtool} ./.ci/buildlib.sh SDL_mixer SDL-1.2 + - ${runenvtool} ./.ci/buildlib.sh SDL_net SDL-1.2 + - ${runenvtool} ./.ci/buildlib.sh SDL_ttf SDL-1.2 + - export LD_PRELOAD + - ./.ci/copyfinal.sh + - grep "1.2" /usr/local/spm/bin/SDL_SDL-1.2/lib/pkgconfig/sdl.pc + variables: + installname: SDL_SDL-1.2 + runenvtool: /usr/local/spm/env/run${installname}.sh + runenvtoolz: /usr/local/spm/env/runzlib_master.sh + ASAN_OPTIONS: "detect_leaks=0" + CXXFLAGS: "-fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + CFLAGS: "-fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + LDFLAGS: "-lasan -lubsan + -fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + <<: *job-artifacts + SDL_default: stage: build script: - ./.ci/install.sh git mercurial bash gcc g++ make autoconf automake autopoint gettext libtool pkg-config cmake libx11-dev libxext-dev libxt-dev libxv-dev x11proto-core-dev libgl1-mesa-dev libasound2-dev - ./.ci/copyspm.sh + - export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.3 + - ./.ci/buildlib.sh SDL2 default + - cp /usr/local/spm/env/runSDL2_default.sh /usr/local/spm/env/runSDL_default.sh + - ${runenvtool} ./.ci/buildlib.sh zlib master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh physfs stable-2.0 + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh libpng master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh freetype master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh libxml2 master + - ${runenvtool} ${runenvtoolz} ./.ci/buildlib.sh curl master + - ${runenvtool} ./.ci/buildlib.sh SDL2_image default + - ${runenvtool} ./.ci/buildlib.sh SDL2_mixer default + - ${runenvtool} ./.ci/buildlib.sh SDL2_net default + - ${runenvtool} ./.ci/buildlib.sh SDL2_ttf default + - export LD_PRELOAD + - ./.ci/copyfinal.sh + variables: + installname: SDL_default + runenvtool: /usr/local/spm/env/run${installname}.sh + runenvtoolz: /usr/local/spm/env/runzlib_master.sh + ASAN_OPTIONS: "detect_leaks=0" + CXXFLAGS: "-fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + CFLAGS: "-fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + LDFLAGS: "-lasan -lubsan + -fsanitize=address -fsanitize=undefined + -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable + -fsanitize=vla-bound -fsanitize=null -fsanitize=return + -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment + -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow + -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool + -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict + -fno-omit-frame-pointer" + <<: *job-artifacts + +SDL_default_asan: + stage: build + script: + - ./.ci/install.sh git mercurial bash gcc g++ make autoconf automake autopoint gettext libtool pkg-config cmake + libx11-dev libxext-dev libxt-dev libxv-dev x11proto-core-dev libgl1-mesa-dev libasound2-dev + - ./.ci/copyspm.sh - ./.ci/buildlib.sh SDL2 default - cp /usr/local/spm/env/runSDL2_default.sh /usr/local/spm/env/runSDL_default.sh - ${runenvtool} ./.ci/buildlib.sh zlib master |