=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/Makefile.am,v retrieving revision 1.1 retrieving revision 1.47 diff -u -p -r1.1 -r1.47 --- OpenXM_contrib2/asir2000/Makefile.am 2003/02/23 03:05:35 1.1 +++ OpenXM_contrib2/asir2000/Makefile.am 2015/08/20 08:39:01 1.47 @@ -1,68 +1,137 @@ -# $OpenXM$ +## $OpenXM: OpenXM_contrib2/asir2000/Makefile.am,v 1.46 2015/08/14 07:36:59 ohara Exp $ AUTOMAKE_OPTIONS = foreign no-dependencies 1.5 if USE_PLOT PLOTDIR = plot PLLIB = plot/libplot.a - X11LIB = @X_LIBS@ -lXaw -lXmu -lXt @X_PRE_LIBS@ -lXpm -lXext -lX11 @X_EXTRA_LIBS@ + X11LIB = @X_LIBS@ -lXaw -lXmu -lXt @X_PRE_LIBS@ @XPMLIB@ -lXext -lX11 @X_EXTRA_LIBS@ endif SUBDIRS = asm builtin engine fft include io lib parse ${PLOTDIR} -DEFS = @DEFS@ -DASIR_LIBDIR=\"${prefix}/lib/asir\" -INCLUDES = -I${top_srcdir}/include -I${top_srcdir}/parse -I${top_srcdir}/io \ - -I${top_srcdir}/gc/include \ - @PARIINC@ @MPIINC@ @X_CFLAGS@ +asirdir = ${libdir}/asir +asir_PROGRAMS = asir +asir_SOURCES = parse/main.c +asir_LDADD = libasir.a @ASIR_GCLIB@ +CLEANFILES = ${asir_LDADD} asir-openxm-${VERSION}.tgz -GLIB = libasir-gc.a +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}\" +AM_CPPFLAGS = -I${top_srcdir}/include -I${top_srcdir}/parse -I${top_srcdir}/io \ + -I${prefix}/include @GCINC@ @PARIINC@ @X_CFLAGS@ + +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} -lmpc -lmpfr -lgmp -# The ASIRLIB cannot be rearrenged. 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@ -bin_PROGRAMS = asir -asir_SOURCES = parse/main.c -asir_LDADD = ${ASIRLIB} ${GLIB} -lib_LIBRARIES = libasir.a libasir-gc.a -CLEANFILES = libasir.a libasir-gc.a asir +all-recursive: ${GLIB} -libasir_gc_a_SOURCES = - umain.o: parse/main.c ${COMPILE} -DUINIT main.c -o umain.o -libasir-gc.a: parse/gc_risa.o - -if [ ! -f ${top_srcdir}/gc/.configure_done ]; then \ - (cd ${top_srcdir}/gc; ./configure --disable-threads) ; \ - touch ${top_srcdir}/gc/.configure_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 - (cd ${top_srcdir}/gc; ${MAKE}) - cp ${top_srcdir}/gc/.libs/libgc.a ${top_srcdir}/${GLIB} - ${AR} q ${top_srcdir}/${GLIB} ${top_srcdir}/parse/gc_risa.o - ${RANLIB} ${top_srcdir}/${GLIB} + -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 [ "${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 + -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 -install-exec-hook: - -if [ x${libasir_postfix} != x ] ; then \ - (cd ${prefix}/lib ; mv libasir.a libasir${libasir_postfix}.a) ; \ - fi - -rm -f ${prefix}/bin/ox_asir - (cd ${prefix}/bin ; ${LN_S} asir ox_asir) +install-libasir-gc: libasir-gc.a + mkdir -p ${DESTDIR}${libdir} + ${INSTALL_DATA} libasir-gc.a ${DESTDIR}${libdir}/libasir-gc.a + +install-openxm: asir${EXEEXT} install-libasir install-libasir-gc + -mkdir -p ${DESTDIR}${bindir} + ${INSTALL_PROGRAM} asir ${DESTDIR}${bindir} + -mkdir -p ${DESTDIR}${asirdir} + (cd ${top_srcdir}/lib; ${MAKE} install-doc install-lib) + -rm -f ${DESTDIR}${bindir}/ox_asir${EXEEXT} + (cd ${DESTDIR}${bindir} ; ${LN_S} asir${EXEEXT} ox_asir${EXEEXT}) + -(cd ${DESTDIR}${asirdir}; \ + rm -f asir${EXEEXT} ox_asir${EXEEXT} ox_launch${EXEEXT} ox_plot${EXEEXT}) + (cd ${DESTDIR}${asirdir} ; \ + ${LN_S} ../../bin/asir${EXEEXT} asir${EXEEXT} ; \ + ${LN_S} asir${EXEEXT} ox_asir${EXEEXT} ; \ + ${LN_S} asir${EXEEXT} ox_launch${EXEEXT} ; \ + ${LN_S} asir${EXEEXT} ox_plot${EXEEXT}) + (cd ${top_srcdir}/include; ${MAKE} install) + (cd ${top_srcdir}/parse; ${MAKE} install) + +install-lib: + (cd ${top_srcdir}/lib; ${MAKE} install-lib) + -(cd ${DESTDIR}${asirdir}; \ + rm -f ox_asir${EXEEXT} ox_launch${EXEEXT} ox_plot${EXEEXT}) + (cd ${DESTDIR}${asirdir} ; \ + ${LN_S} asir${EXEEXT} ox_asir${EXEEXT} ; \ + ${LN_S} asir${EXEEXT} ox_launch${EXEEXT} ; \ + ${LN_S} asir${EXEEXT} ox_plot${EXEEXT}) + -mkdir -p ${DESTDIR}${bindir} + -rm -f ${DESTDIR}${bindir}/asir${EXEEXT} + (cd ${DESTDIR}${bindir} ; ${LN_S} ../lib/asir/asir${EXEEXT} asir${EXEEXT}) + +install-doc: + (cd ${top_srcdir}/lib; ${MAKE} install-doc) + +tarball: + -rm -rf tmp + -mkdir tmp + 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