Skip to content
Snippets Groups Projects
.gitlab-ci.yml 37.41 KiB
stages:
    - build
    - test

variables:
    GIT_STRATEGY: clone
    GIT_SUBMODULE_STRATEGY: recursive

.usage_cmake_subdir_template: &usage_cmake_subdir_definition
    stage: build
    script:
        - if [ "${COMPILER}" == "gcc" ]; then export CC="gcc-${COMPILER_VERSION}"; export CXX="g++-${COMPILER_VERSION}"; fi
        - if [ "${COMPILER}" == "clang" ]; then export CC="clang-${COMPILER_VERSION}"; export CXX="clang++-${COMPILER_VERSION}"; fi
        - export BUILD_DIR="build_${COMPILER}_${COMPILER_VERSION}_${BUILD_TYPE}"
        - echo "Using ${CXX} and ${CC} to build ${BUILD_TYPE}, build dir ${BUILD_DIR}"
        - mkdir "usage/cmake_subdir/${BUILD_DIR}"
        - cd "usage/cmake_subdir/${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build .
        - LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" ./usage_cmake_subdir --help

.usage_cmake_import_template: &usage_cmake_import_definition
    stage: build
    script:
        - if [ "${COMPILER}" == "gcc" ]; then export CC="gcc-${COMPILER_VERSION}"; export CXX="g++-${COMPILER_VERSION}"; fi
        - if [ "${COMPILER}" == "clang" ]; then export CC="clang-${COMPILER_VERSION}"; export CXX="clang++-${COMPILER_VERSION}"; fi
        - export BUILD_DIR="build_${COMPILER}_${COMPILER_VERSION}_${BUILD_TYPE}"
        - echo "Using ${CXX} and ${CC} to build ${BUILD_TYPE}, build dir ${BUILD_DIR}"
        - mkdir "${BUILD_DIR}"
        - cd "${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DlibClaPP_PEDANTIC_COMPILER_FLAGS=On -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build . --target install
        - mkdir "../usage/cmake_import/${BUILD_DIR}"
        - cd "../usage/cmake_import/${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build .
        - LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" ./usage_cmake_import --help

.usage_cmake_pkgconfig_template: &usage_cmake_pkgconfig_definition
    stage: build
    script:
        - if [ "${COMPILER}" == "gcc" ]; then export CC="gcc-${COMPILER_VERSION}"; export CXX="g++-${COMPILER_VERSION}"; fi
        - if [ "${COMPILER}" == "clang" ]; then export CC="clang-${COMPILER_VERSION}"; export CXX="clang++-${COMPILER_VERSION}"; fi
        - export BUILD_DIR="build_${COMPILER}_${COMPILER_VERSION}_${BUILD_TYPE}"
        - echo "Using ${CXX} and ${CC} to build ${BUILD_TYPE}, build dir ${BUILD_DIR}"
        - mkdir "${BUILD_DIR}"
        - cd "${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DlibClaPP_PEDANTIC_COMPILER_FLAGS=On -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build . --target install
        - mkdir "../usage/cmake_pkgconfig/${BUILD_DIR}"
        - cd "../usage/cmake_pkgconfig/${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build .
        - LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" ./usage_cmake_pkgconfig --help

.usage_make_pkgconfig_template: &usage_make_pkgconfig_definition
    stage: build
    script:
        - if [ "${COMPILER}" == "gcc" ]; then export CC="gcc-${COMPILER_VERSION}"; export CXX="g++-${COMPILER_VERSION}"; fi
        - if [ "${COMPILER}" == "clang" ]; then export CC="clang-${COMPILER_VERSION}"; export CXX="clang++-${COMPILER_VERSION}"; fi
        - export BUILD_DIR="build_${COMPILER}_${COMPILER_VERSION}_${BUILD_TYPE}"
        - echo "Using ${CXX} and ${CC} to build ${BUILD_TYPE}, build dir ${BUILD_DIR}"
        - mkdir "${BUILD_DIR}"
        - cd "${BUILD_DIR}"
        - cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DlibClaPP_PEDANTIC_COMPILER_FLAGS=On -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
        - cmake --build . --target install
        - cd ../usage/make_pkgconfig
        - make
        - LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" ./usage_make_pkgconfig --help