From: khizmax Date: Sun, 26 Feb 2017 12:58:16 +0000 (+0300) Subject: Added Jenkins CI configs for some build machines X-Git-Tag: v2.3.0~158 X-Git-Url: http://plrg.eecs.uci.edu/git/?p=libcds.git;a=commitdiff_plain;h=66197a8d06fc1b6056fbac8c0ae3a3f8f98a9c0c Added Jenkins CI configs for some build machines --- diff --git a/build/CI/VASEx-CI-2/cds-libs b/build/CI/VASEx-CI-2/cds-libs new file mode 100644 index 00000000..cd4832f0 --- /dev/null +++ b/build/CI/VASEx-CI-2/cds-libs @@ -0,0 +1,129 @@ +######################################### +# Generic parameters + +workspace: $WORKSPACE +libcds-source: source +make-job: 10 +gtest-include: $GTEST_ROOT/googletest/include + +######################################### +#GCC-4.8 +gcc-4.8-root: $GCC48_ROOT/bin +gcc-4.8-cxx: g++-4.8 +gcc-4.8-cc: gcc-4.8 +gcc-4.8-ldflags: -L$GCC48_ROOT/lib -Wl,-rpath=$GCC48_ROOT/lib +gcc-4.8-extlib: rt +gcc-4.8-boost: $BOOST_ROOT +gcc-4.8-64-boost-lib: stage64-gcc4.8/lib +gcc-4.8-gtest: $GTEST_ROOT +gcc-4.8-64-gtest-lib: $GTEST_ROOT/lib-gcc4.8/libgtest.a + + +######################################## +#GCC-4.9 +gcc-4.9-root: $GCC49_ROOT/bin +gcc-4.9-cxx: g++-4.9 +gcc-4.9-cc: gcc-4.9 +gcc-4.9-ldflags: -Wl,-rpath=$GCC49_ROOT/lib64 +gcc-4.9-extlib: rt +gcc-4.9-boost: $BOOST_ROOT +gcc-4.9-64-boost-lib: stage64-gcc4.9/lib +gcc-4.9-gtest: $GTEST_ROOT +gcc-4.9-64-gtest-lib: $GTEST_ROOT/lib-gcc4.9/libgtest.a + +######################################## +#GCC-5 +gcc-5-root: $GCC5_ROOT/bin +gcc-5-cxx: g++-5 +gcc-5-cc: gcc-5 +gcc-5-boost: $BOOST_ROOT +gcc-5-ldflags: -Wl,-rpath=$GCC5_ROOT/lib64 +gcc-5-extlib: rt +gcc-5-64-boost-lib: stage64-gcc5/lib +gcc-5-64-asan-boost-lib: stage64-gcc5-asan +gcc-5-64-tsan-boost-lib: stage64-gcc5-tsan +gcc-5-gtest: $GTEST_ROOT +gcc-5-64-gtest-lib: $GTEST_ROOT/lib-gcc5/libgtest.a + +######################################## +#GCC-6 +gcc-6-root: $GCC6_ROOT/bin +gcc-6-cxx: g++-6 +gcc-6-cc: gcc-6 +gcc-6-boost: $BOOST_ROOT +gcc-6-ldflags: -Wl,-rpath=$GCC6_ROOT/lib64 +gcc-6-extlib: rt +gcc-6-64-boost-lib: stage64-gcc6/lib +gcc-6-64-asan-boost-lib: stage64-gcc6-asan +gcc-6-64-tsan-boost-lib: stage64-gcc6-tsan +gcc-6-gtest: $GTEST_ROOT +gcc-6-64-gtest-lib: $GTEST_ROOT/lib-gcc6/libgtest.a + +######################################## +# clang-3.6 +clang-3.6-root: $CLANG36_ROOT/bin +clang-3.6-ld-lib-path: $GCC5_ROOT/lib64 +clang-3.6-cxx: clang++ +clang-3.6-cc: clang +clang-3.6-cxxflags: -Wdocumentation +clang-3.6-ldflags: -Wl,-rpath=$GCC5_ROOT/lib64 +clang-3.6-extlib: rt atomic +clang-3.6-boost: $BOOST_ROOT +clang-3.6-64-boost-lib: stage64-clang3.6/lib +clang-3.6-gtest: $GTEST_ROOT +clang-3.6-64-gtest-lib: $GTEST_ROOT/lib-clang3.6/libgtest.a + +######################################## +# clang-3.7 +clang-3.7-root: $CLANG37_ROOT/bin +clang-3.7-ld-lib-path: $GCC6_ROOT/lib64 +clang-3.7-cxx: clang++ +clang-3.7-cc: clang +clang-3.7-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.7-ldflags: -L$CLANG37_ROOT/lib -Wl,-rpath=$CLANG37_ROOT/lib +clang-3.7-extlib: rt c++abi +clang-3.7-boost: $BOOST_ROOT +clang-3.7-64-boost-lib: stage64-clang3.7/lib +clang-3.7-gtest: $GTEST_ROOT +clang-3.7-64-gtest-lib: $GTEST_ROOT/lib-clang3.7/libgtest.a + + +######################################## +# clang-3.8 +clang-3.8-root: $CLANG38_ROOT/bin +clang-3.8-ld-lib-path: $GCC6_ROOT/lib64 +clang-3.8-cxx: clang++ +clang-3.8-cc: clang +clang-3.8-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.8-ldflags: -L$CLANG38_ROOT/lib -Wl,-rpath=$CLANG38_ROOT/lib +clang-3.8-extlib: rt +clang-3.8-boost: $BOOST_ROOT +clang-3.8-64-boost-lib: stage64-clang3.8/lib +clang-3.8-gtest: $GTEST_ROOT +clang-3.8-64-gtest-lib: $GTEST_ROOT/lib-clang3.8/libgtest.a + + +######################################## +# clang-3.9 +clang-3.9-root: $CLANG39_ROOT/bin +clang-3.9-ld-lib-path: $GCC6_ROOT/lib64 +clang-3.9-cxx: clang++ +clang-3.9-cc: clang +clang-3.9-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.9-ldflags: -L$CLANG39_ROOT/lib -Wl,-rpath=$CLANG39_ROOT/lib +clang-3.9-extlib: rt +clang-3.9-boost: $BOOST_ROOT +clang-3.9-64-boost-lib: stage64-clang3.9/lib +clang-3.9-64-asan-boost-lib: stage64-clang3.9-asan +clang-3.9-64-tsan-boost-lib: stage64-clang3.9-tsan +clang-3.9-gtest: $GTEST_ROOT +clang-3.9-64-gtest-lib: $GTEST_ROOT/lib-clang3.9/libgtest.a + + + + + + + + + diff --git a/build/CI/VASEx-CI-2/ci-build b/build/CI/VASEx-CI-2/ci-build new file mode 100644 index 00000000..2dddd2da --- /dev/null +++ b/build/CI/VASEx-CI-2/ci-build @@ -0,0 +1,58 @@ +#! /bin/bash + +# Useful envvars: +# CI_SCRIPT_PATH - path where to find scripts +# TOOLSET - toolset: x64-gcc-5, x64-clang-3.9 and so on +# BUILD_TYPE - build type: 'dbg', 'rel', 'asan', 'tsan' +# WORKSPACE - path where to build + +env|sort + +case "$TOOLSET" in + "x64-gcc-4.8") + echo "GCC-4.8 '$BUILD_TYPE', toolset root: $GCC48_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-4.8-64 + EXIT_CODE=$? + ;; + "x64-gcc-4.9") + echo "GCC-4.9 '$BUILD_TYPE', toolset root: $GCC49_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-4.9-64 + EXIT_CODE=$? + ;; + "x64-gcc-5") + echo "GCC-5 '$BUILD_TYPE', toolset root: $GCC5_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-5-64 + EXIT_CODE=$? + ;; + "x64-gcc-6") + echo "GCC-6 '$BUILD_TYPE', toolset root: $GCC6_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-6-64 + EXIT_CODE=$? + ;; + "x64-clang-3.6") + echo "clang-3.6 '$BUILD_TYPE', toolset root: $CLANG36_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.6-64 + EXIT_CODE=$? + ;; + "x64-clang-3.7") + echo "clang-3.7 '$BUILD_TYPE', toolset root: $CLANG37_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.7-64 + EXIT_CODE=$? + ;; + "x64-clang-3.8") + echo "clang-3.8 '$BUILD_TYPE', toolset root: $CLANG38_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.8-64 + EXIT_CODE=$? + ;; + "x64-clang-3.9") + echo "clang-3.9 '$BUILD_TYPE', toolset root: $CLANG39_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.9-64 + EXIT_CODE=$? + ;; + * ) + echo "Undefined toolset '$TOOLSET'" + exit 1 + ;; +esac + +exit $EXIT_CODE diff --git a/build/CI/VASEx-CI-2/ci-env b/build/CI/VASEx-CI-2/ci-env new file mode 100644 index 00000000..189c56cc --- /dev/null +++ b/build/CI/VASEx-CI-2/ci-env @@ -0,0 +1,26 @@ +#CMAKE_2_8_12=/home/libcds-ci/bin/cmake/cmake-2.8.12/bin +#CMAKE_3_6_2=/home/libcds-ci/bin/cmake/cmake-3.6.2/bin +#CMAKE3=$CMAKE_3_6_2 + +#PATH=$CMAKE_2_8_12:$PATH:$HOME/.local/bin:$HOME/bin + +TOOLSET_ROOT=$HOME/bin + +GCC48_ROOT=$TOOLSET_ROOT/gcc-4.8 +GCC49_ROOT=$TOOLSET_ROOT/gcc-4.9 +GCC5_ROOT=$TOOLSET_ROOT/gcc-5 +GCC6_ROOT=$TOOLSET_ROOT/gcc-6 + +CLANG36_ROOT=$TOOLSET_ROOT/clang-3.6 +CLANG37_ROOT=$TOOLSET_ROOT/clang-3.7 +CLANG38_ROOT=$TOOLSET_ROOT/clang-3.8 +CLANG39_ROOT=$TOOLSET_ROOT/clang-3.9 + +CLANG_STDLIB="-stdlib=libc++" +CLANG37_CXXFLAGS=$CLANG_STDLIB +CLANG38_CXXFLAGS=$CLANG_STDLIB +CLANG39_CXXFLAGS=$CLANG_STDLIB + +LIB_ROOT=$HOME/lib +BOOST_ROOT=$LIB_ROOT/boost +GTEST_ROOT=$LIB_ROOT/gtest diff --git a/build/CI/VASEx-CI/cds-libs b/build/CI/VASEx-CI/cds-libs new file mode 100644 index 00000000..e65c326a --- /dev/null +++ b/build/CI/VASEx-CI/cds-libs @@ -0,0 +1,117 @@ +######################################### +# Generic parameters + +workspace: $WORKSPACE +libcds-source: source +make-job: 10 +gtest-include: $GTEST_ROOT/googletest/include + +######################################### +#GCC-4.8 +gcc-4.8-root: $GCC48_ROOT/bin +gcc-4.8-cxx: g++-4.8 +gcc-4.8-cc: gcc-4.8 +gcc-4.8-ldflags: -L$GCC48_ROOT/lib -Wl,-rpath=$GCC48_ROOT/lib +gcc-4.8-boost: $BOOST_ROOT +gcc-4.8-64-boost-lib: stage64-gcc4.8/lib +gcc-4.8-gtest: $GTEST_ROOT +gcc-4.8-64-gtest-lib: $GTEST_ROOT/lib-gcc4.8/libgtest.a + + +######################################## +#GCC-4.9 +gcc-4.9-root: $GCC49_ROOT/bin +gcc-4.9-cxx: g++-4.9 +gcc-4.9-cc: gcc-4.9 +gcc-4.9-ldflags: -Wl,-rpath=$GCC49_ROOT/lib64 +gcc-4.9-boost: $BOOST_ROOT +gcc-4.9-64-boost-lib: stage64-gcc4.9/lib +gcc-4.9-gtest: $GTEST_ROOT +gcc-4.9-64-gtest-lib: $GTEST_ROOT/lib-gcc4.9/libgtest.a + +######################################## +#GCC-5 +gcc-5-root: $GCC5_ROOT/bin +gcc-5-cxx: g++-5 +gcc-5-cc: gcc-5 +gcc-5-boost: $BOOST_ROOT +gcc-5-ldflags: -Wl,-rpath=$GCC5_ROOT/lib64 +gcc-5-64-boost-lib: stage64-gcc5/lib +gcc-5-64-asan-boost-lib: stage64-gcc5-asan +gcc-5-64-tsan-boost-lib: stage64-gcc5-tsan +gcc-5-gtest: $GTEST_ROOT +gcc-5-64-gtest-lib: $GTEST_ROOT/lib-gcc5/libgtest.a + +######################################## +#GCC-6 +gcc-6-root: $GCC6_ROOT/bin +gcc-6-cxx: g++-6 +gcc-6-cc: gcc-6 +gcc-6-boost: $BOOST_ROOT +gcc-6-ldflags: -Wl,-rpath=$GCC6_ROOT/lib64 +gcc-6-64-boost-lib: stage64-gcc6/lib +gcc-6-64-asan-boost-lib: stage64-gcc6-asan +gcc-6-64-tsan-boost-lib: stage64-gcc6-tsan +gcc-6-gtest: $GTEST_ROOT +gcc-6-64-gtest-lib: $GTEST_ROOT/lib-gcc6/libgtest.a + +######################################## +# clang-3.6 +clang-3.6-root: $CLANG36_ROOT/bin +clang-3.6-ld-lib-path: $GCC5_ROOT/lib64 +clang-3.6-cxx: clang++ +clang-3.6-cc: clang +clang-3.6-cxxflags: -Wdocumentation +clang-3.6-boost: $BOOST_ROOT +clang-3.6-64-boost-lib: stage64-clang3.6/lib +clang-3.6-gtest: $GTEST_ROOT +clang-3.6-64-gtest-lib: $GTEST_ROOT/lib-clang3.6/libgtest.a + +######################################## +# clang-3.7 +clang-3.7-root: $CLANG37_ROOT/bin +clang-3.7-cxx: clang++ +clang-3.7-cc: clang +clang-3.7-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.7-ldflags: -L$CLANG37_ROOT/lib -Wl,-rpath=$CLANG37_ROOT/lib -lc++abi +clang-3.7-boost: $BOOST_ROOT +clang-3.7-64-boost-lib: stage64-clang3.7/lib +clang-3.7-gtest: $GTEST_ROOT +clang-3.7-64-gtest-lib: $GTEST_ROOT/lib-clang3.7/libgtest.a + + +######################################## +# clang-3.8 +clang-3.8-root: $CLANG38_ROOT/bin +clang-3.8-cxx: clang++ +clang-3.8-cc: clang +clang-3.8-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.8-ldflags: -L$CLANG38_ROOT/lib -Wl,-rpath=$CLANG38_ROOT/lib +clang-3.8-boost: $BOOST_ROOT +clang-3.8-64-boost-lib: stage64-clang3.8/lib +clang-3.8-gtest: $GTEST_ROOT +clang-3.8-64-gtest-lib: $GTEST_ROOT/lib-clang3.8/libgtest.a + + +######################################## +# clang-3.9 +clang-3.9-root: $CLANG39_ROOT/bin +clang-3.9-cxx: clang++ +clang-3.9-cc: clang +clang-3.9-cxxflags: -stdlib=libc++ -Wdocumentation +clang-3.9-ldflags: -L$CLANG39_ROOT/lib -Wl,-rpath=$CLANG39_ROOT/lib +clang-3.9-boost: $BOOST_ROOT +clang-3.9-64-boost-lib: stage64-clang3.9/lib +clang-3.9-64-asan-boost-lib: stage64-clang3.9-asan +clang-3.9-64-tsan-boost-lib: stage64-clang3.9-tsan +clang-3.9-gtest: $GTEST_ROOT +clang-3.9-64-gtest-lib: $GTEST_ROOT/lib-clang3.9/libgtest.a + + + + + + + + + diff --git a/build/CI/VASEx-CI/ci-build b/build/CI/VASEx-CI/ci-build new file mode 100644 index 00000000..9923a196 --- /dev/null +++ b/build/CI/VASEx-CI/ci-build @@ -0,0 +1,56 @@ +#! /bin/bash + +# Useful envvars: +# CI_SCRIPT_PATH - path where to find scripts +# TOOLSET - toolset: x64-gcc-5, x64-clang-3.9 and so on +# BUILD_TYPE - build type: 'dbg', 'rel', 'asan', 'tsan' +# WORKSPACE - path where to build + +env|sort + +case "$TOOLSET" in + "x64-gcc-4.8") + echo "GCC-4.8 '$BUILD_TYPE', toolset root: $GCC48_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-4.8-64 + exit $? + ;; + "x64-gcc-4.9") + echo "GCC-4.9 '$BUILD_TYPE', toolset root: $GCC49_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-4.9-64 + exit $? + ;; + "x64-gcc-5") + echo "GCC-5 '$BUILD_TYPE', toolset root: $GCC5_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-5-64 + exit $? + ;; + "x64-gcc-6") + echo "GCC-6 '$BUILD_TYPE', toolset root: $GCC6_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-gcc-6-64 + exit $? + ;; + "x64-clang-3.6") + echo "clang-3.6 '$BUILD_TYPE', toolset root: $CLANG36_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.6-64 + exit $? + ;; + "x64-clang-3.7") + echo "clang-3.7 '$BUILD_TYPE', toolset root: $CLANG37_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.7-64 + exit $? + ;; + "x64-clang-3.8") + echo "clang-3.8 '$BUILD_TYPE', toolset root: $CLANG38_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.8-64 + exit $? + ;; + "x64-clang-3.9") + echo "clang-3.9 '$BUILD_TYPE', toolset root: $CLANG39_ROOT" + $CI_SCRIPT_PATH/ci-script/cds-$BUILD_TYPE-clang-3.9-64 + exit $? + ;; + * ) + echo "Undefined toolset '$TOOLSET'" + exit 1 + ;; +esac diff --git a/build/CI/VASEx-CI/ci-env b/build/CI/VASEx-CI/ci-env new file mode 100644 index 00000000..f79eabb7 --- /dev/null +++ b/build/CI/VASEx-CI/ci-env @@ -0,0 +1,27 @@ +CMAKE_2_8_12=/home/libcds-ci/bin/cmake/cmake-2.8.12/bin +CMAKE_3_6_2=/home/libcds-ci/bin/cmake/cmake-3.6.2/bin +CMAKE3=$CMAKE_3_6_2 + +PATH=$CMAKE_2_8_12:$PATH:$HOME/.local/bin:$HOME/bin + +TOOLSET_ROOT=$HOME/bin + +GCC48_ROOT=$TOOLSET_ROOT/gcc-4.8 +GCC49_ROOT=$TOOLSET_ROOT/gcc-4.9 +GCC5_ROOT=$TOOLSET_ROOT/gcc-5 +GCC6_ROOT=$TOOLSET_ROOT/gcc-6 + +CLANG35_ROOT=$TOOLSET_ROOT/clang-3.5 +CLANG36_ROOT=$TOOLSET_ROOT/clang-3.6 +CLANG37_ROOT=$TOOLSET_ROOT/clang-3.7 +CLANG38_ROOT=$TOOLSET_ROOT/clang-3.8 +CLANG39_ROOT=$TOOLSET_ROOT/clang-3.9 + +CLANG_STDLIB="-stdlib=libc++" +CLANG37_CXXFLAGS=$CLANG_STDLIB +CLANG38_CXXFLAGS=$CLANG_STDLIB +CLANG39_CXXFLAGS=$CLANG_STDLIB + +LIB_ROOT=$HOME/lib +BOOST_ROOT=$LIB_ROOT/boost +GTEST_ROOT=$LIB_ROOT/gtest diff --git a/build/CI/cmake-gen b/build/CI/cmake-gen new file mode 100644 index 00000000..2151ba38 --- /dev/null +++ b/build/CI/cmake-gen @@ -0,0 +1,115 @@ +#! /usr/bin/perl + +my $compiler=shift; +my $bitness =shift; +my $build =shift; +$build="rel" unless $build; + +my $cmake_build="RELEASE"; +$cmake_build="DEBUG" if $build eq 'dbg'; + +my $cds_libs="cds-libs"; + +# get generic props +my $workspace=get_gen_prop("workspace") || "$HOME"; +my $cds_source=get_gen_prop("libcds-source") || "../libcds"; +my $make_jobs=get_gen_prop("make-job") || 2; + +# get compiler-specific props +my $comp_root=get_prop("root"); +my $boost=get_prop( "boost" ); +my $boost_libs=get_prop( "boost-lib" ); +my $gtest=get_prop("gtest"); +my $gtest_lib=get_prop( "gtest-lib"); +my $gtest_inc=get_prop("gtest-include") || get_gen_prop("gtest-include"); +my $cxx=get_prop("cxx") or $compiler; +my $cc=get_prop("cc") or $compiler; +my $cxxflags=get_prop("cxxflags"); +my $ldflags=get_prop("ldflags"); +my $ext_lib=get_prop("extlib"); +my $ld_lib_path=get_prop("ld-lib-path"); + + +my $filename="cds-$build-$compiler-$bitness"; +open( my $out, ">", $filename ) or die "Cannot open cds-$build-$compiler-$bitness"; + +print $out "#! /bin/sh\n\n"; +#print $out "PATH=$comp_root:\$PATH\n" if $comp_root; +#print $out "BOOST_ROOT=$boost\n"; +print $out "root=$workspace\n"; +print $out "CDS_SOURCE=\$root/$cds_source\n"; +print $out "OBJ_ROOT=\$root/obj\n"; +print $out "BIN_ROOT=\$root/bin\n"; +print $out "GTEST_ROOT=$gtest\n" if $gtest; +print $out "\n"; +print $out "rm -fr \$OBJ_ROOT\n"; +print $out "rm -fr \$BIN_ROOT\n"; +print $out "mkdir -p \$OBJ_ROOT\n"; +print $out "#cp -f run-ctest-rel \$OBJ_ROOT/run-ctest\n" if $build eq 'rel'; +print $out "#cp -f run-ctest-dbg \$OBJ_ROOT/run-ctest\n" unless $build eq 'rel'; +print $out "cd \$OBJ_ROOT\n"; +print $out "\n"; +#print $out "PATH=$comp_root:\$PATH \\\n" if $comp_root; +print $out "LD_LIBRARY_PATH=$ld_lib_path:\$LD_LIBRARY_PATH \\\n" if $ld_lib_path; +#print $out "CXX=$cxx \\\n"; +#print $out "CC=$cc \\\n"; +#print $out "CXXFLAGS=\"$cxxflags\" \\\n" if $cxxflags; +print $out "LDFLAGS=\"$ldflags\" \\\n" if $ldflags; +#print $out "GTEST_ROOT=\$GTEST_ROOT/$gtest_libs \\\n"; +print $out "cmake -G \"Unix Makefiles\" \\\n"; +print $out " -DCMAKE_BUILD_TYPE=$cmake_build \\\n"; +print $out " -DCMAKE_C_COMPILER=$comp_root/$cc \\\n"; +print $out " -DCMAKE_CXX_COMPILER=$comp_root/$cxx \\\n"; +print $out " -DCMAKE_CXX_FLAGS=\"$cxxflags\" \\\n" if $cxxflags; +print $out " -DCDS_BIN_DIR=\$BIN_ROOT \\\n"; +print $out " -DWITH_TESTS=ON \\\n"; +print $out " -DWITH_ASAN=ON \\\n" if $build eq 'asan'; +print $out " -DWITH_TSAN=ON \\\n" if $build eq 'tsan'; +print $out " -DBOOSTROOT=$boost \\\n"; +print $out " -DBOOST_LIBRARYDIR=\$BOOST_ROOT/$boost_libs \\\n" if $boost_libs; +print $out " -DGTEST_INCLUDE_DIRS=$gtest_inc \\\n" if $gtest_inc; +print $out " -DGTEST_LIBRARY=$gtest_lib \\\n" if $gtest_lib; +print $out " -DEXTERNAL_SYSTEM_LIBS=\"$ext_lib\" \\\n" if $ext_lib; +print $out " \$CDS_SOURCE && \\\n"; +print $out "make -j $make_jobs \$* \n"; + +close $out; +chmod 0755, $filename; + +sub get_prop($@) +{ + my $what=shift; + my $key="$compiler-$bitness-$build-$what:"; + + my $grep = `grep -P $key $cds_libs`; + if ( $grep ) { + my @ret = $grep =~ /^$key\s+(\S.*\S*)\s+/; + return $ret[0] if @ret; + } + + $key = "$compiler-$bitness-$what:"; + my $grep = `grep -P $key $cds_libs`; + if ( $grep ) { + my @ret = $grep =~ /^$key\s+(\S.*\S*)\s+/; + return $ret[0] if @ret; + } + + $key = "$compiler-$what:"; + my $grep = `grep -P $key $cds_libs`; + if ( $grep ) { + my @ret = $grep =~ /^$key\s+(\S.*\S*)\s+/; + return $ret[0] if @ret; + } +} + +sub get_gen_prop($@) +{ + my $key=shift; + $key = "$key:"; + + my $grep = `grep -P $key $cds_libs`; + if ( $grep ) { + my @ret = $grep =~ /^$key\s+(\S.*\S*)\s+/; + return $ret[0] if @ret; + } +} \ No newline at end of file diff --git a/build/CI/gen-all b/build/CI/gen-all new file mode 100644 index 00000000..01224a17 --- /dev/null +++ b/build/CI/gen-all @@ -0,0 +1,24 @@ +#! /bin/sh + +./cmake-gen gcc-4.8 64 dbg +./cmake-gen gcc-4.8 64 rel +./cmake-gen gcc-4.9 64 dbg +./cmake-gen gcc-4.9 64 rel +./cmake-gen gcc-5 64 dbg +./cmake-gen gcc-5 64 rel +./cmake-gen gcc-5 64 tsan +./cmake-gen gcc-5 64 asan +./cmake-gen gcc-6 64 dbg +./cmake-gen gcc-6 64 rel +./cmake-gen gcc-6 64 tsan +./cmake-gen gcc-6 64 asan +./cmake-gen clang-3.6 64 dbg +./cmake-gen clang-3.6 64 rel +./cmake-gen clang-3.7 64 dbg +./cmake-gen clang-3.7 64 rel +./cmake-gen clang-3.8 64 dbg +./cmake-gen clang-3.8 64 rel +./cmake-gen clang-3.9 64 dbg +./cmake-gen clang-3.9 64 rel +./cmake-gen clang-3.9 64 asan +./cmake-gen clang-3.9 64 tsan \ No newline at end of file