=================================================================== RCS file: /home/cvs/OpenXM/src/gc/Makefile,v retrieving revision 1.8 retrieving revision 1.25 diff -u -p -r1.8 -r1.25 --- OpenXM/src/gc/Makefile 2004/03/25 02:58:03 1.8 +++ OpenXM/src/gc/Makefile 2015/09/27 10:50:23 1.25 @@ -1,48 +1,80 @@ -# $OpenXM: OpenXM/src/gc/Makefile,v 1.7 2004/03/25 01:52:18 takayama Exp $ +# $OpenXM: OpenXM/src/gc/Makefile,v 1.24 2015/08/04 05:33:11 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/ -DISTFILES=gc6.2.tar.gz -PATCH_INTERIX = ${OpenXM_HOME}/../OpenXM_contrib2/asir2000/gc_interix.diff +MASTER_SITE=http://www.math.kobe-u.ac.jp/pub/OpenXM/misc/ +# Original. http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/ +#DISTNAME=gc-20150803-git +DISTNAME=gc-7.4.2 +ATOMIC=libatomic_ops-7.4.0 +DISTFILES=${DISTNAME}.tar.gz ${ATOMIC}.tar.gz +WRKSRC=work/${DISTNAME} +# WRKSRC=work/gc-20150803-git/bdwgc +#PATCHFILES = ${OpenXM_HOME}/../OpenXM_contrib2/asir2000/gc-7.diff +PATCHFILES = -all : build +all : build fetch: - @if [ ! -f .fetch_done ]; then \ - ${OpenXM_HOME}/bin/oxfetch.sh ${MASTER_SITE}${DISTFILES} ${DISTDIR}; \ - fi - @touch .fetch_done + -mkdir work + @if [ ! -f work/.fetch_done ]; then \ + for i in ${DISTFILES}; do ${OpenXM_HOME}/bin/oxfetch.sh ${MASTER_SITE}$$i ${DISTDIR}; done ; \ + fi + @touch work/.fetch_done extract: fetch - -mkdir work - @if [ ! -f .extract_done ]; then \ - cat ${DISTDIR}/${DISTFILES} | (cd work ; tar xzvf -) ; \ - fi - @touch .extract_done + @if [ ! -f work/.extract_done ]; then \ + for i in ${DISTFILES}; do cat ${DISTDIR}/$$i | (cd work; tar xzvf -) ; done ; \ + chmod +x ${WRKSRC}/install-sh ; \ + fi + -(cd ${WRKSRC}; ln -sf ../${ATOMIC} libatomic_ops) + @touch work/.extract_done patch: extract - @if [ ! -f .patch_done ]; then \ - cat ${PATCH_INTERIX} | (cd work/gc6.2 ; patch -p0) ; \ + @if [ ! -f work/.patch_done ]; then \ + for i in ${PATCHFILES} ; do \ + cat $$i | (cd ${WRKSRC}; patch -p1) ; \ + done ; \ fi - @touch .patch_done + @touch work/.patch_done -build : patch - @if [ ! -f .build_done ]; then \ - (cd work/gc6.2 ; ./configure --prefix `cd ../..; cd ${OpenXM_HOME}; pwd`; ${MAKE}) ; \ +configure : patch + @if [ ! -f work/.configure_done ]; then \ + prefix=`cd ${OpenXM_HOME}; pwd` ; \ + if [ "`uname | sed -e 's/_.*$$//'`" = "CYGWIN" ]; then \ + make configure-sygwin ; \ + elif [ "`uname | sed -e 's/_.*$$//'`" = "MSYS" ]; then \ + make configure-msys ; \ + else \ + make configure-others ; \ + fi ; \ fi - @touch .build_done + @touch work/.configure_done +configure-cygwin: + prefix=`cd ${OpenXM_HOME}; pwd` ; \ + (cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix --enable-static --disable-shared ) +configure-msys: + prefix=`cd ${OpenXM_HOME}; pwd` ; \ + (cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix --build=x86_64-w32-mingw32 ) +configure-others: + prefix=`cd ${OpenXM_HOME}; pwd` ; \ + (cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix ) + +build : configure + @if [ ! -f work/.build_done ]; then \ + (cd ${WRKSRC}; ${MAKE}) ; \ + fi + @touch work/.build_done + install: build - @if [ ! -f .install_done ]; then \ - (cd work/gc6.2 ; ${MAKE} install) ; \ + @if [ ! -f work/.install_done ]; then \ + (cd ${WRKSRC}; ${MAKE} install) ; \ fi - @touch .install_done + @touch work/.install_done clean: - -$(RM) ./.*_done -$(RM) -rf work distclean: clean -