84 lines
3.7 KiB
Makefile
84 lines
3.7 KiB
Makefile
|
|
# Mimicking the behavior of a top-level autotool generated Makefile.
|
|
|
|
tools = bootstrap vlsisapd hurricane crlcore nimbus metis mauka knik katabatic kite \
|
|
equinox solstice cumulus stratus1 unicorn
|
|
prefix = /usr
|
|
DESTDIR =
|
|
BUILD_DESTDIR = $(shell pwd)/install.dir
|
|
BOOTSTRAP_TOP = $(prefix)
|
|
VLSISAPD_TOP = $(prefix)
|
|
CORIOLIS_TOP = $(prefix)
|
|
|
|
environment = BOOTSTRAP_TOP=$(BOOTSTRAP_TOP); export BOOTSTRAP_TOP; \
|
|
VLSISAPD_TOP=$(VLSISAPD_TOP); export VLSISAPD_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; \
|
|
for tool in $(tools); do \
|
|
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} \
|
|
../../$$tool \
|
|
|| exit 1; \
|
|
make DESTDIR=$(BUILD_DESTDIR) 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 \
|
|
cd build.dir/$$tool; \
|
|
makeArgs=""; \
|
|
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=OFF"; \
|
|
if [ "$$tool" = "crlcore" \
|
|
-o "$$tool" = "stratus1" ]; then \
|
|
makeArgs="dvi safepdf html"; \
|
|
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=ON"; \
|
|
fi; \
|
|
if [ "$$tool" = "hurricane" ]; 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} \
|
|
../../$$tool \
|
|
|| exit 1; \
|
|
make DESTDIR=$(DESTDIR) -j1 $${makeArgs} install \
|
|
|| exit 1; \
|
|
cd ../..; \
|
|
done; \
|
|
rm -f $(DESTDIR)$(CORIOLIS_TOP)/bin/cx2y \
|
|
$(DESTDIR)$(CORIOLIS_TOP)/bin/kite-text
|
|
|
|
FORCE:
|