[BACK]Return to Makefile CVS log [TXT][DIR] Up to [local] / OpenXM / src / gmp

File: [local] / OpenXM / src / gmp / Makefile (download)

Revision 1.16, Tue Apr 1 12:13:39 2008 UTC (16 years, 1 month ago) by ohara
Branch: MAIN
CVS Tags: RELEASE_1_2_3_12
Changes since 1.15: +2 -2 lines

GNU MP 4.2.2 is replaced by gmp-4.2.2-core2.
It is an enhanced version of gmp and works well on some recent Intel CPUs.
It is distributed in http://www.geocities.jp/ct35z/gmp-core2-en.html.

# $OpenXM: OpenXM/src/gmp/Makefile,v 1.16 2008/04/01 12:13:39 ohara Exp $
OpenXM_HOME=../..
PREFIX=${OpenXM_HOME}
DISTDIR=${OpenXM_HOME}/../OpenXM_dist
RM = /bin/rm
MASTER_SITE=ftp://ftp.math.kobe-u.ac.jp/pub/OpenXM/misc/
DISTNAME=gmp-4.2.2
DISTFILES=${DISTNAME}-core2.tgz
WRKSRC=work/${DISTNAME}
#PATCHFILES = gmp.diff
PATCHFILES = 

all : build 

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
	@if [ ! -f work/.patch_done ]; then \
        for i in ${PATCHFILES} ; do \
	        cat $$i | (cd ${WRKSRC}; patch -p0) ; \
        done ; \
        if [ `uname` = Darwin -a `uname -m` = i386 ]; then \
            (cd ${WRKSRC}/mpn/x86; ${RM} *dive_1* */*dive_1* */*/*dive_1* */*mode1o* */*/*mode1o*) ; \
        fi ; \
	fi
	@touch work/.patch_done

configure: patch
	@if [ ! -f work/.configure_done ]; then \
		prefix=`cd ${OpenXM_HOME}; pwd` ; \
		(cd ${WRKSRC} ; CC=${CC} ./configure --prefix="$$prefix" --enable-cxx) ; \
	fi
	@touch work/.configure_done

build : configure
	@if [ ! -f work/.build_done ]; then \
		(cd ${WRKSRC} ; ${MAKE} CC=${CC}) ; \
	fi
	@touch work/.build_done

install: build
	-mkdir ${PREFIX}/bin ${PREFIX}/lib
	@if [ ! -f work/.install_done ]; then \
		(cd ${WRKSRC} ; ${MAKE} install) ; \
		for i in config.h gmp-impl.h gmp-mparam.h fib_table.h mp_bases.h; do \
			cp ${WRKSRC}/$$i ${OpenXM_HOME}/include ; \
		done ; \
	fi
	@touch work/.install_done

clean:
	-${RM} -rf work

distclean: clean