=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/Makefile.am,v retrieving revision 1.19 retrieving revision 1.46 diff -u -p -r1.19 -r1.46 --- OpenXM_contrib2/asir2000/Makefile.am 2004/02/27 18:32:21 1.19 +++ OpenXM_contrib2/asir2000/Makefile.am 2015/08/14 07:36:59 1.46 @@ -1,4 +1,4 @@ -## $OpenXM: OpenXM_contrib2/asir2000/Makefile.am,v 1.18 2003/03/24 11:30:38 ohara Exp $ +## $OpenXM: OpenXM_contrib2/asir2000/Makefile.am,v 1.45 2015/08/06 09:01:26 ohara Exp $ AUTOMAKE_OPTIONS = foreign no-dependencies 1.5 if USE_PLOT @@ -12,66 +12,77 @@ SUBDIRS = asm builtin engine fft include io lib parse asirdir = ${libdir}/asir asir_PROGRAMS = asir asir_SOURCES = parse/main.c -asir_LDADD = libasir.a libasir-gc.a +asir_LDADD = libasir.a @ASIR_GCLIB@ CLEANFILES = ${asir_LDADD} asir-openxm-${VERSION}.tgz +GC_TAR_GZ = gc-7.4.2.tar.gz +GC_PATCH = gc-7.diff gc-7.0-risa.diff +LIB_ATOMIC = libatomic_ops-7.4.0 +LIB_ATOMIC_TAR_GZ = ${LIB_ATOMIC}.tar.gz +#GC_TAR_GZ = ${GC}.tar.gz +#GC_PATCH = gc6.diff gc6-risa.diff +GC_MASTER_SITE=http://www.math.kobe-u.ac.jp/pub/OpenXM/misc/ +OX_FETCH = ${bindir}/oxfetch.sh + DEFS = @DEFS@ -DASIR_LIBDIR=\"${asirdir}\" -INCLUDES = -I${top_srcdir}/include -I${top_srcdir}/parse -I${top_srcdir}/io \ - -I${top_srcdir}/gc/include \ - @PARIINC@ @MPIINC@ @X_CFLAGS@ +AM_CPPFLAGS = -I${top_srcdir}/include -I${top_srcdir}/parse -I${top_srcdir}/io \ + -I${prefix}/include @GCINC@ @PARIINC@ @X_CFLAGS@ -GLIB = libasir-gc.a +GLIB = @ASIR_GCLIB@ ALIB = asm/libasm.a BLIB = builtin/libfunc.a ELIB = engine/libca.a FLIB = fft/libdft.a IOLIB = io/libio.a PLIB = parse/libparse.a +GMPLIB = -L ${libdir} -lmpfr -lgmp ASIRLIB = ${BLIB} ${PLIB} ${IOLIB} ${PLLIB} ${ELIB} ${FLIB} ${ALIB} -LIBS = @LIBS@ @PARILIB@ @MPILIB@ @LAPACKLIB@ ${X11LIB} ${FEPLIB} -lm ${EXTRALIBS} +LIBS = @LIBS@ @GCLIB@ @PARILIB@ @LAPACKLIB@ ${X11LIB} ${FEPLIB} ${GMPLIB} -lm @WSLIB@ ${EXTRALIBS} # EXTRALIBS = @EXTRALIBS@ +all-recursive: ${GLIB} + umain.o: parse/main.c ${COMPILE} -DUINIT main.c -o umain.o -libasir-gc.a: parse/gc_risa.c - -if [ "${USE_GC_ZEROPAGE}" = yes \ - -a ! -f ${top_srcdir}/gc/.patch_gc_zeropage_done ]; then \ - (cd ${top_srcdir}/gc; patch < ../gc_zeropage.diff) ; \ - touch ${top_srcdir}/gc/.patch_gc_zeropage_done ; \ +libasir-gc.a: ${GC_PATCH} + -if [ ! -f ${top_srcdir}/.gc_fetch_done ]; then \ + if [ ! -f ${GC_DISTDIR}/${GC_TAR_GZ} ]; then \ + ${OX_FETCH} ${GC_MASTER_SITE}${GC_TAR_GZ} ${GC_DISTDIR}; \ + ${OX_FETCH} ${GC_MASTER_SITE}${LIB_ATOMIC_TAR_GZ} ${GC_DISTDIR}; \ + fi ; \ + touch ${top_srcdir}/.gc_fetch_done ; \ fi - -if [ "${USE_GC_INTERIX}" = yes \ - -a ! -f ${top_srcdir}/gc/.patch_gc_interix_done ]; then \ - (cd ${top_srcdir}/gc; patch -p0 < ../gc_interix.diff) ; \ - touch ${top_srcdir}/gc/.patch_gc_interix_done ; \ + -if [ ! -f ${top_srcdir}/.gc_risa_done ]; then \ + (cd ${top_srcdir}; tar xzvf ${GC_DISTDIR}/${GC_TAR_GZ}) ; \ + (cd ${top_srcdir}/${GC}; tar xzvf ${GC_DISTDIR}/${LIB_ATOMIC_TAR_GZ}; mv ${LIB_ATOMIC} libatomic_ops) ; \ + for i in ${GC_PATCH} ; do \ + (cd ${top_srcdir}/${GC}; patch -p1 < ../$$i) ; \ + done ; \ + touch ${top_srcdir}/.gc_risa_done ; \ fi - -if [ ! -f ${top_srcdir}/gc/.configure_done ]; then \ - if [ -n "${host_alias}" ]; then \ - (cd ${top_srcdir}/gc; ./configure --host=${host_alias} --disable-threads) ; \ - else \ - (cd ${top_srcdir}/gc; ./configure --disable-threads) ; \ - fi ; \ - touch ${top_srcdir}/gc/.configure_done ; \ + -if [ "${USE_GC_SPARC64}" = yes \ + -a ! -f ${top_srcdir}/${GC}/.patch_gc_sparc64_done ]; then \ + (cd ${top_srcdir}/${GC}; patch -p0 < ../gc_sparc64.diff) ; \ + touch ${top_srcdir}/${GC}/.patch_gc_sparc64_done ; \ fi - (cd ${top_srcdir}/gc; ${MAKE}) - cp ${top_srcdir}/gc/.libs/libgc.a ${GLIB} - (cd ${top_srcdir}/parse; ${MAKE} gc_risa.o) - ${AR} q ${GLIB} ${top_srcdir}/parse/gc_risa.o - ${RANLIB} ${GLIB} + -if [ ! -f ${top_srcdir}/${GC}/.configure_done ]; then \ + (cd ${top_srcdir}/${GC}; ./configure ${GC_CONFIGURE_ARGS}) ; \ + touch ${top_srcdir}/${GC}/.configure_done ; \ + fi + (cd ${top_srcdir}/${GC}; ${MAKE}) + cp ${top_srcdir}/${GC}/.libs/libgc.a $@ -libasir.a: ${ASIRLIB} +libasir.a: ${ASIRLIB} ${GLIB} parse/gc_risa.c -mkdir ${top_srcdir}/libtmp -rm -f ${top_srcdir}/libtmp/* ${top_srcdir}/$@ for i in ${ASIRLIB}; do (cd ${top_srcdir}/libtmp; ar x ../$$i; chmod 644 *) done + (cd ${top_srcdir}/parse; ${MAKE} gc_risa.o; cp gc_risa.o ../libtmp) (cd ${top_srcdir}/libtmp; ${AR} cq ../$@ *.o) (cd ${top_srcdir}; ${RANLIB} $@) -rm -rf ${top_srcdir}/libtmp -#asir.o: umain.o ${ASIRLIB} ${GLIB} -# -rm $@ -# ld -r $@ umain.o ${ASIRLIB} ${GLIB} ${LIBS} ${EXTRALIBS} - install-libasir: libasir.a mkdir -p ${DESTDIR}${libdir} ${INSTALL_DATA} libasir.a ${DESTDIR}${libdir}/libasir${libasir_postfix}.a @@ -118,3 +129,9 @@ tarball: DESTDIR=`cd tmp; pwd` ${MAKE} install-openxm (cd tmp${prefix}; tar cf - * ) | gzip -c > asir-openxm-${VERSION}.tgz -rm -rf tmp + +clean-gc: + -rm -rf ${top_srcdir}/.gc_*_done ${top_srcdir}/${GC} + -rm -rf ${top_srcdir}/autom4te.cache + +distclean-recursive: clean-gc