=================================================================== RCS file: /home/cvs/OpenXM/src/gc/Makefile,v retrieving revision 1.4 retrieving revision 1.15 diff -u -p -r1.4 -r1.15 --- OpenXM/src/gc/Makefile 2003/11/10 23:13:38 1.4 +++ OpenXM/src/gc/Makefile 2005/07/28 07:00:52 1.15 @@ -1,44 +1,58 @@ -# $OpenXM: OpenXM/src/gc/Makefile,v 1.3 2003/11/10 11:42:59 takayama Exp $ +# $OpenXM: OpenXM/src/gc/Makefile,v 1.14 2005/06/22 12:42:46 takayama Exp $ OpenXM_HOME=../.. -OpenXM_contrib=${OpenXM_HOME}/../OpenXM_contrib -OpenXM_lib=${OpenXM_HOME}/lib -OpenXM_include=${OpenXM_HOME}/include -GC=${OpenXM_contrib}/gc -RM=rm +PREFIX=${OpenXM_HOME} +DISTDIR=${OpenXM_HOME}/../OpenXM_dist +RM = /bin/rm +MASTER_SITE=ftp://ftp.math.kobe-u.ac.jp/pub/OpenXM/misc/ +# Original. http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/ +DISTNAME=gc6.5 +DISTFILES=${DISTNAME}.tar.gz +WRKSRC=work/${DISTNAME} +PATCHFILES = ${OpenXM_HOME}/../OpenXM_contrib2/asir2000/gc_interix.diff gc6_amd64.diff -all: - @if [ ! -f ./.use_ports ]; then \ - make all-l ; \ - else \ - make -f Makefile-ports all ; \ +all : build + +fetch: + -mkdir work + @if [ ! -f work/.fetch_done ]; then \ + ${OpenXM_HOME}/bin/oxfetch.sh ${MASTER_SITE}${DISTFILES} ${DISTDIR}; \ fi -install: - @if [ ! -f ./.use_ports ]; then \ - make install-l ; \ - else \ - make -f Makefile-ports install ; \ + @touch work/.fetch_done + +extract: fetch + @if [ ! -f work/.extract_done ]; then \ + cat ${DISTDIR}/${DISTFILES} | (cd work; tar xzvf -) ; \ fi + @touch work/.extract_done -all-l: - @if [ ! -f ./.make_done ]; then \ - (cd ${GC} ; make) ; \ - touch ./.make_done ; \ +patch: extract + @if [ ! -f work/.patch_done ]; then \ + for i in ${PATCHFILES} ; do \ + cat $$i | (cd ${WRKSRC}; patch -p0) ; \ + done ; \ fi + @touch work/.patch_done -install-l: all-l - if [ ! -f ./.install_done ]; then \ - cp ${GC}/gc.a ${OpenXM_lib}/libgc.a ; \ - if test ! -d ${OpenXM_include}/gc ; then mkdir -p ${OpenXM_include}/gc ; fi ; \ - cp ${GC}/include/gc.h ${GC}/include/gc_cpp.h ${OpenXM_include}/gc ; \ - touch ./.install_done ; \ +configure : patch + @if [ ! -f work/.configure_done ]; then \ + prefix=`cd ${OpenXM_HOME}; pwd` ; \ + (cd ${WRKSRC}; ./configure --disable-threads --prefix="$$prefix" ) ; \ fi -clean: - ${RM} -f ./.*done - @if [ -f ./.make_done ]; then \ - (cd ${GC} ; make clean) \ + @touch work/.configure_done + +build : configure + @if [ ! -f work/.build_done ]; then \ + (cd ${WRKSRC}; ${MAKE}) ; \ fi -distclean: - ${RM} -f ./.*done ./.use_ports - -@if [ -f ./.make_done ]; then \ - (cd ${GC} ; make distclean) \ + @touch work/.build_done + +install: build + @if [ ! -f work/.install_done ]; then \ + (cd ${WRKSRC}; ${MAKE} install) ; \ fi + @touch work/.install_done + +clean: + -$(RM) -rf work + +distclean: clean