File: [local] / OpenXM / src / ox_cdd / Makefile (download)
Revision 1.2, Wed May 25 05:06:06 2005 UTC (19 years ago) by noro
Branch: MAIN
Changes since 1.1: +4 -2
lines
Added several tasks.
|
# $OpenXM: OpenXM/src/ox_cdd/Makefile,v 1.2 2005/05/25 05:06:06 noro Exp $
OpenXM_HOME=../..
OpenXM_LIBDIR=../../lib
OpenXM_LIB = -L$(OpenXM_LIBDIR) -lox -lgc -lgmp
INCLUDES = -I$(OpenXM_HOME)/include
PREFIX=${OpenXM_HOME}
DISTDIR=${OpenXM_HOME}/../OpenXM_dist
RM = /bin/rm
MASTER_SITE=ftp://ftp.math.kobe-u.ac.jp/pub/OpenXM/misc/
DISTFILES=cddlib-093d.tar.gz
CFLAGS = -g -Wall -finline-functions
GMPDEF = -DGMPRATIONAL
CDD=cddlib-093d
CDD_HOME= work/$(CDD)
CDD_LIB = -lcdd
OBJ = ox_cdd.o cddlib.o
PROG = ox_cdd
CDDGMP_LIB = -lcddgmp
OBJGMP = ox_cddgmp.o cddlibgmp.o
PROGGMP = ox_cddgmp
LIBS = $(CDD_LIB) $(OpenXM_LIB) -lm
LIBSGMP = $(CDDGMP_LIB) $(OpenXM_LIB) -lm
all: build
components : libs $(PROG) $(PROGGMP)
$(PROG): $(OBJ)
$(CC) $(OBJ) $(LIBS) -o $@
$(PROGGMP): $(OBJGMP)
g++ $(OBJGMP) $(LIBSGMP) -o $@
ox_cdd.o : ox_cdd.c
$(CC) $(CFLAGS) $(INCLUDES) -c $<
ox_cddgmp.o : ox_cdd.c
$(CC) -o ox_cddgmp.o $(CFLAGS) $(GMPDEF) $(INCLUDES) -c $<
cddlib.o : cddlib.c
$(CC) $(CFLAGS) $(INCLUDES) -c $<
cddlibgmp.o : cddlib.c
$(CC) -o cddlibgmp.o $(CFLAGS) $(GMPDEF) $(INCLUDES) -c $<
libs : ox gc libgmp cdd
ox :
-@if test -f $(OpenXM_HOME)/lib/libox.a ; then \
true ; \
else \
( cd $(OpenXM_HOME)/src/ ; make install-oxtoolkit ) ; \
fi
gc :
-@if test -f $(OpenXM_HOME)/lib/libgc.a ; then \
true ; \
else \
( cd $(OpenXM_HOME)/src/ ; make install-gc ) ; \
fi
libgmp :
-@if test -f $(OpenXM_HOME)/lib/libgmp.a ; then \
true ; \
else \
( cd $(OpenXM_HOME)/src/ ; make install-gmp ) ; \
fi
cdd :
-mkdir ${PREFIX}/bin ${PREFIX}/lib
@if [ ! -f work/.install_done ]; then \
(cd work/${CDD} ; ${MAKE} install) ; \
fi
clean:
distclean: clean
rm -f $(OpenXM_HOME)/lib/libox.a
rm -f $(OpenXM_HOME)/lib/libgc.a
rm -f $(CDD_HOME)/lib-src/libcdd.a
fetch:
-mkdir work
@if [ ! -f work/.fetch_done ]; then \
${OpenXM_HOME}/bin/oxfetch.sh ${MASTER_SITE}${DISTFILES} ${DISTDIR}; \
fi
@touch work/.fetch_done
extract: fetch
@if [ ! -f work/.extract_done ]; then \
cat ${DISTDIR}/${DISTFILES} | (cd work ; tar xzvf -) ; \
fi
@touch work/.extract_done
patch: extract
@touch work/.patch_done
configure: patch
@if [ ! -f work/.configure_done ]; then \
prefix=`cd ${OpenXM_HOME}; pwd` ; \
(cd work/${CDD} ; ./configure CXX=cc --prefix="$$prefix" ) ; \
fi
@touch work/.configure_done
build : configure components
install:
cp $(PROG) $(PROGGMP) $(PREFIX)/bin
-mkdir $(PREFIX)/lib/asir
-ln -s $(PREFIX)/bin/$(PROG) $(PREFIX)/bin/$(PROGGMP) $(PREFIX)/lib/asir
@touch work/.install_done
clean:
-$(RM) -rf work
-$(RM) -f $(PROG) $(PROGGMP) $(OBJ) $(OBJGMP)
-$(RM) *.core
distclean: clean