| version 1.23, 2000/08/31 13:35:09 |
version 1.36, 2004/02/23 11:38:36 |
|
|
| ## $OpenXM: OpenXM/src/kan96xx/Makefile,v 1.22 2000/08/31 13:27:33 takayama Exp $ |
# $OpenXM: OpenXM/src/kan96xx/Makefile,v 1.35 2003/12/04 07:49:24 takayama Exp $ |
| |
# |
| |
# Building kan96xx depends on |
| |
# install-gmp, install-gc [install-asir-gc] |
| |
# |
| |
OpenXM_HOME=../.. |
| |
OpenXM_contrib=${OpenXM_HOME}/../OpenXM_contrib |
| |
OpenXM_bin=${OpenXM_HOME}/bin |
| |
OpenXM_lib=${OpenXM_HOME}/lib |
| |
|
| ## Type in make configure and make all to build all |
RM=rm |
| OpenXM_contrib=../../../OpenXM_contrib |
|
| OPENXM_CONTRIB=../../../OpenXM_contrib |
|
| OpenXM_ROOT=../../../OpenXM |
|
| OpenXM_bin=$(OpenXM_ROOT)/bin |
|
| |
|
| GC=$(OPENXM_CONTRIB)/gc |
all : all-sm1 all-kanlib.a |
| GMP=$(OPENXM_CONTRIB)/gmp |
|
| |
|
| all : all-plugin all-sm1 all-kanlib.a |
all-sm1 : all-plugin all-trans |
| ## .SUFFIXES: |
|
| |
|
| all2 : all-gc all-gmp |
|
| (cd Kan; make all) |
(cd Kan; make all) |
| |
all-plugin : configure |
| all-gc: configure_symbolic_links |
|
| (cd $(GC) ; make all) |
|
| |
|
| all-gmp: configure-gmp |
|
| if test -f /usr/lib/libgmp.a ; \ |
|
| then \ |
|
| echo "Using /usr/lib/libgmp.a" ; \ |
|
| /bin/rm -rf $(GMP)/libgmp.a ; \ |
|
| ln -s /usr/lib/libgmp.a $(GMP)/libgmp.a ; \ |
|
| else \ |
|
| (cd $(GMP) ; make) ; \ |
|
| fi |
|
| |
|
| all-sm1 : all-plugin |
|
| (cd Kan; make all) |
|
| |
|
| all-plugin : configure_symbolic_links |
|
| (cd plugin ; make all) |
(cd plugin ; make all) |
| |
all-trans: configure |
| all-kanlib.a : all-plugin |
(cd trans ; make all) |
| |
all-kanlib.a : all-plugin all-trans |
| (cd Kan ; make kanlib.a) |
(cd Kan ; make kanlib.a) |
| |
|
| |
|
| |
|
| ### When you make sm1 without the garbage collector, type in make sm1.nogc |
### When you make sm1 without the garbage collector, type in make sm1.nogc |
| sm1.nogc : |
sm1-nogc : all-plugin |
| (cd Kan; make sm1.nogc) |
(cd Kan; make sm1.nogc) |
| |
########################################################## |
| configure: configure_symbolic_links |
configure: configure_symbolic_links |
| |
if test ! -f ./.configure_done ; \ |
| configure-gmp: configure_symbolic_links |
|
| if test -f $(GMP)/.gmp_configured ; \ |
|
| then \ |
then \ |
| echo "MESSAGE(kan96xx/Makefile): gmp is already configured. (.gmp_configured) " ; \ |
(cd Kan; sh ./configure) ; \ |
| else \ |
(cd plugin; sh ./configure) ; \ |
| (cd $(GMP) ; ./configure ; touch .gmp_configured) ; \ |
(cd trans; sh ./configure) ; \ |
| fi |
fi |
| |
@touch ./.configure_done |
| configure_symbolic_links : |
configure_symbolic_links : |
| @if test ! -f ./.done_links ; \ |
@if test ! -f ./.configure_symbolic_links_done ; \ |
| then \ |
then \ |
| /bin/rm -f gc gmp lib Doc/var.sm1 ; \ |
${RM} -f lib Doc/var.sm1 ; \ |
| ln -f -s $(OpenXM_contrib)/gc gc ; \ |
|
| ln -f -s $(OpenXM_contrib)/gmp gmp ; \ |
|
| ln -f -s ./Doc lib ; \ |
ln -f -s ./Doc lib ; \ |
| (cd Doc; ln -f -s ../Kan/var.sm1 var.sm1) ; \ |
(cd Doc; ln -f -s ../Kan/var.sm1 var.sm1) ; \ |
| fi |
fi |
| @touch ./.done_links |
@touch ./.configure_symbolic_links_done |
| |
|
| ### generate a distribution. |
|
| dist : |
|
| ./makeDist |
|
| ############### |
############### |
| install : install-bin-OpenXM install-doc install-man |
install: install-exec install-man |
| |
install-exec: clean-for-install all-sm1 |
| install.man: install-man #aliases |
install Kan/sm1 ${OpenXM_bin} |
| |
install trans/polymake2tfb ${OpenXM_bin} |
| install-man : |
install-man : |
| @if [ ! -d $(OpenXM_ROOT)/man ]; then \ |
-cp Doc/sm1.1 ${OpenXM_HOME}/man/man1 |
| mkdir $(OpenXM_ROOT)/man ; \ |
install-document: |
| |
-(cd Doc ; make install-document) |
| |
install-for-debug : clean-for-install |
| |
if [ "`uname | sed -e 's/_.*$$//'`" = "CYGWIN" ]; then \ |
| |
ln -f -s ../src/kan96xx/Kan/sm1.exe ${OpenXM_bin}/sm1.exe ; \ |
| |
ln -f -s ../src/kan96xx/trans/polymake2tfb.exe ${OpenXM_bin}/polymake2tfb.exe ; \ |
| |
else \ |
| |
ln -f -s ../src/kan96xx/Kan/sm1 ${OpenXM_bin}/sm1 ; \ |
| |
ln -f -s ../src/kan96xx/trans/polymake2tfb ${OpenXM_bin}/polymake2tfb ; \ |
| fi |
fi |
| @if [ ! -d $(OpenXM_ROOT)/man/man1 ]; then \ |
|
| mkdir $(OpenXM_ROOT)/man/man1 ; \ |
|
| fi |
|
| -cp Doc/sm1.1 $(OpenXM_ROOT)/man/man1 |
|
| |
|
| install-usr-local: install-bin-usr-local #alias |
|
| |
|
| install-bin-usr-local : |
|
| mkdir /usr/local/lib/sm1 |
|
| cp lib/* /usr/local/lib/sm1 |
|
| cp Kan/sm1 /usr/local/bin |
|
| |
|
| ############### |
|
| install-binary : |
|
| /bin/rm -f sm1 |
|
| echo ":" > sm1 |
|
| echo "LOAD_SM1_PATH=`pwd`/lib/" >>sm1 |
|
| echo "export LOAD_SM1_PATH" >>sm1 |
|
| echo -n "`pwd`/`ls Kan/sm1.*` " >>sm1 |
|
| echo -n '$$' >>sm1 |
|
| echo '*' >>sm1 |
|
| chmod +x sm1 |
|
| ln -s sm1 Kan/sm1 |
|
| install-binary-solaris : |
|
| /bin/rm -f sm1 |
|
| /usr/ucb/echo ":" > sm1 |
|
| /usr/ucb/echo "LOAD_SM1_PATH=`pwd`/lib/" >>sm1 |
|
| /usr/ucb/echo "export LOAD_SM1_PATH" >>sm1 |
|
| /usr/ucb/echo -n "`pwd`/`ls Kan/sm1.*` " >>sm1 |
|
| /usr/ucb/echo -n '$$' >>sm1 |
|
| /usr/ucb/echo '*' >>sm1 |
|
| chmod +x sm1 |
|
| ln -s sm1 Kan/sm1 |
|
| clean-binary : |
|
| echo " ../kanbinary* will be removed" |
|
| echo "after 10 seconds. To cancel type in ctrl-C." |
|
| ( sleep 10 ; /bin/rm -rf ../kanbinary* ) |
|
| |
|
| install-openXM-bin: install-bin-OpenXM #alias |
|
| |
|
| install-bin-OpenXM: clean-for-debug |
|
| cp Kan/sm1 $(OpenXM_bin) |
|
| |
|
| install-for-debug : |
|
| ln -f -s ../src/kan96xx/Kan/sm1 $(OpenXM_bin)/sm1 |
|
| |
|
| install-doc: install-document |
|
| |
|
| install-document : #alias |
|
| -(cd Doc ; make install-document) |
|
| |
|
| ############## |
############## |
| clean-for-debug : |
clean-for-install : |
| /bin/rm -f $(OpenXM_bin)/sm1 |
${RM} -f ${OpenXM_bin}/sm1 |
| |
clean-done: |
| clean : |
${RM} -f ./.*done |
| /bin/rm -f ./.done_links |
clean : clean-done |
| |
${RM} -f ./.*done |
| (cd Kan; make clean) |
(cd Kan; make clean) |
| (cd plugin; make clean) |
(cd plugin; make clean) |
| /bin/rm -f sm1 |
(cd trans; make clean) |
| |
(cd Doc; make clean) |
| |
${RM} -f sm1 gmp gc Doc/var.sm1 lib |
| |
distclean: clean |
| |
-(cd Kan ; make distclean) |
| |
-(cd plugin ; make distclean) |
| |
-(cd trans ; make distclean) |
| |
-(cd Doc ; make distclean) |
| |
|
| |
|
| ### clean also *.a files. |
|
| cleana: distclean |
|
| |
|
| distclean : clean |
|
| (cd Kan; make cleana) |
|
| (cd plugin; make clean; /bin/rm -f *.a) |
|
| /bin/rm -rf gc gmp lib Doc/var.sm1 |
|
| |
|