coriolis/bootstrap/Makefile.package

100 lines
4.7 KiB
Makefile

# -*- Makefile -*-
# Mimicking the behavior of a top-level autotool generated Makefile.
pythonSiteLocator = "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1)"
tools = bootstrap vlsisapd hurricane crlcore coloquinte etesian knik \
katabatic kite equinox solstice cumulus stratus1 unicorn documentation
prefix = /usr
rootPrefix = $(subst /usr,,$(prefix))
DESTDIR =
BUILD_DESTDIR = $(shell pwd)/install.dir
PYTHON_SITEDIR = $(shell python -c $(pythonSiteLocator))
IMPORTEDS_TOP = $(prefix)
CORIOLIS_TOP = $(prefix)
environment = IMPORTEDS_TOP=$(IMPORTEDS_TOP); export IMPORTEDS_TOP; \
CORIOLIS_TOP=$(CORIOLIS_TOP); export CORIOLIS_TOP
.PHONY: build install FORCE
all: build
clean:
rm -rf build.dir install.dir \
crlcore/doc/doxygen/html \
hurricane/doc/hurricane/html \
hurricane/doc/hurricane/latex \
hurricane/doc/viewer/html \
hurricane/doc/viewer/latex
build: FORCE
$(environment); \
case "`uname -m`" in \
"x86_64") cmakeArgs="-D LIB_SUFFIX:STRING=64";; \
*) cmakeArgs="";; \
esac; \
case "$${X_SCLS}" in \
*"devtoolset"*) \
cmakeArgs="$${cmakeArgs} -D Boost_NO_SYSTEM_PATHS:STRING=TRUE"; \
BOOST_INCLUDEDIR="/opt/rh/devtoolset-2/root/usr/include"; \
BOOST_LIBRARYDIR="/opt/rh/devtoolset-2/root/usr/lib"; \
export BOOST_INCLUDEDIR BOOST_LIBRARYDIR; \
echo "** Using $${X_SCLS}."; \
;; \
esac; \
for tool in $(tools); do \
echo "** Building tool $${tool}"; \
mkdir -p build.dir/$$tool; \
cd build.dir/$$tool; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D BUILD_DOC:STRING=OFF \
-D CMAKE_INSTALL_PREFIX:STRING=$(CORIOLIS_TOP) \
-D DESTDIR:STRING=$(BUILD_DESTDIR) \
$${cmakeArgs} \
../../coriolis/$$tool \
|| exit 1; \
make DESTDIR=$(BUILD_DESTDIR) $(SMP_MFLAGS) install \
|| exit 1; \
cd ../..; \
done
install: FORCE
$(environment); \
case "`uname -m`" in \
"x86_64") commonCMakeArgs="-D LIB_SUFFIX:STRING=64";; \
*) commonCMakeArgs="";; \
esac; \
for tool in $(tools); do \
echo "** Installing tool $${tool}"; \
cd build.dir/$$tool; \
makeArgs=""; \
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=OFF"; \
if [ "$$tool" = "hurricane" \
-o "$$tool" = "crlcore" \
-o "$$tool" = "unicorn" ]; then \
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=ON"; \
fi; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D CMAKE_INSTALL_PREFIX:STRING=${CORIOLIS_TOP} \
-D DESTDIR:STRING=$(DESTDIR) \
$${cmakeArgs} \
../../coriolis/$$tool \
|| exit 1; \
make DESTDIR=$(DESTDIR) -j1 $${makeArgs} install \
|| exit 1; \
cd ../..; \
done; \
rm -rfv $(DESTDIR)$(rootPrefix)/etc/coriolis2/coriolis2.sh \
$(DESTDIR)$(prefix)/bin/ccb \
$(DESTDIR)$(prefix)/bin/cx2y \
$(DESTDIR)$(prefix)/bin/*.bin \
$(DESTDIR)$(rootPrefix)$(PYTHON_SITEDIR)/builder \
$(DESTDIR)$(prefix)/share/cmake/Modules/GetGitRevisionDescription.cmake.in
FORCE: