[BACK]Return to Makefile CVS log [TXT][DIR] Up to [local] / OpenXM / misc / packages / Generic / openxm

Annotation of OpenXM/misc/packages/Generic/openxm/Makefile, Revision 1.8

1.8     ! takayama    1: # $OpenXM: OpenXM/misc/packages/Generic/openxm/Makefile,v 1.7 2000/03/10 03:20:26 takayama Exp $
1.1       takayama    2: # This is a Makefile to generate source and binary distributions of
1.3       takayama    3: # the OpenXM package on various plathomes.
1.1       takayama    4:
1.8     ! takayama    5: # If you add new directory under OpenXM/lib, edit SHARED_FILES.
        !             6:
1.4       takayama    7: ## For committers: prepare cvs-OpenXM under your search path
1.1       takayama    8: ## to access to CVS servers.
1.4       takayama    9: RCVS=cvs-OpenXM -d kerberos.math.sci.kobe-u.ac.jp:/usr/cvs
                     10: ### cvs-OpenXM is the following shell script
                     11: ## #!/bin/sh
                     12: ## CVS_RSH=ssh
                     13: ## export CVS_RSH
                     14: ## cvs $*
                     15:
1.7       takayama   16: ## Configurations.
1.3       takayama   17: ## OpenXM Version Number.
                     18: VERSION=1.1.2
                     19:
1.1       takayama   20: RELEASE=
                     21: ## If you like to have a release name as a part of tar ball, then uncomment
                     22: ## the next line.
                     23: ##RELEASE=`uname -a`
                     24:
1.7       takayama   25: TYPE=`uname -s`-`uname -m`
                     26:
1.8     ! takayama   27: OpenXM_HOME=$(HOME)/OpenXM
        !            28: TAR_WORK=$(HOME)/tmp
        !            29: #TAR_WORK=${OpenXM_HOME}/misc/packages/Generic/openxm/work
        !            30: INSTALL_WORK=${OpenXM_HOME}/misc/packages/Generic/openxm/work/openxm-install-dir
        !            31:
        !            32: ### Variables for the real Makefile
        !            33: ### Variables should be set before the first target.
        !            34: srcdir = .
        !            35: prefix=${PREFIX}
        !            36: MAN_DIR=${prefix}/man/man1
        !            37: WORK=work/openxm-${VERSION}
        !            38: ### End of variables for the real Makefile
        !            39:
1.7       takayama   40: ### Common
                     41: SHARED_FILES = OpenXM/Copyright OpenXM/doc OpenXM/include OpenXM/man \
                     42:                OpenXM/rc \
                     43:                OpenXM/lib/asir-contrib OpenXM/lib/java-support \
                     44:                OpenXM/lib/k097 OpenXM/lib/math OpenXM/lib/pari \
                     45:                OpenXM/lib/sm1 OpenXM/lib/asir
                     46: BINARY_FILES = OpenXM/bin OpenXM/lib/*.a OpenXM/lib/*.so*
1.8     ! takayama   47: EXECUTABLES=gnuplot4ox gnuplot_x11 k0 ox ox_sm1 oxlog oxweave sm1 tigers ox_math
1.2       takayama   48:
1.1       takayama   49: usage :
                     50:        @echo "Targets are "
1.8     ! takayama   51:        @echo "  fetch  :   get the sources from the cvs server under $(WORK)"
        !            52:        @echo "  tar-ball : generate OpenXM-source.tgz under $(TAR_WORK)"
        !            53:        @echo "  tar-ball-01 : generate OpenXM-source-01.tgz under $(TAR_WORK)"
        !            54:        @echo "  binary-tar-ball : generate OpenXM-binary-OS-CPU.tgz under $(TAR_WORK)"
        !            55:        @echo "  shared-tar-ball : generate OpenXM-shared.tgz under $(TAR_WORK)"
        !            56:        @echo "  clean-work "
        !            57:        @echo "  clean-for-make "
1.1       takayama   58:        @echo -n "Type is "
                     59:        @echo $(TYPE)
1.8     ! takayama   60:        @echo -n "INSTALL_WORK is "
        !            61:        @echo  $(INSTALL_WORK)
        !            62:        @echo -n "TAR_WORK is "
        !            63:        @echo  $(TAR_WORK)
        !            64:        @echo " "
1.1       takayama   65:
1.7       takayama   66: ### Start of Makefile  to work in the directory work/openxm-$(VERSION)
                     67: ### It does not work here.
                     68: ### Original version is in misc/packages/FreeBSD/openxm-1.1.2
                     69: ### Absolute path should be used for TAR_WORK
                     70:
                     71: usage-of-real-make:
                     72:        @echo "Targets are all, install, clean, distclean"
                     73:        @echo "You need to specify the PREFIX to install,"
                     74:        @echo "e.g., make install PREFIX=/usr/local"
                     75:
                     76: configure :
1.8     ! takayama   77:        @if [ ! -f .configure_done ] ; then \
        !            78:                (cd $(srcdir)/OpenXM/src ;      make configure ) ; \
1.7       takayama   79:        fi
                     80:        @touch .configure_done
                     81:
                     82: all : configure
                     83:        @if [ ! -f .all_done ] ; then \
1.8     ! takayama   84:                (cd $(srcdir)/OpenXM/src ;      make binary-dist) ; \
        !            85:        fi
        !            86:        @touch .all_done
        !            87:
        !            88: all-ideal : configure
        !            89:        @if [ ! -f .all_done ] ; then \
        !            90:                (cd $(srcdir)/OpenXM/src ;      make ;  make install) ; \
1.7       takayama   91:        fi
                     92:        @touch .all_done
                     93:
                     94: install : install-binary-files install-shared-files
                     95: # Install shell scripts to ${prefix}/bin, which is typically /usr/local/bin
                     96:        (cd ${prefix}/OpenXM/rc ; make ; make install PREFIX=${prefix})
                     97:
                     98: install-binary-files:  all
                     99:        @echo "install-binary-files with PREFIX= "
                    100:        @echo ${prefix}
                    101:        tar cf - ${BINARY_FILES} | (cd ${prefix} ; tar xf -)
1.8     ! takayama  102:        (cd ${prefix}/OpenXM/bin ; make clean-for-install)
        !           103:        -for i in $(EXECUTABLES); do strip ${prefix}/OpenXM/bin/$$i ; done
1.7       takayama  104:
                    105: install-shared-files:  all
                    106:        @echo "install-binary-files with PREFIX= "
                    107:        @echo ${prefix}
                    108:        tar cf - ${SHARED_FILES} | (cd ${prefix} ; tar xf -)
                    109:
                    110: install.man : install
                    111:        -cp ${prefix}/OpenXM/man/man1/sm1.1 ${prefix}/OpenXM/man/man1/openxm.1 ${MAN_DIR}
                    112:        -gzip ${MAN_DIR}/sm1.1 ${MAN_DIR}/openxm.1
                    113:
                    114: clean :
                    115:        cd $(srcdir)/OpenXM/src ; make clean
                    116:        rm -f .*_done*
                    117:
                    118: distclean :
                    119:        cd $(srcdir)/OpenXM/src ; make distclean
                    120:        rm -f .*_done*
                    121:
                    122: clean-installed-openxm:
                    123:        /bin/rm -rf ${prefix}/OpenXM
                    124:
                    125: ########### end of the real Makefile
                    126:
                    127:
                    128:
1.1       takayama  129: fetch :
                    130:        @if [ ! -f ./.fetch_done ]; then \
1.8     ! takayama  131:                /bin/rm -rf work ; mkdir work ; mkdir ${WORK} ; \
        !           132:                ( cd ${WORK} ; $(RCVS) export -rHEAD OpenXM OpenXM_contrib OpenXM_contrib2) ; \
        !           133:                cp Makefile ${WORK}/Makefile ; \
1.1       takayama  134:        fi
                    135:        @touch ./.fetch_done
                    136:
1.7       takayama  137: tar-ball: fetch
1.8     ! takayama  138:        cp Makefile ${WORK}/Makefile
        !           139:        (cd ${WORK}/OpenXM/src ; make generate-source-distribution)
        !           140:        (cd work ; tar czvf ${TAR_WORK}/openxm-${VERSION}.tar.gz openxm-${VERSION})
1.7       takayama  141:
                    142: tar-ball-01: fetch
                    143:        @if [ ! -f ./.tar-ball-01_done ]; then \
1.8     ! takayama  144:                cp Makefile ${WORK}/Makefile  ; \
        !           145:                (cd ${WORK}/OpenXM/src ; make generate-source-distribution) ; \
        !           146:                (cd work ; tar czvf ${TAR_WORK}/openxm01-${VERSION}.tar.gz openxm-${VERSION}/OpenXM openxm-${VERSION}/OpenXM_contrib ) ; \
1.1       takayama  147:        fi
1.7       takayama  148:        @touch ./.tar-ball-01_done
                    149:
                    150: binary-tar-ball : tar-ball-01
1.8     ! takayama  151:        cp Makefile ${WORK}/Makefile
        !           152:        rm -rf ${INSTALL_WORK}
        !           153:        mkdir ${INSTALL_WORK} ${INSTALL_WORK}/bin ${INSTALL_WORK}/man
        !           154:        mkdir ${INSTALL_WORK}/man/man1
        !           155:        (cd ${WORK} ; make install-binary-files PREFIX=${INSTALL_WORK})
        !           156:        (cd ${INSTALL_WORK} ; tar czf ${TAR_WORK}/OpenXM-binary-$(TYPE)$(RELEASE).tgz ${BINARY_FILES})
        !           157:
        !           158: shared-tar-ball : tar-ball-01
        !           159:        cp Makefile ${WORK}/Makefile
        !           160:        rm -rf ${INSTALL_WORK}
        !           161:        mkdir ${INSTALL_WORK} ${INSTALL_WORK}/bin ${INSTALL_WORK}/man
        !           162:        mkdir ${INSTALL_WORK}/man/man1
        !           163:        (cd ${WORK} ; make install-shared-files PREFIX=${INSTALL_WORK})
        !           164:        (cd ${INSTALL_WORK} ; tar czf ${TAR_WORK}/OpenXM-shared-$(TYPE)$(RELEASE).tgz ${SHARED_FILES})
1.1       takayama  165:
                    166:
1.8     ! takayama  167: clean-work :
1.3       takayama  168:        /bin/rm -rf .*_done *~
1.1       takayama  169:        /bin/rm -rf work
1.8     ! takayama  170:
        !           171: clean-for-make:
        !           172:        (cd ${WORK} ; make distclean)
        !           173:        rm -f .configure_done .all_done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>