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>