diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-04-10 02:11:53 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-04-12 02:38:26 +0300 |
commit | d8f9061adf2d255bbe7b2b27f0fa892ef881c305 (patch) | |
tree | 8b8c5f98cbf629de468f2d994187589a8d59e48f /tools/ci/jobs/gccsnapshot.sh | |
parent | b8d27351265af33d880a18239dd91068b2d2a2bd (diff) | |
download | manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.gz manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.bz2 manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.xz manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.zip |
add .gitlab-ci.yml and script for it.
Diffstat (limited to 'tools/ci/jobs/gccsnapshot.sh')
-rwxr-xr-x | tools/ci/jobs/gccsnapshot.sh | 331 |
1 files changed, 331 insertions, 0 deletions
diff --git a/tools/ci/jobs/gccsnapshot.sh b/tools/ci/jobs/gccsnapshot.sh new file mode 100755 index 000000000..cf7c73665 --- /dev/null +++ b/tools/ci/jobs/gccsnapshot.sh @@ -0,0 +1,331 @@ +#!/bin/bash + +export CC=gcc +export CXX=g++ +export LOGFILE=gcc-snapshot.log +export PATH=/usr/lib/gcc-snapshot/bin:$PATH + +source ./tools/ci/scripts/init.sh + +aptget_install gcc-snapshot \ + make autoconf automake autopoint gettext libphysfs-dev \ + libxml2-dev libcurl4-gnutls-dev libpng-dev \ + libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev + +export CXXFLAGS="-pedantic -ggdb3 -O2 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-std=gnu++1z -Wformat=1" + +#export CXXFLAGS="${CXXFLAGS} --all-warnings" +#export CXXFLAGS="${CXXFLAGS} --extra-warnings" +export CXXFLAGS="${CXXFLAGS} -W" +export CXXFLAGS="${CXXFLAGS} -Wabi" +# ignoring +#export CXXFLAGS="${CXXFLAGS} -Wabi-tag" +#export CXXFLAGS="${CXXFLAGS} -Wabi=" +export CXXFLAGS="${CXXFLAGS} -Waddress" +# +++ ignoring. may be can be fixed? +#export CXXFLAGS="${CXXFLAGS} -Waggregate-return" +export CXXFLAGS="${CXXFLAGS} -Waggressive-loop-optimizations" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Waliasing" +#export CXXFLAGS="${CXXFLAGS} -Walign-commons" +export CXXFLAGS="${CXXFLAGS} -Wall" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wampersand" +export CXXFLAGS="${CXXFLAGS} -Warray-bounds" +# +++ need try it +export CXXFLAGS="${CXXFLAGS} -Warray-bounds=2" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Warray-temporaries" +#export CXXFLAGS="${CXXFLAGS} -Wassign-intercept" +export CXXFLAGS="${CXXFLAGS} -Wattributes" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wbad-function-cast" +export CXXFLAGS="${CXXFLAGS} -Wbool-compare" +export CXXFLAGS="${CXXFLAGS} -Wbuiltin-macro-redefined" +#export CXXFLAGS="${CXXFLAGS} -Wc++-compat" +#export CXXFLAGS="${CXXFLAGS} -Wc++0x-compat" +#export CXXFLAGS="${CXXFLAGS} -Wc++11-compat" +export CXXFLAGS="${CXXFLAGS} -Wc++14-compat" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wc-binding-type" +#export CXXFLAGS="${CXXFLAGS} -Wc90-c99-compat" +#export CXXFLAGS="${CXXFLAGS} -Wc99-c11-compat" +export CXXFLAGS="${CXXFLAGS} -Wcast-align" +export CXXFLAGS="${CXXFLAGS} -Wcast-qual" +export CXXFLAGS="${CXXFLAGS} -Wchar-subscripts" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wcharacter-truncation" +export CXXFLAGS="${CXXFLAGS} -Wchkp" +export CXXFLAGS="${CXXFLAGS} -Wclobbered" +export CXXFLAGS="${CXXFLAGS} -Wcomment" +export CXXFLAGS="${CXXFLAGS} -Wcomments" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wcompare-reals" +export CXXFLAGS="${CXXFLAGS} -Wconditionally-supported" +# +++ need fix in future +#export CXXFLAGS="${CXXFLAGS} -Wconversion" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wconversion-extra" +export CXXFLAGS="${CXXFLAGS} -Wconversion-null" +export CXXFLAGS="${CXXFLAGS} -Wcoverage-mismatch" +export CXXFLAGS="${CXXFLAGS} -Wcpp" +export CXXFLAGS="${CXXFLAGS} -Wctor-dtor-privacy" +export CXXFLAGS="${CXXFLAGS} -Wdate-time" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wdeclaration-after-statement" +export CXXFLAGS="${CXXFLAGS} -Wdelete-incomplete" +export CXXFLAGS="${CXXFLAGS} -Wdelete-non-virtual-dtor" +export CXXFLAGS="${CXXFLAGS} -Wdeprecated" +export CXXFLAGS="${CXXFLAGS} -Wdeprecated-declarations" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wdesignated-init" +export CXXFLAGS="${CXXFLAGS} -Wdisabled-optimization" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wdiscarded-array-qualifiers" +#export CXXFLAGS="${CXXFLAGS} -Wdiscarded-qualifiers" +export CXXFLAGS="${CXXFLAGS} -Wdiv-by-zero" +# +++ need fix in future +#export CXXFLAGS="${CXXFLAGS} -Wdouble-promotion" +export CXXFLAGS="${CXXFLAGS} -Wduplicated-cond" +# +++ too many warnings. may be used some times +#export CXXFLAGS="${CXXFLAGS} -Weffc++" +export CXXFLAGS="${CXXFLAGS} -Wempty-body" +export CXXFLAGS="${CXXFLAGS} -Wendif-labels" +export CXXFLAGS="${CXXFLAGS} -Wenum-compare" +export CXXFLAGS="${CXXFLAGS} -Werror-implicit-function-declaration" +export CXXFLAGS="${CXXFLAGS} -Wextra" +# +++ need fix in future +#export CXXFLAGS="${CXXFLAGS} -Wfloat-conversion" +# +++ need fix in future +#export CXXFLAGS="${CXXFLAGS} -Wfloat-equal" +export CXXFLAGS="${CXXFLAGS} -Wformat" +export CXXFLAGS="${CXXFLAGS} -Wformat-contains-nul" +export CXXFLAGS="${CXXFLAGS} -Wformat-extra-args" +# +++ ignoring. probably need use some times +#export CXXFLAGS="${CXXFLAGS} -Wformat-nonliteral" +export CXXFLAGS="${CXXFLAGS} -Wformat-security" +export CXXFLAGS="${CXXFLAGS} -Wformat-signedness" +export CXXFLAGS="${CXXFLAGS} -Wformat-y2k" +export CXXFLAGS="${CXXFLAGS} -Wformat-zero-length" +#export CXXFLAGS="${CXXFLAGS} -Wformat=" +export CXXFLAGS="${CXXFLAGS} -Wframe-address" +#export CXXFLAGS="${CXXFLAGS} -Wframe-larger-than=<number>" +export CXXFLAGS="${CXXFLAGS} -Wfree-nonheap-object" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wfunction-elimination" +export CXXFLAGS="${CXXFLAGS} -Whsa" +export CXXFLAGS="${CXXFLAGS} -Wignored-qualifiers" +# +++ failing now. Need enable after package updated +#export CXXFLAGS="${CXXFLAGS} -Wignored-attributes" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wimplicit" +#export CXXFLAGS="${CXXFLAGS} -Wimplicit-function-declaration" +#export CXXFLAGS="${CXXFLAGS} -Wimplicit-int" +#export CXXFLAGS="${CXXFLAGS} -Wimplicit-interface" +#export CXXFLAGS="${CXXFLAGS} -Wimplicit-procedure" +#export CXXFLAGS="${CXXFLAGS} -Wincompatible-pointer-types" +export CXXFLAGS="${CXXFLAGS} -Winherited-variadic-ctor" +export CXXFLAGS="${CXXFLAGS} -Winit-self" +# ignoting +#export CXXFLAGS="${CXXFLAGS} -Winline" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wint-conversion" +export CXXFLAGS="${CXXFLAGS} -Wint-to-pointer-cast" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Winteger-division" +#export CXXFLAGS="${CXXFLAGS} -Wintrinsic-shadow" +#export CXXFLAGS="${CXXFLAGS} -Wintrinsics-std" +export CXXFLAGS="${CXXFLAGS} -Winvalid-memory-model" +export CXXFLAGS="${CXXFLAGS} -Winvalid-offsetof" +export CXXFLAGS="${CXXFLAGS} -Winvalid-pch" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wjump-misses-init" +#export CXXFLAGS="${CXXFLAGS} -Wlarger-than-" +#export CXXFLAGS="${CXXFLAGS} -Wlarger-than=" +#export CXXFLAGS="${CXXFLAGS} -Wline-truncation" +export CXXFLAGS="${CXXFLAGS} -Wliteral-suffix" +export CXXFLAGS="${CXXFLAGS} -Wlogical-not-parentheses" +export CXXFLAGS="${CXXFLAGS} -Wlogical-op" +export CXXFLAGS="${CXXFLAGS} -Wlong-long" +export CXXFLAGS="${CXXFLAGS} -Wlto-type-mismatch" +export CXXFLAGS="${CXXFLAGS} -Wmain" +export CXXFLAGS="${CXXFLAGS} -Wmaybe-uninitialized" +export CXXFLAGS="${CXXFLAGS} -Wmemset-transposed-args" +export CXXFLAGS="${CXXFLAGS} -Wmisleading-indentation" +export CXXFLAGS="${CXXFLAGS} -Wmissing-braces" +export CXXFLAGS="${CXXFLAGS} -Wmissing-declarations" +export CXXFLAGS="${CXXFLAGS} -Wmissing-field-initializers" +export CXXFLAGS="${CXXFLAGS} -Wmissing-format-attribute" +export CXXFLAGS="${CXXFLAGS} -Wmissing-include-dirs" +export CXXFLAGS="${CXXFLAGS} -Wmissing-noreturn" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wmissing-parameter-type" +#export CXXFLAGS="${CXXFLAGS} -Wmissing-prototypes" +export CXXFLAGS="${CXXFLAGS} -Wmultichar" +# ignoring +#export CXXFLAGS="${CXXFLAGS} -Wmultiple-inheritance" +# ignoring +#export CXXFLAGS="${CXXFLAGS} -Wnamespaces" +export CXXFLAGS="${CXXFLAGS} -Wnarrowing" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wnested-externs" +export CXXFLAGS="${CXXFLAGS} -Wnoexcept" +export CXXFLAGS="${CXXFLAGS} -Wnon-template-friend" +export CXXFLAGS="${CXXFLAGS} -Wnon-virtual-dtor" +export CXXFLAGS="${CXXFLAGS} -Wnonnull" +export CXXFLAGS="${CXXFLAGS} -Wnonnull-compare" +#export CXXFLAGS="${CXXFLAGS} -Wnormalized" +export CXXFLAGS="${CXXFLAGS} -Wnormalized=nfkc" +export CXXFLAGS="${CXXFLAGS} -Wnull-dereference" +export CXXFLAGS="${CXXFLAGS} -Wodr" +# probably need fix it +#export CXXFLAGS="${CXXFLAGS} -Wold-style-cast" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wold-style-declaration" +#export CXXFLAGS="${CXXFLAGS} -Wold-style-definition" +export CXXFLAGS="${CXXFLAGS} -Wopenmp-simd" +export CXXFLAGS="${CXXFLAGS} -Woverflow" +export CXXFLAGS="${CXXFLAGS} -Woverlength-strings" +export CXXFLAGS="${CXXFLAGS} -Woverloaded-virtual" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Woverride-init" +#export CXXFLAGS="${CXXFLAGS} -Woverride-init-side-effects" +export CXXFLAGS="${CXXFLAGS} -Wpacked" +export CXXFLAGS="${CXXFLAGS} -Wpacked-bitfield-compat" +# +++ may be need fix in future? +#export CXXFLAGS="${CXXFLAGS} -Wpadded" +export CXXFLAGS="${CXXFLAGS} -Wparentheses" +export CXXFLAGS="${CXXFLAGS} -Wpedantic" +export CXXFLAGS="${CXXFLAGS} -Wplacement-new" +#export CXXFLAGS="${CXXFLAGS} -Wplacement-new=" +export CXXFLAGS="${CXXFLAGS} -Wpmf-conversions" +export CXXFLAGS="${CXXFLAGS} -Wpointer-arith" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wpointer-sign" +#export CXXFLAGS="${CXXFLAGS} -Wpointer-to-int-cast" +export CXXFLAGS="${CXXFLAGS} -Wpragmas" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wproperty-assign-default" +#export CXXFLAGS="${CXXFLAGS} -Wprotocol" +#export CXXFLAGS="${CXXFLAGS} -Wreal-q-constant" +#export CXXFLAGS="${CXXFLAGS} -Wrealloc-lhs" +#export CXXFLAGS="${CXXFLAGS} -Wrealloc-lhs-all" +export CXXFLAGS="${CXXFLAGS} -Wredundant-decls" +export CXXFLAGS="${CXXFLAGS} -Wreorder" +export CXXFLAGS="${CXXFLAGS} -Wreturn-local-addr" +export CXXFLAGS="${CXXFLAGS} -Wreturn-type" +export CXXFLAGS="${CXXFLAGS} -Wscalar-storage-order" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wselector" +export CXXFLAGS="${CXXFLAGS} -Wsequence-point" +export CXXFLAGS="${CXXFLAGS} -Wshadow" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wshadow-ivar" +export CXXFLAGS="${CXXFLAGS} -Wshift-count-negative" +export CXXFLAGS="${CXXFLAGS} -Wshift-count-overflow" +export CXXFLAGS="${CXXFLAGS} -Wshift-negative-value" +export CXXFLAGS="${CXXFLAGS} -Wshift-overflow" +#export CXXFLAGS="${CXXFLAGS} -Wshift-overflow=" +export CXXFLAGS="${CXXFLAGS} -Wsign-compare" +# +++ need fix in future +#export CXXFLAGS="${CXXFLAGS} -Wsign-conversion" +export CXXFLAGS="${CXXFLAGS} -Wsign-promo" +export CXXFLAGS="${CXXFLAGS} -Wsized-deallocation" +export CXXFLAGS="${CXXFLAGS} -Wsizeof-array-argument" +export CXXFLAGS="${CXXFLAGS} -Wsizeof-pointer-memaccess" +export CXXFLAGS="${CXXFLAGS} -Wstack-protector" +#export CXXFLAGS="${CXXFLAGS} -Wstack-usage=" +export CXXFLAGS="${CXXFLAGS} -Wstrict-aliasing" +#export CXXFLAGS="${CXXFLAGS} -Wstrict-aliasing=" +export CXXFLAGS="${CXXFLAGS} -Wstrict-null-sentinel" +# used before +#export CXXFLAGS="${CXXFLAGS} -Wstrict-overflow" +#export CXXFLAGS="${CXXFLAGS} -Wstrict-overflow=" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wstrict-prototypes" +#export CXXFLAGS="${CXXFLAGS} -Wstrict-selector-match" +export CXXFLAGS="${CXXFLAGS} -Wsubobject-linkage" +# +++ ignoring +#export CXXFLAGS="${CXXFLAGS} -Wsuggest-attribute=const" +#export CXXFLAGS="${CXXFLAGS} -Wsuggest-attribute=format" +export CXXFLAGS="${CXXFLAGS} -Wsuggest-attribute=noreturn" +# +++ ignoring +#export CXXFLAGS="${CXXFLAGS} -Wsuggest-attribute=pure" +#export CXXFLAGS="${CXXFLAGS} -Wsuggest-final-methods" +#export CXXFLAGS="${CXXFLAGS} -Wsuggest-final-types" +export CXXFLAGS="${CXXFLAGS} -Wsuggest-override" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wsurprising" +export CXXFLAGS="${CXXFLAGS} -Wswitch" +export CXXFLAGS="${CXXFLAGS} -Wswitch-bool" +export CXXFLAGS="${CXXFLAGS} -Wswitch-default" +export CXXFLAGS="${CXXFLAGS} -Wswitch-enum" +export CXXFLAGS="${CXXFLAGS} -Wsync-nand" +export CXXFLAGS="${CXXFLAGS} -Wsynth" +# ignoring +#export CXXFLAGS="${CXXFLAGS} -Wsystem-headers" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wtabs" +#export CXXFLAGS="${CXXFLAGS} -Wtarget-lifetime" +export CXXFLAGS="${CXXFLAGS} -Wtautological-compare" +# ignoring +#export CXXFLAGS="${CXXFLAGS} -Wtemplates" +export CXXFLAGS="${CXXFLAGS} -Wterminate" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wtraditional" +#export CXXFLAGS="${CXXFLAGS} -Wtraditional-conversion" +export CXXFLAGS="${CXXFLAGS} -Wtrampolines" +export CXXFLAGS="${CXXFLAGS} -Wtrigraphs" +export CXXFLAGS="${CXXFLAGS} -Wtype-limits" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wundeclared-selector" +export CXXFLAGS="${CXXFLAGS} -Wundef" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wunderflow" +export CXXFLAGS="${CXXFLAGS} -Wuninitialized" +export CXXFLAGS="${CXXFLAGS} -Wunknown-pragmas" +# +++ may be try use in future? +#export CXXFLAGS="${CXXFLAGS} -Wunsafe-loop-optimizations" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wunsuffixed-float-constants" +export CXXFLAGS="${CXXFLAGS} -Wunused" +export CXXFLAGS="${CXXFLAGS} -Wunused-but-set-parameter" +export CXXFLAGS="${CXXFLAGS} -Wunused-but-set-variable" +export CXXFLAGS="${CXXFLAGS} -Wunreachable-code" +export CXXFLAGS="${CXXFLAGS} -Wunused-const-variable=1" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wunused-dummy-argument" +export CXXFLAGS="${CXXFLAGS} -Wunused-function" +export CXXFLAGS="${CXXFLAGS} -Wunused-label" +export CXXFLAGS="${CXXFLAGS} -Wunused-local-typedefs" +export CXXFLAGS="${CXXFLAGS} -Wunused-macros" +export CXXFLAGS="${CXXFLAGS} -Wunused-parameter" +export CXXFLAGS="${CXXFLAGS} -Wunused-result" +export CXXFLAGS="${CXXFLAGS} -Wunused-value" +export CXXFLAGS="${CXXFLAGS} -Wunused-variable" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wuse-without-only" +# +++ need from time to time +#export CXXFLAGS="${CXXFLAGS} -Wuseless-cast" +export CXXFLAGS="${CXXFLAGS} -Wvarargs" +export CXXFLAGS="${CXXFLAGS} -Wvariadic-macros" +export CXXFLAGS="${CXXFLAGS} -Wvector-operation-performance" +export CXXFLAGS="${CXXFLAGS} -Wvirtual-inheritance" +export CXXFLAGS="${CXXFLAGS} -Wvirtual-move-assign" +export CXXFLAGS="${CXXFLAGS} -Wvla" +export CXXFLAGS="${CXXFLAGS} -Wvolatile-register-var" +export CXXFLAGS="${CXXFLAGS} -Wwrite-strings" +export CXXFLAGS="${CXXFLAGS} -Wzero-as-null-pointer-constant" +# not for C++ +#export CXXFLAGS="${CXXFLAGS} -Wzerotrip" +#export CXXFLAGS="${CXXFLAGS} -frequire-return-statement" + +run_configure +run_make +run_check_warnings + +source ./tools/ci/scripts/exit.sh + +exit 0 |