aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.ci/Makefile
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2021-01-19 11:14:12 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2021-01-19 11:14:12 +0300
commitf94b917b66deb8b6abd173547a3f36e7271f6549 (patch)
tree635361f49a915ca0ebfaa040789dfca1cab486c1 /.ci/Makefile
parentproject.cmake: --toolset auto shouldn't set any compiler flags (diff)
downloadcmake-common-no_more_travis.tar.gz
cmake-common-no_more_travis.zip
bye-bye, Travis & AppVeyor!no_more_travis
Diffstat (limited to '.ci/Makefile')
-rw-r--r--.ci/Makefile355
1 files changed, 0 insertions, 355 deletions
diff --git a/.ci/Makefile b/.ci/Makefile
deleted file mode 100644
index b8e614a..0000000
--- a/.ci/Makefile
+++ /dev/null
@@ -1,355 +0,0 @@
-# Travis/AppVeyor commands.
-# Basically, make is used as a kinda-portable shell.
-
-# make when called by CMake produces a lot of bogus warnings if this is
-# uncommented:
-#MAKEFLAGS += --warn-undefined-variables
-
-.DEFAULT_GOAL := all
-.SUFFIXES:
-
-windows := 0
-ifeq ($(OS),Windows_NT)
-windows := 1
-endif
-
-# Shell
-ifeq ($(windows),1)
-# Make might pick up sh.exe if it's available:
-SHELL := cmd
-.SHELLFLAGS := /c
-else
-SHELL := bash
-.SHELLFLAGS := -eu -o pipefail -c
-endif
-
-makefile_dir := $(dir $(realpath $(firstword $(MAKEFILE_LIST))))
-
-# Basic stuff that needed to be abstracted away:
-ifeq ($(windows),1)
-exe_ext := .exe
-static_prefix :=
-static_ext := .lib
-shared_prefix :=
-shared_ext := .dll
-newline := @echo.
-cwd := $(shell cd)
-ls := dir /a-D /S /B
-else
-exe_ext :=
-static_prefix := lib
-static_ext := .a
-shared_prefix := lib
-shared_ext := .so
-newline := @echo
-cwd := $(shell pwd)
-ls := function my_ls() { find "$$@" -type f | sort ; } ; my_ls
-endif
-
-# Python executable might be named differently, depending on the environment:
-ifeq ($(windows),1)
-ifdef appveyor_python_exe
-python := $(appveyor_python_exe)
-else
-python := python
-endif
-else
-python := python3
-endif
-
-ifeq ($(windows),1)
-install_prefix := C:/install
-else
-install_prefix := $$HOME/install
-endif
-
-# Script to verify executable's target architecture:
-ifeq ($(windows),1)
-verify_arch = powershell -file ./.ci/verify_arch.ps1
-else
-verify_arch := ./.ci/verify_arch.sh
-endif
-
-# Script to check if symbols are present in the executable:
-ifeq ($(windows),1)
-verify_symbols := powershell -file ./.ci/verify_symbols.ps1
-else
-verify_symbols := ./.ci/verify_symbols.sh
-endif
-
-.PHONY: all
-all: simple static dynamic
-
-.PHONY: FORCE
-FORCE:
-
-echo/%/build: FORCE
- $(newline)
- @echo =====================================================================
- @echo Building examples/$*
- @echo =====================================================================
-
-echo/%/run: FORCE
- @echo ---------------------------------------------------------------------
- @echo Running $*/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/%/arch: FORCE
- @echo ---------------------------------------------------------------------
- @echo Checking target architecture of $*/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/%/symbols: FORCE
- @echo ---------------------------------------------------------------------
- @echo Checking symbols for $*/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/%/finished: FORCE
- @echo =====================================================================
- $(newline)
-
-# examples/simple: x64/Release build.
-
-.PHONY: simple/build
-simple/build: echo/simple/build
- "$(python)" -m project.cmake.build --install "$(install_prefix)/simple" --platform x64 --configuration Release examples/simple
-
-.PHONY: simple/run
-simple/run: echo/simple/run
- "$(install_prefix)/simple/bin/foo"
-
-.PHONY: simple/arch
-simple/arch: echo/simple/arch
- $(verify_arch) "$(install_prefix)/simple/bin/foo$(exe_ext)" x64
-
-.PHONY: simple/symbols
-simple/symbols: echo/simple/symbols
- $(verify_symbols) "$(install_prefix)/simple/bin/foo$(exe_ext)"
-
-.PHONY: simple
-simple: simple/build simple/run simple/arch simple/symbols echo/simple/finished
-
-# examples/static: x86/Debug build.
-
-.PHONY: static/build
-static/build: echo/static/build
- "$(python)" -m project.cmake.build --install "$(install_prefix)/static" --platform x86 --configuration Debug examples/static
-
-.PHONY: static/run
-static/run: echo/static/run
- "$(install_prefix)/static/bin/foo"
-
-.PHONY: static/arch
-static/arch: echo/static/arch
- $(verify_arch) "$(install_prefix)/static/bin/foo$(exe_ext)" x86
-
-.PHONY: static/symbols
-static/symbols: echo/static/symbols
- $(verify_symbols) "$(install_prefix)/static/bin/foo$(exe_ext)" main bar
-
-.PHONY: static
-static: static/build static/run static/arch static/symbols echo/static/finished
-
-# examples/dynamic: x64/RelWithDebInfo build.
-
-.PHONY: dynamic/build
-dynamic/build: echo/dynamic/build
- "$(python)" -m project.cmake.build --install "$(install_prefix)/dynamic" --platform x64 --configuration RelWithDebInfo examples/dynamic
-
-.PHONY: dynamic/run
-# Windows can pick up DLLs in the same directory, otherwise we need to add them
-# to PATH.
-dynamic/run: echo/dynamic/run
-ifeq ($(windows),1)
- "$(install_prefix)/dynamic/bin/foo"
-else
- LD_LIBRARY_PATH="$(install_prefix)/dynamic/lib" "$(install_prefix)/dynamic/bin/foo"
-endif
-
-.PHONY: dynamic/arch
-dynamic/arch: echo/dynamic/arch
- $(verify_arch) "$(install_prefix)/dynamic/bin/foo$(exe_ext)" x64
-
-.PHONY: dynamic/symbols
-dynamic/symbols: echo/dynamic/symbols
- $(verify_symbols) "$(install_prefix)/dynamic/bin/foo$(exe_ext)" main
- $(verify_symbols) "$(install_prefix)/dynamic/lib/$(shared_prefix)baz$(shared_ext)" baz
-
-.PHONY: dynamic
-dynamic: dynamic/build dynamic/run dynamic/arch dynamic/symbols echo/dynamic/finished
-
-echo/boost/%/build: FORCE
- $(newline)
- @echo =====================================================================
- @echo Building Boost 1.$*.0
- @echo =====================================================================
-
-echo/boost/%/ls: FORCE
- @echo ---------------------------------------------------------------------
- @echo Boost 1.$*.0: stage/
- @echo ---------------------------------------------------------------------
-
-echo/boost/%/exe/build: FORCE
- @echo ---------------------------------------------------------------------
- @echo Boost 1.$*.0: building examples/boost
- @echo ---------------------------------------------------------------------
-
-echo/boost/%/exe/run: FORCE
- @echo ---------------------------------------------------------------------
- @echo Boost 1.$*.0: running boost_1_$*_0/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/boost/%/exe/arch: FORCE
- @echo ---------------------------------------------------------------------
- @echo Boost 1.$*.0: checking target architecture of boost_1_$*_0/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/boost/%/exe/symbols: FORCE
- @echo ---------------------------------------------------------------------
- @echo Boost 1.$*.0: checking symbols for boost_1_$*_0/bin/foo
- @echo ---------------------------------------------------------------------
-
-echo/boost/%/finished: FORCE
- @echo =====================================================================
- $(newline)
-
-# Boost 1.58.0:
-# * temporary download,
-# * x86, Debug, static libraries only.
-# examples/boost:
-# * x86/Debug build.
-
-.PHONY: boost/58/download
-boost/58/download: echo/boost/58/build
- "$(python)" -m project.boost.download 1.58.0
-
-.PHONY: boost/58/build
-boost/58/build:
- "$(python)" -m project.boost.build --platform x86 --configuration Debug --link static -- ./boost_1_58_0 --with-filesystem --with-program_options
-
-.PHONY: boost/58/ls
-boost/58/ls: echo/boost/58/ls
- $(ls) "./boost_1_58_0/stage"
-
-.PHONY: boost/58/exe/build
-boost/58/exe/build: echo/boost/58/exe/build
- "$(python)" -m project.cmake.build --install "$(install_prefix)/boost_1_58_0" --platform x86 --configuration Debug --boost boost_1_58_0 examples/boost
-
-.PHONY: boost/58/exe/run
-# Boost should be linked statically, no need to adjust PATH:
-boost/58/exe/run: echo/boost/58/exe/run
- "$(install_prefix)/boost_1_58_0/bin/foo"
-
-.PHONY: boost/58/exe/arch
-boost/58/exe/arch: echo/boost/58/exe/arch
- $(verify_arch) "$(install_prefix)/boost_1_58_0/bin/foo$(exe_ext)" x86
-
-.PHONY: boost/58/exe/symbols
-boost/58/exe/symbols: echo/boost/58/exe/symbols
- $(verify_symbols) "$(install_prefix)/boost_1_58_0/bin/foo$(exe_ext)" main
-
-.PHONY: boost/58/exe
-boost/58/exe: boost/58/exe/build boost/58/exe/run boost/58/exe/arch boost/58/exe/symbols
-
-.PHONY: boost/58
-boost/58: boost/58/download boost/58/build boost/58/ls boost/58/exe echo/boost/58/finished
-
-# Boost 1.72.0:
-# * cached download,
-# * x86 & x64, Debug & Release, shared libraries only.
-# examples/boost:
-# * x64/Release build.
-
-.PHONY: boost/72/download
-boost/72/download: echo/boost/72/build
- "$(python)" -m project.boost.download --cache . 1.72.0
-
-.PHONY: boost/72/build
-boost/72/build:
- "$(python)" -m project.boost.build --platform x86 x64 --configuration Debug Release --link shared -- ./boost_1_72_0 --with-filesystem --with-program_options
-
-.PHONY: boost/72/ls
-boost/72/ls: echo/boost/72/ls
- $(ls) "./boost_1_72_0/stage"
-
-.PHONY: boost/72/exe/build
-boost/72/exe/build: echo/boost/72/exe/build
- "$(python)" -m project.cmake.build --install "$(install_prefix)/boost_1_72_0" --platform x64 --configuration Release --boost boost_1_72_0 -- examples/boost -D Boost_USE_STATIC_LIBS=OFF
-
-.PHONY: boost/72/exe/run
-# Boost is linked dynamically, we need to adjust PATH:
-boost/72/exe/run: echo/boost/72/exe/run
-ifeq ($(windows),1)
- set "PATH=$(cwd)\boost_1_72_0\stage\x64\Release\lib;%PATH%" && "$(install_prefix)/boost_1_72_0/bin/foo"
-else
- LD_LIBRARY_PATH="$(cwd)/boost_1_72_0/stage/x64/Release/lib" "$(install_prefix)/boost_1_72_0/bin/foo"
-endif
-
-.PHONY: boost/72/exe/arch
-boost/72/exe/arch: echo/boost/72/exe/arch
- $(verify_arch) "$(install_prefix)/boost_1_72_0/bin/foo$(exe_ext)" x64
-
-.PHONY: boost/72/exe/symbols
-boost/72/exe/symbols: echo/boost/72/exe/symbols
- $(verify_symbols) "$(install_prefix)/boost_1_72_0/bin/foo$(exe_ext)"
-
-.PHONY: boost/72/exe
-boost/72/exe: boost/72/exe/build boost/72/exe/run boost/72/exe/arch boost/72/exe/symbols
-
-.PHONY: boost/72
-boost/72: boost/72/download boost/72/build boost/72/ls boost/72/exe echo/boost/72/finished
-
-# Boost 1.65.0:
-# * download to $HOME (on Travis), C:\projects (on AppVeyor),
-# * x64, MinSizeRel (= Release), static libraries only.
-# examples/boost:
-# * x64/MinSizeRel build (set in .travis.yml and .appveyor.yml).
-
-ifdef TRAVIS
-.PHONY: boost/65/build
-boost/65/build: echo/boost/65/build
- "$(python)" -m project.ci.travis.boost --link static -- --with-filesystem --with-program_options
-
-.PHONY: boost/65/ls
-boost/65/ls: echo/boost/65/ls
- $(ls) "$$HOME/boost/stage"
-
-.PHONY: boost/65/exe/build
-boost/65/exe/build: echo/boost/65/exe/build
- TRAVIS_BUILD_DIR="$$TRAVIS_BUILD_DIR/examples/boost" "$(python)" -m project.ci.travis.cmake --install
-
-ci_install_dir := $$HOME/install
-endif
-ifdef APPVEYOR
-.PHONY: boost/65/build
-boost/65/build: echo/boost/65/build
- "$(python)" -m project.ci.appveyor.boost --link static -- --with-filesystem --with-program_options
-
-.PHONY: boost/65/ls
-boost/65/ls: echo/boost/65/ls
- $(ls) "C:/projects/boost/stage"
-
-.PHONY: boost/65/exe/build
-boost/65/exe/build: echo/boost/65/exe/build
- set "APPVEYOR_BUILD_FOLDER=%APPVEYOR_BUILD_FOLDER%\examples\boost" && "$(python)" -m project.ci.appveyor.cmake --install
-
-ci_install_dir := C:/projects/install
-endif
-
-.PHONY: boost/65/exe/run
-boost/65/exe/run: echo/boost/65/exe/run
- "$(ci_install_dir)/bin/foo"
-
-.PHONY: boost/65/exe/arch
-boost/65/exe/arch: echo/boost/65/exe/arch
- $(verify_arch) "$(ci_install_dir)/bin/foo$(exe_ext)" x64
-
-.PHONY: boost/65/exe/symbols
-boost/65/exe/symbols: echo/boost/65/exe/symbols
- $(verify_symbols) "$(ci_install_dir)/bin/foo$(exe_ext)"
-
-.PHONY: boost/65/exe
-boost/65/exe: boost/65/exe/build boost/65/exe/run boost/65/exe/arch boost/65/exe/symbols
-
-.PHONY: boost/65
-boost/65: boost/65/build boost/65/ls boost/65/exe echo/boost/65/finished